单片机P0端口驱动数码管0 | 您所在的位置:网站首页 › 单片机共阴极和共阳极 › 单片机P0端口驱动数码管0 |
P0端口驱动共阳极数码管循环显示0-9
1.实验效果2.数码管3.Proteus仿真4. 源代码
1.实验效果
2.数码管
一个数码管包含七段发光二极管,通过控制每段二极管的亮灭,继而显示出不同的数字。数码管分为共阴极数码管和共阳极数码管,共阴极就是7个发光二极管的阴极连在一起,阳极为高电平时点亮,共阳极数码管是阳极连在一起,另一端的电平控制各段二极管的亮、熄。 3.Proteus仿真数码管从上至下分别连接P0_1-P0_7,因此想要显示数字1,P0口需要输入二进制数据11110010。注意没有连P0_0端口 数字二进制十六进制0100000000x801111100100xf22010010000x483011000000x604001100100x325001001000x246000001000x047111100000xf08000000000x009001000000x20 4. 源代码 # include # include unsigned char display_table[] ={ 0x80, 0xf2, 0x48, 0x60, 0x32, 0x24, 0x04, 0xf0, 0x00, 0x20 }; // 共阳极数码管显示编码16进制 unsigned int i; // 0:10000000 1:11110010 2:01001000 3:01100000 4:00110010 5:00100100 6:00000100 7:11110000 8:00000000 9:00100000 void delay(void) // 延时程序1s { unsigned char a,b,c; for(c=167;c>0;c--) for(b=171;b>0;b--) for(a=16;a>0;a--); _nop_(); } void main() // 主程序 { while(1) { P0 = 0xff; for(i = 0; i i = 0; } P0 = display_table[i]; delay(); } } } |
CopyRight 2018-2019 实验室设备网 版权所有 |