一、复习提问1、静态显示的优点:每一位显示器的字段线是独立的,在同一时刻,每一位LED显示的字符可以不同。2、静态显示存在的问题:静态显示占用I/O口资源多,只适用于显示位数较少的场合。二、课题导出在智能仪表中,如IC卡煤气表,既要显示煤气剩余气量,又要显示煤气表运行状态,因此,显示的位数较多,而单片机I/O又较少,如何来解决这一问题呢?这就是我们本节课要研究的课题——动态显示。三、讲授新课:动态显示设计思想:当LED的显示位数较多时,I/O口较少时,为了简化电路,降低成本,将所有的字段线对应并联,由一个I/O口控制,而共阴极点或共阳极点由另外一个I/O口控制。如果各位同时导通,LED只能显示相同的字符。要想每位显示不同的字符,必须采用扫描显示方式。2、扫描原理:在某一瞬间,只让某一位的字位线处于选通状态,即共阴极的为低电平,共阳极为高电平,同时字段线上输出相应位要显示字符的字段码。而其他各位的字位线处于悬空状态,不显示,这样,在每一瞬时,每位LED只有选通的那一位LED显示出字符,而其他位是熄灭的,同样在下一瞬时,只显示下一位LED,如此循环每位LED。虽然这些字符是在不同的瞬时轮流显示出来的,但由于人眼的视觉残留效应,看到的是每位同时显示字符。○○○●3、硬件电路设计:(1)器件功能:ULN2003是具有7个达林顿电路的集成驱动芯片,此芯片集电极可以收集电流达500mA。.8abcdefg150Ω*7+5V…………UIN2003••••••*710k*6COM(2)动态显示的硬件电路:(3)电阻计算方法:Ic=+VccRc*,来计算限流电阻Rc。发光二极管工作电流一般5~20mA,~,为了计算简单取20mA,本电路2003达林顿管工作在饱和截止状态,由于饱和时,,放大倍数取1000。所以:5--=Ic×RcRc==150ΩIc=7×20=140mA∵要想使达林顿管工作饱和应满足IB>IBS=I/β∴IB>=∵Vc-=IB×R∴R=18Ω取R=18ΩR=R上拉+Rb+R达林顿∴Rb=18-5-≈10K(4)硬件连接时注意事项:①数码管低段与I/O口低位相连。②2003是OC门的驱动器,因此必须把输出端通过上拉电阻接到电源上。③本电路是共阴极结构,因此应当选用共阴极LED显示4、软件设计:(1)设计题目:要求6位LED从左到右依次显示89C51内存30H~35H的内容(30H~35H依次存放的是十进制:1,2,3,4,5,6)(2)设计方法:显示缓冲区首址→R0字位码初值→R3#TAB→DPTR开始(R3)→P2((R0))→A调用查表程序字段码→P1延时1ms(R0)+1指向下一显示单元6位显示完?(R3)左移1位结束NY(3)编程调试:动手编程调试,把结果显示在数码管上。0030HSTART:MOVSP,#60HMOV30H,#01HMOV31H,#02HMOV32H,#03HMOV33H,#04HMOV34H,#05HMOV35H,#06HDISP:MOVRO,#30HMO
课题三十动态显示 来自淘豆网m.daumloan.com转载请标明出处.