各位大虾:
你们好,本人最近在单片机学习中遇到了一些棘手的问题,望得到前辈们的指点: 1 首先是数码管静态显示的问题,有如下一段程序 #include<reg52.h> sbit dula=P2^6; sbit wela=P2^7; void main() { wela=1; P0=0XFE; wela=0; dula=1; P0=0xFC; dula=0; while(1); }
该段程序我演示过能正常显示,但是一直有个疑问,我觉得DULA=1这条语句应该放在PO=0XFC之后会比较合适,因为当位选锁存器关闭的时候,此时P0口的值还是0XFE,在没有重新赋值的时候,段锁存器被打开,会出现以OXFE为段选的数,但是实际显示却正常,比较困惑 另,本人在做蜂鸣器实验的时候,用的是PNP的三极管,集电极接12V电源,以及一个蜂鸣器,发射极接地,在基极加一个低电平的时候开关导通进入饱和状态,在我的认识里,要开关导通,CE之间近似短路,要发射极和集电极都正偏,此时,集电极正偏可以理解,但是发射极已经接地,怎么能正偏呢,请赐教,谢谢!
|