图7-5中,采用了共阳极数码管,R1R7为限流电阻。单 片机P0口输出段码,数码管的公共段接+5V。欲显示的数字 0~9的字型码由于无规律可循,只能采用查表的方式来完成要 求,这样可按着数字0~9的顺序,把每个数字的字型码按顺序 排好,形成一个段码表。根据要显示的数字,查找到相应的段 码,从而控制LED数码管显示相应的字符。读者通过本例应掌 握段码查表程序的编写。 参考程序如下: G 0100H START:M0 V DPTR,# TABLE:指针指向表头地址 S1: A.#00H 设置地址偏移量 MOVC A @A+DPTR 查表取得段码,送A CJNE A, #OlH, S2 判断A中段码是否为结束符01H,不是则跳S2继续显示
图7-5中,采用了共阳极数码管,R1~R7为限流电阻。单 片机P0口输出段码,数码管的公共段接+5v。欲显示的数字 0~9的字型码由于无规律可循,只能采用查表的方式来完成要 求,这样可按着数字0~9的顺序,把每个数字的字型码按顺序 排好,形成一个段码表。根据要显示的数字,查找到相应的段 码,从而控制LED数码管显示相应的字符。读者通过本例应掌 握段码查表程序的编写。 参考程序如下: 21
LJMP START 是结束符01H,重新从0开始显示 S2: MOV PO. A 段码送LED显示 LCALL DELAY INC DPTR 指针加1 LJMP S1 DELAY: MOV R5 #20 延时子程序 R6,#20 D1: R7,#248 DJNZ R7. D DJNZ R6, D1 DJNZ R5, D2 RET TABLE:DB0c0h,0f9h,0a4h,0b0h,9}h,92h,82h,0f$h,80h,90h;共阳极数码管段码表 DB 01H 结束符 END
22
程序设计中,为达到反复循环显示数字0~9的目的,在段码 表中设置了一个结束符01H,来控制反复循环显示。 7.32LED数码管的显示方式 单片机控制LED数码管有两种显示方式:静态显示和动态扫 描显示。 1.静态显示方式 静态显示就是指无论多少位LED数码管,都同时处于显示 状态。 多位LED数码管工作于静态显示方式时,各位的共阴极( 或共阳极)连接在一起并接地(或接+5V);每位数码管的
程序设计中,为达到反复循环显示数字0~9的目的,在段码 表中设置了一个结束符01H,来控制反复循环显示。 7.3.2 LED数码管的显示方式 单片机控制LED数码管有两种显示方式:静态显示和动态扫 描显示。 1. 静态显示方式 静态显示就是指无论多少位LED数码管,都同时处于显示 状态。 多位LED数码管工作于静态显示方式时,各位的共阴极( 或共阳极)连接在一起并接地(或接+5V);每位数码管的 23
段码线(a~dp)分别与一个单片机控制的8位Wo口锁存器输 出相连。如果送往各个LED数码管所显示字符的段码一经确定 ,则相应MO口锁存器锁存的段码输出将维持不变,直到送入下 个显示字符的段码。因此,静态显示方式的显示无闪烁,亮 度较高,软件控制比较容易。 图7-6所示为4位LED数码管静态显示电路,各个数码管可 独立显示,只要向控制各位o口锁存器写入相应的显示段码, 该位就能保持相应的显示字符。这样在同一时间,每一位显示 的字符可以各不相同。但是,静态显示方式占用MO口线较多
段码线(a~dp)分别与一个单片机控制的8位I/O口锁存器输 出相连。如果送往各个LED数码管所显示字符的段码一经确定 ,则相应I/O口锁存器锁存的段码输出将维持不变,直到送入下 一个显示字符的段码。因此,静态显示方式的显示无闪烁,亮 度较高,软件控制比较容易。 图7-6所示为4位LED数码管静态显示电路,各个数码管可 独立显示,只要向控制各位I/O口锁存器写入相应的显示段码, 该位就能保持相应的显示字符。这样在同一时间,每一位显示 的字符可以各不相同。但是,静态显示方式占用I/O口线较多。 24
IO口(1)1O口(2)IO口(3)IO口(4) dpg ba dpg ba dpg ba dpg b a ●● ●● 日巴巴旧 5V/GND 图7-64位LED静态显示的示意图
图7-6 4位LED静态显示的示意图 25