STC15单片机数码管显示编码定义
#include "stc15.h"
#include "intrins.h"
#define u8 unsigned char
u8 code t_display[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07, //定义一个数组t_display,用来存放显示字符的段码。数组元素依次为:“ 0 ”、“ 1 ”、“ 2 ”、“ 3 ”、“ 4 ”、“ 5 ”、“ 6 ”、“ 7 ”的段码。
u8 p1_table[]={1<<7|1<<6|1<<5|1<<4|1<<2|1<<1}; //定义一个数组p1_table,用来存放P1口对应的位值。 数组元素依次为P17~P11位值。
//以上是定义要使用的变量和常量
//下面开始是代码逻辑部分:
//此处进行判断显示内容(即要显出什么数字)
if (dis == 0) { //当dis=0时,表明要显出 0 ;
P2 = t_display[dis]; //将t_display[dis]中对应 dis=0 时的内容即 0 的段吗赋值到 P2 ;
P3 = p1_table[dis]; //将p1_table[dis]中对应 dis=0 时的内容即P17~P11位值赋值到 P3 ;
_nop_(); //修正误差或者执行片上外围芯片相关功能
} else if (dis == 1) { //当dis=1时,表明要显出 1 ;
P2 = t_display[dis]; //将t_display[dis]中对应 dis=1 时的内容即 1 的段吗赋值到 P2 ;
P3 = p
免责声明:
以上内容除特别注明外均来源于网友提问,创作工场回答,未经许可,严谨转载。