单片机与显示器.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
  本题目要求交替显示0、1、…、9,在进行程序设计时可以首先参照例6.3的方法,对8行轮流扫描多遍以稳定显示第一个字符“0”。假如一个字符轮流扫描255遍,那么一个字符显示的时间约为2 s;然后再进行下一个字符的显示,此时只需要更改显示的状态码即可,具体实现可通过修改查表地址来完成。如此循环,每个数字显示约2 s的时间,人眼可以看到清楚稳定的显示。根据此想法设计程序流程图如图6.11所示。 图6.11 例6.4的程序流程图 (2) 程序设计如下: ROW EQU 30H ;行单元地址定义 DOT EQU 31H ORG 0000H LJMP START ORG 0100H   START: MOV DPTR,#TABLE ;设置表格首地址 MOV R5,#10 ;设置显示字符数为                       ;10个 NEXT_CHAR: MOV R6,#255 ;设置每个字符显示                       ;的次数为255次 ONE_CHAR: MOV ROW,#01H ;指向第一行 MOV DOT,#00H ;00→DOT MOV R7,#8 ;设置扫描行的次数   DOT_CHAR: MOV  A,ROW   MOV  P2,A   ;行单元的内容送P2口   RL   A   ;A左移   MOV   ROW,A   ;送给行单元,指向下一行   MOV  A,DOT   ;DOT→A   MOVC  A,@A+DPTR ;查表得该行的显示码型   MOV  P0,A    ;将显示码型送到P0口     LCALL DELAY_1MS  ;调延时子程序   INC   DOT   ;DOT加1,以便查表格的                     ;下一个数值   DJNZ  R7, DOT_CHAR ;8行扫描完了吗?若没                       ;有完,则继续下一行   DJNZ   R6, ONE_CHAR ;显示次数到255次?若                       ;未到则继续重复显示 MOV A,DPL ;一个字符显示完则更新查表           ;首地址, DPL→A   ADD  A,#8 ;A+8→A MOV  DPL,A ;A→DPL MOV  A,DPH ;DPH→A   ADDC  A,#0 ;A+CY→A MOV  DPH,A ;A→DPH DJNZ  R5, NEXT_CHAR   ;10个字符显示完?未                      ;完则开始下一个的扫描 LJMP  START ;全部显示完,则重新开始 DELAY_1MS: 略,参见例6.3   TABLE:DB 00H,1CH,36H,36H,36H,36H,36H,1CH             ;“0”的显示字符表格  DB 00H,18H,1CH,18H,18H,18H,18H,18H           ;“1”的显示字符表格  DB 00H,1EH,30H,30H,1CH,06H,06H,3EH           ;“2”的显示字符表格  DB 00H,1EH,30H,30H,1CH,30H,30H,1EH           ;“3”的显示字符表格  DB 00H,30H,38H,34H,32H,7EH,30H,30H           ;“4”的显示字符表格  DB 00H,1EH,02H,02H,1EH,10H,10H,1EH           ;“5”的显示字符表格  DB 00H,1CH,06H,1EH,36H,36H,36H,1CH           ;“6”的显示字符表格  DB 00H,3EH,30H,18H,18H,0CH,0CH,0CH

文档评论(0)

书房 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档