- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
补充数码管显示
图1 LED数码管的内部结构、外部管脚 ;D7; 将笔画与字节对应后,我们把由8个笔画的状态(逻辑状态)组成的数称为字型(段)码,或简称笔画码。
对于共阳数码管:
(1)显示“3”时,笔画为B”,即“B0H”。
(2)显示“5”时,笔画为B”,即“92H”。
对于共阴数码管:
(1)显示“2”时,笔画为B”,即“5BH”。
(2)显示“7”时,笔画为B”,即“07H”,等等。;;(a)硬件译码法示意图; ;4511译码器资料;3(a)软件译码法示意图 ;结合图3(b),欲显示内存20H单元的内容的主要程序为:
DISP:MOV A,20 H ;取20H单元数据
MOV DPTR,#TAB ;定义字型码首地址
MOVC A,@A + DPTR ;查表转换成字型码
MOV P1,A ;送P1口显示
……
TAB: DB 0C0H,0F9H,0A4H,0B0H,99H
;0,1,2,3,4
DB 92H,82H,0F8H,80H,90H ;5,6,7,8,9
DB 88H,83H,0C6H,0A1H,86H,8EH ;A,B,C,D,E,F;图4 静态方式示例; 静态方式的编程:当数据需要刷新时,直接向相应数码管的笔画端口发送信息就可以。以图4为例,设LED1、LED2、LED3、LED4对应的显示内存单元分别为40H、41H、42H、43H,4个数码管对应的I/O口地址为PORT_1、PORT_2、PORT_3、PORT_4,则显示部分的程序如下:;MOV DPTR,#TAB ;字型码表首地址
MOV A,41H ;取数据
MOVC A,@A+DPTR ;查表转换成字型码
MOV DPTR,#PORT_2 ;定义LED2端口地址
MOVX @DPTR,A ;LED2 显示完成
MOV DPTR,#TAB ;字型码表首地址
MOV A,42H ;取数据
MOVC A,@A+DPTR ;查表转换成字型码
MOV DPTR,#PORT_3 ;定义LED3端口地址
MOVX @DPTR,A ;LED3 显示完成
MOV DPTR,#TAB ;字型码表首地址
MOV A,43H ;取数据
MOVC A,@A+DPTR ;查表转换成字型码
MOV DPTR,#PORT_4 ;定义LED4端口地址
MOVX @DPTR,A ;LED4 显示完成
……
TAB: DB 0C0H,0F9H,0A4H,0B0H,99H ;0,1,2,3,4
DB 92H,82H,0F8H,80H,90H ;5,6,7,8,9; 动态方式:是指公共端接有可控元件(比如三极管、门电路等),各数码管间的笔画段可以并联接,数码管是否工作取决于控制元件的状态,通过控制元件可以使数码管工作,也可以让其不工作。动态过程由程序扫描实现,所以程序相对较难。这种方式亮度稍暗(与静态方式比较而言,通过增加瞬时电流,配合高亮数码管,亮度可以满足要求),但动态方式的优点是十分明显的,即耗电省,在动态扫描过程中,任何时刻只有一个数码管是处于工作状态的。动态方式适合数码管位数相对较多时采用。图5是动态方式的一个应用实例。;图5 动态方式应用实例;下图为8位LED动态显示2008.10.10的过程。;4 动态扫描程序设计;图6 动态扫描流程图;结合图5,设显示缓冲区的地址为40H、41H、42H、43H共4个单元,段(码)口地址为PORT_D,位(置)口地址为PORT_W,根据图7-6所示流程,写出动态扫描的程序如下:
DISP: MOV R0,#40H ;设置缓冲区首地址
MOV R7,#4 ;设置数码管个数(也即循环次数)
MOV R2,B ;设置首位数码管工作的位状态, 0 选中
DIS: MOV A,R2 ;取位状态
MOV DPTR,#PORT_W ;指向位(置)口
MOVX @DPTR,A ;选中位(将LED位置状态数据送位口)
MOV A,@R0 ;取缓冲区数据
MOV DPTR,#TAB ;定义表格首地址
MOVC A,@A+DPTR ;查表转换成LED笔画码
MOV DPTR,#PORT_D ;指向段(码)口
MOV
文档评论(0)