![]() |
發布時間: 2017-10-20 12:54
正文摘要:#include<reg52.h> //52系列單片機頭文件#define uchar unsigned char#define uint unsigned intuint x,y;uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0 ... |
這是數碼管動態顯示,P0口輸出段選信號,就是讓數碼管顯示數字,P2口控制位選,就是讓那個數碼管顯示。樓主說的“abcd”是十六進制,分別對應10、11、12、13。 |
比如 P2=0xbf ,就是讓單片機P2口 P2.7-P2.0的8個引腳輸出的電平依次為1011 1111,即讓P2.6這個端口輸出低電平,此時第3位數碼管亮。abcd應該對應的是數組里的第二到第五個,因為數組從0開始的。 |
p2的不同賦值對應打開不同的數碼管位選,abcd對應在主函數中是數組的2到5位,而且你的顯示函數里面有一個明顯的錯誤,是table[b]才對 |