- 1、本文档共90页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
英语学习第7章80C51单片机的系统扩展模版
DDRAM有80个单元,但第1行仅用00H~0FH单元,第2行仅用40H~4FH单元 6.5.3 LCD1602模块的命令 序号 指令 RS R/W D7 D6 D5 D4 D3 D2 D1 D0 1 清屏 0 0 0 0 0 0 0 0 0 1 2 光标归位 0 0 0 0 0 0 0 0 1 * 3 输入模式设置 0 0 0 0 0 0 0 1 I/D S 4 显示与不显示设置 0 0 0 0 0 0 1 D C B 5 光标或屏幕内容移位选择 0 0 0 0 0 1 S/C R/L * * 6 功能设置 0 0 0 0 1 DL N F * * 7 CGRAM地址设置 0 0 0 1 CGRAM地址 8 DDRAM地址设置 0 0 1 DDRAM地址 9 读忙标志和计数器地址设置 0 1 BF 计数器地址 10 写DDRAM或CGROM 1 0 要写的数据 11 读DDRAM或CGROM 1 1 读出的数据 接口电路 6.5.4 LCD1602模块的接口示例 实现程序 动态显示 特点 有闪烁,用元器件少,占I/O线少,必须扫描,花费CPU时间,编程复杂。(有多个LED时尤为突出) 连接 所有LED的段选线共同连接在一起共用一个 8位I/O口,而每个LED的位选分别由一根相应的I/O口线控制。因此必须采用动态扫描显示方式,每一个时刻只选通其中一个LED,同时在段选口送出该位LED的字型码。 动态显示基本原理 电路的接法决定了必须采用逐位扫描显示方式。 即从段选口送出某位LED的字型码,然后选通该位LED,并保持一段延时时间。然后选通下一位,直到所有位扫描完。 要注意的两个问题 1.字型码通常通过查表指令MOVC来求得 2.换位显示时通常要加一段程序使所有的LED全灭 LED数码管动态显示 PA5 PA4 PA3 PA2 PA1 PA0 PB7 PB6 PB5 PB4 PB3 PB2 PB1 PB0 7406 OC门 X 3 上拉电阻×14 +5V 8155 工作原理:从PB口送段代码,PA口送位选信号。段码虽同时到达 6个LED,但一次仅一个LED被选中。利用“视觉暂留”,每送一个字符并选中相应位线,延时一会儿,再送/选下一个……循环扫描即可。 共阴 数码管 位选线 段代码 PA5 PA4 PA3 PA2 PA1 PA0 PB7 PB6 PB5 PB4 PB3 PB2 PB1 PB0 7406 OC门 +5V 8155 位选线 段代码 要求:此处为共阴数码管,PB口送段代码,PA口送位选信号。通过查表实现动态显示。 条件:待显数据(00H—09H)已放在: 65H—60H单元中(分别对应十万位~个位) 说明:由于用了反相驱动器7406,要用共阳译码表。 共阴 数码管 上拉电阻×14 7406 OC门 X 3 +5V (65H) (64H) (63H) (62H) (61H) (60H) 十万 万位 千位 百位 十位 个位 数据缓冲区 / 显示缓冲区 PB口送段代码,PA口送位选信号。 待显数据已经放在: 65H—60H单元(分别对应十万位→个位) 使用共阳译码表。 动态显示程序流程图 81C55的PA口、PB口,工作在基本输出方式。PB口输出显示代码,PA口输出位选码。设PA口的地址为7F01H,PB口的地址为7F02H,控制字寄存器的地址为7F00H,显示缓冲区为60H~65H。 程序清单: START: MOV A , #03H ;对81C55初始化 MOV DPTR , #7F00H;8155C命令口地址 MOVX @DPTR , A MOV R0 , #60H ;置显示缓冲区首地址 MOV R2 , #01H ; 置位选码初值 MOV A , R2 LOOP: MOV DPTR , #7F01H ;81C55 A口地址 MOVX @DPTR , A ;位码从A口输出 INC DPTR MOV A , @R0 ;待显示数据送A ADD A , #0DH ;形成查表的偏移地址 MOVC A , @A+PC DIR : MOVX @DPTR , A ;B口输出段码 ACLL DELAY ;延时 INC R0 ;修改数据指针 MOV A , R2
文档评论(0)