void display(void)
{
char code table[] = { //共阴段码
0x3f, 0x06, 0x5b, 0x4f, 0x66, 0x6d, 0x7d, 0x07, //0~7
0x7f, 0x6f, 0x77, 0x7c, 0x39, 0x5e, 0x79, 0x71}; //8~F
P0 = 0; P2 = 0xf7; P0 = table[ch]; delay(2);//通道号码
P0 = 0; P2 = 0xfb; P0 = table[num / 100] + 128; delay(2);//百位加上小数点
P0 = 0; P2 = 0xfd; P0 = table[num % 100 / 10]; delay(2);//十位
P0 = 0; P2 = 0xfe; P0 = table[num % 10]; delay(2);//个位
P0 = 0; //关闭显示器
}
另外4个引脚什么也不用,另外小数点的问题是不是也需要改一下呢
追答你说的对,我改的那个代码小数点没处理好,还有P0=0应改为P0=255。应该这样:
P0 = 255; P2 =~0xf7; P0 = ~table[ch]; delay(2);//通道号码
P0 = 255; P2 =~0xfb; P0 =~(table[num / 100] + 128); delay(2);//百位加上小数点
P0 = 255; P2 =~0xfd; P0 = ~table[num % 100 / 10]; delay(2);//十位
P0 = 255; P2 = ~0xfe; P0 = ~table[num % 10]; delay(2);//个位
好的,朋友,等明天我用protues仿真试一下,看看行不行,先谢谢了
追答行者自行
换了,不行