ImageVerifierCode 换一换
格式:DOCX , 页数:13 ,大小:18.91KB ,
资源ID:17221090      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/17221090.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(实验八 单片机液晶显示实验Word格式.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

实验八 单片机液晶显示实验Word格式.docx

1、写显示数进地址(E2)CRADD2 EQU 08006H ;读状态字地址(E2)DRADD2 EQU 08007H ;读显示数据地址(E2)PD1 EQU 3DH ;122/2 分成左右两半屏 122x32COLUMN EQU 30HPAGE_ EQU 31H ;页地址寄存器 D1,DO:页地址CODE_ EQU 32H ;字符代码寄存器COUNT EQU 33H ;计数器DIR equ 34hdtp1 equ 35hdtp2 equ 36hdtp3 equ 37hCTEMP EQU 38HCOM EQU 20H ;指令寄存器DAT EQU 21H ;数据寄存器 ORG 0 jmp main

2、mov dptr, #0f002h mov a,#56h movx dptr,a mov a,#0 movx a,dptr JMP MAIN;- 初始化程序INIT: MOV COM, #0E2H ;复位 LCALL PRO LCALL PR3 MOV COM, #0A4H ;关闭休闭状态 MOV COM, #0A9H ;设置 132占空比 MOV COM, #0A0H ;正向排序设置 MOV COM, #0C0H ;设置显示起始行为第一行 MOV COM, #0AFH ;开显示设置 RET- 清屏CLEAR: MOV R4,#00H ;页面地址暂存器设置CLEAR1: MOV A,R4 ;取

3、页地址值 ORL A,#0B8H ;或页面地址设置代码 MOV COM,A ;页面地址设置 MOV COM,#00H ;列地址设置为0 MOV R3,#50H ;一页清 80个字节CLEAR2: MOV DAT,#00H ;显示数据为 LCALL PR1 LCALL PR4 DJNZ R3,CLEAR2 ;页内字节清零循环 INC R4 ;页地址暂存器加一 CJNE R4,#04H,CLEAR1 ;RAM区清零循环-1写指令代码子程序(E1)PRO: PUSH DPL PUSH DPH MOV DPTR,#CRADD1 ;设置读状态字地址PR01: MOVX A,DPTR ;读状态字 JB A

4、CC.7,PR01 ;判忙标志为句,否再读 MOV DPTR,#CWADD1 ;设置写指令代码地址 MOV A,COM ;取指令代码 MOVX DPTR,A ;写指令代码 POP DPH POP DPL-2.写显示数据子程序(E1)PR1:PR11:读状态宇 JB ACC.7,PR11 ;标志为 MOV DPTR,#DWADD1 ;设置写显示数据地址 MOV A,DAT ;取数据写数据-3.读显示数据子程序(E1)PR2:PR21: JB ACC.7,PR21 ;否,否再读 MOV DPTR,#DRADD1 ;设置读显示数据地址读数据 MOV DAT,A ;存数据4.写指令代码子程序(E2)P

5、R3: MOV DPTR,#CRADD2 ;PR31: JB ACC.7,PR31 ;陈志为 MOV DPTR,#CWADD2 ; 5.写显示数据子程序(E2)PR4:PR41: JB ACC.7,PR41 ; MOV DPTR, #DWADD2 ; MOV A,DAT ; 6.读显示数据子程序(E2)PR5:PR51: JB ACC.7,PR51 ; MOV DPTR,#DRADD2 ; 中文显示子程序CCW_PR: MOV DPTR,#CCTAB ;确定字符字模块首地址 MOV A,CODE_ ;取代码 MOV B,#20H ;字模块宽度为 32个字节 MUL AB ;代码32 ADD A

6、,DPL ;字符字模块首地址 MOV DPL,A ;字模库首地址代码 MOV A,B ADDC A,DPH MOV DPH,A PUSH COLUMN ;列地址入栈 MOV CODE_,#00H ;代码寄存器借用为间址寄存器CCW_1: MOV COUNT,#10H ;计数器设置为 16 MOV A,PAGE_ ;读页地址寄存器 ANL A,#03H ;取页地址有效值 ORL A,#0B8H ;页地址设置代码设置页地址 LCALL PRo POP COLUMN ;取列地址值 MOV A,COLUMN ;读列地址寄存器 CLR C SUBB A,#PD1 ;列地址-模块参数 JC CCW_2 ;

7、0为左半屏显示区域(E1) MOV COLUMN,A ;0为右半屏显示区域(E2) MOV A,PAGE_ SETB ACC.3 ;设置区域标志位。 MOV PAGE_,A ;为E1,1为E2CCW_2: MOV COM,COLUMN ;设置列地址值判区域标志以确定设置哪个控制器 JNB ACC.3,CCW_3 LCALL PR3 ;区域E2 LJMP CCW_4CCW_3: LCALL PRO ;区域E1CCW_4: MOV A,CODE_ ;取间址寄存器值 MOVC A,A+DPTR ;取汉字字模数据 MOV DAT,A ; JNB ACC.3,CCW_5 LCALL PR4 ; LJMP

8、 CCW_6CCW_5: LCALL PR1 ;CCW_6: INC CODE_ ;间址寄存器加一 INC COLUMN ;列地址寄存器加一判列地址是否超出区域范围、 CJNE A,#PD1,CCW_7CCW_7: JC CCW_8 ;未超出则继续超出则判是否在区域E2 JB ACC.3,CCW_8 ;在区域E2则退出在区域E1则修改成区域E2 MOV PAGE_,A设置区域E2列地址为CCW_8: DJNZ COUNT,CCW_4 ;当页循环 JB ACC.7,CCW_9 ;判完成标志D7位,则完成退出 INC A ;否则页地址加一 SETB ACC.7 ;置完成位为 CLR ACC.3 M

9、OV CODE_,#10H ;间址寄存器设置为 16 LJMP CCW_1 ;大循环CCW_9:-中文字符库CCTAB: DB 0,0,31,17,145,209,191,145,145,159,145,145,145,31,0,0, “罗” DB 0,32,33,33,32,17,18,20,8,8,4,2,1,0,0,0 DB 0C0H 70H 0FCH 0FFH 03H 60H 6CH 6CH DB 0,32,170,170,255,170,170,128,170,170,255,170,170,34,0,0, “慧”DB 0,32,24,10,26,42,42,58,42,42,58,

10、10,31,32,0,0DB 0,0,255,137,137,137,137,137,249,137,137,137,143,128,0,0, “民”DB 0,0,63,16,8,0,0,0,0,3,4,8,16,60,0,0 DB 0,224,16,8,8,16,224,0,0,112,136,136,136,136,112,0, “08”DB 0,7,8,16,16,8,7,0,0,14,17,16,16,17,14,0DB 0,48,8,8,8,136,112,0,0,48,8,8,8,136,112,0, “22”DB 0,24,20,18,17,16,24,0,0,24,20,18,

11、17,16,24,0DB 0,16,16,248,0,0,0,0,0,16,16,248,0,0,0,0, “11”DB 0,16,16,31,16,16,0,0,0,16,16,31,16,16,0,0-. 中文演示显示程序段MAIN: LCALL INIT LCALL CLEAR MOV CTEMP,#0 MOV DIR,#0AAA: MOV PAGE_,#02H MOV COLUMN,CTEMP MOV CODE_,#00H LCALL CCW_PR MOV A,CTEMP ADD A,#10H MOV COLUMN,A MOV CODE_,#01H ADD A,#20H MOV COD

12、E_,#02H MOV PAGE_,#02H ADD A,#30H ;顺次向后显示,30H表示显示在第 四个位置 MOV CODE_,#03H ;取对应的字模03H代表中文字库 表中的第四组数据在此对应8 ADD A,#40H MOV CODE_,#04H ADD A,#50H LJMP S_DOWN ;选用此句可实现文字循环向下滚动显示 ;LJMP S_UP ;选用此句可实现文字循环向上滚动显示LJMP LEFT ;选用此句可实现文字循环向左滚动显示SJMP $ ;选用此句文字呈现静态显示 LCALL DELAY ;若删去上述跳转直接执行以下程序可实现 文字循环向右滚动显示 LCALL DE

13、LAY MOV A, DIR CJNE A,#0, LEFT INC CTEMP CJNE A,#58, AAA MOV DIR,#1 LJMP AAA LEFT: DEC CTEMP CJNE A,#0, AAALCALL S_LEFTLCALL S_UP SJMP $ 示例五 滚动演示程序段 定时间隔地有规律地修改显示起始行地址,将产生显示画面平滑向上或向下滚动的效 果。示例程序如下:S_UP: MOV R7,#00H ;向上改动程序S_UPI: MOV A,#0C0H ;显示起始行设置代码 ORL A,R7 MOV COM,A调延时子程序 INC R7 CJNE R7,#20H,S_UP

14、I LJMP S_UPS_DOWN: MOV R7,#1FH ;向下滚动程序 MOV COM,#0C0H ;S_DOWN1: DJNZ R7,S_DOWN1 LJMP S_DOWN-DELAY: MOV R6,#060H ;延时子程序 MOV R5,#00HDELAY1: NOP DJNZ R5,DELAY1 DJNZ R6,DELAY1仿真结果说明:程序执行后液晶屏幕第一行显示“罗慧民082211”字样,依照程序选择的显示方式的不同,液晶屏幕上会出现不同的效果,如上所述,若选用LJMP S_DOWN则屏幕上出现向下滚动出现的“罗慧民082211”字样,选择其他则相应出现不一样的显示效果。本程序基本实现了思考题1和2的要求。仅供个人用于学习、研究;不得用于商业用途。 not for commercial use.Nur fr den persnlichen fr Studien, Forschung, zu kommerziellen Zwecken verwendet werden.Pour l tude et la recherche uniquement des fins personnelles; pas des fins commerciales. , , . 以下无正文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1