单片机8051与两个共阴极数码管采用动态接口方式,使其分别显示0和6,两个数码管的公共端分别接单片机的

P2.6和P2.7引脚,段选引脚a~g的分别接单片机的P0.0~P0.6。一段程序是这样的:P2=0xbf,P0=led[0],P2=0x7f,P0=led[6],为什么是这样,看不懂,谢谢回答下!!

第1个回答  2012-12-17
P2=0xbf为16进制数,二进制为10111111,正好为P2.6位选中,0送给P0,就显示 0 ;显示6也一样。
第2个回答  2012-12-18
P2=0xbf,P2.6控制的数码管显示
P0=led[0],数码管显示的内容0送P0口
P2=0x7f,P2.7控制的数码管显示
P0=led[6],数码管显示的内容6送P0口追问

是因为数码管采用共阴极,所以P2.6=0,如果数码管采用共阳极的话,P2.6是不是就应该等于1。数码管显示的内容是不是最后经P0口输出显示。

追答

要看你硬件电路了,P2.6和P2.7只是控制口,共阴还是共阳与数码管公共端的接法有关。

本回答被提问者和网友采纳
相似回答