单片机液晶显示控制实验.doc_第1页
单片机液晶显示控制实验.doc_第2页
单片机液晶显示控制实验.doc_第3页
单片机液晶显示控制实验.doc_第4页
单片机液晶显示控制实验.doc_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

燕山大学 课 程 设 计 说 明 书 题目 题目 液晶显示控制实验液晶显示控制实验 学院 系 学院 系 电气工程学院电气工程学院 年级专业 年级专业 1111 级自动化仪表级自动化仪表 1 1 班班 学学 号 号 110103020029110103020029 学生姓名 学生姓名 张钊张钊 指导教师 指导教师 张张 淑淑 清清 教师职称 教师职称 教教 授授 2 燕山大学课程设计 论文 任务书燕山大学课程设计 论文 任务书 院 系 电气工程学院 基层教学单位 自动化仪表系 学 号 110103020029 学生姓名张钊专业 班级 11 仪表 1 班 设计题目 液晶显示控制实验 设 计 技 术 参 数 1 独立完成设计任务 2 编程 上机调试 3 连接硬件试验线路 实现所要求的功能 4 完成设计 提交课程设计报告 设 计 要 求 1 利用实验上的液晶显示屏电路 编写程序控制显示 输出汉字 2 了解液晶显示屏的控制原理及方法 3 了解点阵汉子的显示原理 工 作 计 划 软件编程与硬件调试相结合 绘制设计流程图 并编程进行硬件实现 参 考 资 料 1 单片机原理及应用技术 张淑清 国防工业出版社 教材 2 过程控制系统及仪表 邵裕森 编 教材 3 单片机及应用 李大友 高等教育出版社 教材 4 机械量测量 机械工业出版社 教材 周次一周 应 完 成 任 务 绘制硬件电路 软件流程图 熟悉伟福单片机编程环境 读程序 修改软件 参数 修改硬件地址 硬件调试 撰写课程设计报告 指导教师签字张淑清基层教学单位主任签字谢平 说明 此表一式四份 学生 指导教师 基层教学单位 3 目录目录 目录 3 摘要 4 第一章 绪论 5 1 1 硬件环境分析 5 1 2 实验箱简介 5 第二章 课程设计目的及课题分析 6 2 1 课程设计目的 6 2 2 课题分析 6 第三章 实现原理 7 3 1 点阵 LCD 的显示原理 7 3 2 取模 7 3 3 功能扩展部分 9 第四章 PROTEUS 硬件仿真 10 4 1 硬件模拟软件介绍 10 4 2 程序流程图 12 附录 13 心得体会 23 参考文献 24 4 摘要 单片机具有控制功能强 集成度高 体积小 低电压低能耗等特点 并 且具有优异的性能价格比自 20 世纪 70 年代问世以来 受到人们的广泛关注 几十年间单片机的发展十分迅猛 在控制领域独占鳌头 在我国单片机已广 泛应用于工业自动化控制自动控制智能仪表 家用电气电力电子机电一体化 设备等各个方面 而 51 单片机是各单片机中最为理想和最为典型具有代表性 的一种 本次课程设计通过对它的学习应用以单片机为核心辅以必要的电路 设计一个简易的液晶显示控制装置 它是由直流电源供电通过 LCD 显示出来 实验中系统设计所需硬件都已集成于 LAB6000 实验箱上 本文详细介绍了基 于单片机和 lab6000 实验箱的液晶显示实验 并利用伟福仿真软件实现了程 序的编译和连接 还利用 proteus 仿真软件对硬件电路进行了绘制和仿真 也使用了 wave6000 并用 80C51 汇编语言进行编程 该系统可以完成汉字字 模的显示 本文系统的从总体设计思路 汉字取模的原理 液晶显示的原理 电路绘制和仿真和最好的上箱实验几个方面介绍了本次液晶显示实验 基本 掌握了电路仿真和绘制的仿真程序 了解了一些简单的硬件知识 对课本所 学的理论知识有了更加深入的了解 对以后的学习也更有针对性 关键字 单片机 伟福仿真 lab2000 proteus 仿真软件 5 第一章 绪 论 1 1 单片机液晶显示系统设计课题背景 单片机液晶显示系统主要是指单片机以及由单片机驱动的点阵式液晶显 示屏所组成的一个显示系统 液晶显示器与 CRT 阴极射线管 LED 发光二 级管 或等离子显示器相比是一种低功耗的平面显示器件 它在车内广告 在 型智能广告 可视电话 仪表盘 空调 洗衣机和其它低功耗电子产品中得 到广泛应用 现代工业控制和一些智能化仪器仪表中 越来越多的场所需要 用点阵图形显示器显示汉字 由于物探仪器的多功能化 智能化 并且普遍 采用人机对话的交互方式 需要能够显示更丰富信息和通用性较强的显示器 便于开发和应用 并要求其体积小 重量轻 功耗小 图形点阵式 LCD 不仅 可以显示字符 数字 还可以显示各种图形 曲线及汉字 并且可以实现屏 幕画面滚动 分区开窗口 反转 闪烁 位操作等功能 可以显示用户自定 义的任意符号以及曲线 图形等 是信息处理 信息输出的重要手段之一 具有广泛的应用前景 1 2 开发单片机液晶显示系统的意义 液晶显示器 LCD 具有功耗低 体积小 重量轻 超薄等许多其它显示器 无法相比的优点 近几年来被广泛用于单片机控制的智能仪器 仪表和低功 耗电子产品中 液晶显示器分为字符型 LCD 显示模块和点阵型 LCD 显示模块 点阵型液晶可显示用户自定义的任意符号和图形 并可卷动显示 它作为便 携式单片机系统人机交互界面的重要组成部分被广泛应用于实时检测和显示 的仪器仪表中 支持汉字显示的点阵型液晶在现代单片机应用系统中是一种 十分常用的显示设备 汉字 BP 机 手机上的显示屏就是点阵型 LCD 点阵型 LCD 是现代单片机应用系统中最常用的人机交互界面之一 6 第二章 课程设计目的及课题分析理解 2 12 1 课程设计目的课程设计目的 1 熟练掌握C51系统仿真开发系统的应用 2 加强单片机的综合运用能力 提高单片机的软件编程和调试能力 为以后的学习 和开发工作打下良好基础 3 掌握的液晶的工作原理以及应用设计 4 掌握小系统开发设计的流程以及设计思路 2 22 2 课题的分析理解课题的分析理解 本文围绕设计以单片机作为 LCD 液晶显示系统控制器为主线 基于单片机 8051 采用的液晶显示控制器的芯片是 SED1520 主要实现中文显示 滚屏以 及左右移动功能 同时也对部分芯片和外围电路进行了介绍和设计 并附以 系统结构框图加以说明 着重介绍了本系统应用的各硬件接口技术和各个接 口模块的功能及工作过程 并详细阐述了程序的各个模块 本系统是以单片 机的汇编语言来进行软件设计 指令的执行速度快 节省存储空间 为了便 于扩展和更改 软件的设计采用模块化结构 使程序设计的逻辑关系更加简 洁明了 使硬件在软件的控制下协调运作 其次阐述了部分程序的流程图和 实现过程 本文撰写的主导思想是软 硬件相结合 以硬件为基础 来进行 各功能模块的编写 最后对我所开发的用单片机实现 LCD 液晶显示器控制原 理的设计思想和软 硬件调试作了详细的论述 7 第三章 基本原理 3 1 点阵点阵 LCD 的显示原理的显示原理 在数字电路中 所有的数据都是以 0 和 1 保存的 对 LCD 控制器进行不同 的数据操作 可以得到不同的结果 对于显示英文操作 由于英文字母种类 很少 只需要 8 位 一字节 即可 而对于中文 常用却有 6000 以上 于是 我们的 DOS 前辈想了一个办法 就是将 ASCII 表的高 128 个很少用到的数值 以两个为一组来表示汉字 即汉字的内码 而剩下的低 128 位则留给英文字 符使用 即英文的内码 3 2 取模取模 在编写软件代码之前必须要先掌握汉字取模的方法 要得到上表中的文字 我们 可以借助取模软件来完成 目前点阵 LCD 的取模软件有很多 我们以本开发板配套的取 8 在文字输入区中输入文字 我们以输入一个 燕 字为例 了解其取模过程 步骤 1 打开字模软件后点开设置按钮 选好相应的功能 2 在在文字输入区输入汉字 燕 9 3 点击右下角生成字模按钮 得到汉字 燕 的显示代码 经过以上 步骤后一个汉字就取模成功了 在程序中只要调用这段代码就可显示出汉字 燕 了 其它汉字也用同样的方法 3 3 功能扩展部分功能扩展部分 源程序是静态显示六个汉字 文远力珺钊钊 通过每个字的扫描 变成动态的显示 在频幕上可实现文字循环向下滚动显示 10 第四章第四章 Proteus 硬件硬件仿真仿真 4 1 硬件模拟软件介绍硬件模拟软件介绍 Proteus 是英国 Labcenter electronics 公司出版的 EDA 工具软件 它不仅具有 其它 EDA 工具软件的仿真功能 还能仿真单片机及外围器件 它是目前最好的仿真单片 机及外围器件的工具 虽然目前国内推广刚起步 但已受到单片机爱好者 从事单片机 教学的教师 致力于单片机开发应用的科技工作者的青睐 Proteus 是世界上著名的 EDA 工具 仿真软件 从原理图布图 代码调试到单片机与外围电路协同仿真 一键切 换到 PCB 设计 真正实现了从概念到产品的完整设计 是目前世界上唯一将电路仿真软 件 PCB 设计软件和虚拟模型仿真软件三合一的设计平台 其处理器模型支持 8051 HC11 PIC10 12 16 18 24 30 DsPIC33 AVR ARM 8086 和 MSP430 等 2010 年又增加了 Cortex 和 DSP 系列处理器 并持续增加其他系列处理器模型 在编译 方面 它也支持 IAR Keil 和 MPLAB 等多种编译器 运行界面如下图 11 通过此软件画出硬件电路的连线图如下 XTAL2 18 XTAL1 19 ALE 30 EA 31 PSEN 29 RST 9 P0 0 AD0 39 P0 1 AD1 38 P0 2 AD2 37 P0 3 AD3 36 P0 4 AD4 35 P0 5 AD5 34 P0 6 AD6 33 P0 7 AD7 32 P2 7 A15 28 P2 0 A8 21 P2 1 A9 22 P2 2 A10 23 P2 3 A11 24 P2 4 A12 25 P2 5 A13 26 P2 6 A14 27 P1 0 1 P1 1 2 P1 2 3 P1 3 4 P1 4 5 P1 5 6 P1 6 7 P1 7 8 P3 0 RXD 10 P3 1 TXD 11 P3 2 INT0 12 P3 3 INT1 13 P3 4 T0 14 P3 7 RD 17 P3 6 WR 16 P3 5 T1 15 U1 80C51 1 2 3 U2 A 7400 4 5 6 U2 B 7400 10 9 8 U2 C 7400 1 2 3 U3 A 7408 4 5 6 U3 B 7408 9 10 8 U3 C 7408 E1 5 A0 4 VSS 1 VDD 2 VEE 3 D0 10 D1 11 D2 12 D3 13 D4 14 D5 15 D6 16 D7 17 E2 6 BL 19 BL 20 R W 9 RES 18 LCD1 AGM1232G VCCLCDcs 12 4 2 程序流程图程序流程图 13 附录附录 一 静态显示程序代码 二 动态显示程序代码 CWADD1 EQU 08000H 写指令代码地址 E1 DWADD1 EQU 08001H 写显示数据地址 E1 CRADD1 EQU 08002H 读状态字地址 E1 DRADD1 EQU 08003H 读显示数据地址 E1 CWADD2 EQU 08004H 写指令代码地址 E2 DWADD2 EQU 08005H 写显示数进地址 E2 CRADD2 EQU 08006H 读状态字地址 E2 DRADD2 EQU 08007H 读显示数据地址 E2 PD1 EQU 3DH 122 2 分成左右两半屏 122x32 COLUMN EQU 30H PAGE EQU 31H 页地址寄存器 D1 DO 页地址 CODE EQU 32H 字符代码寄存器 COUNT EQU 33H 计数器 DIR equ 34h dtp1 equ 35h dtp2 equ 36h dtp3 equ 37h CTEMP EQU 38H COM EQU 20H 指令寄存器 DAT EQU 21H 数据寄存器 ORG 0 jmp main mov dptr 0f002h mov a 56h 14 movx dptr a mov a 0 movx a dptr JMP MAIN 初始化程序 INIT MOV COM 0E2H 复位 LCALL PRO LCALL PR3 MOV COM 0A4H 关闭休闭状态 LCALL PRO LCALL PR3 MOV COM 0A9H 设置 1 32 占空比 LCALL PRO LCALL PR3 MOV COM 0A0H 正向排序设置 LCALL PRO LCALL PR3 MOV COM 0C0H 设置显示起始行为第一行 LCALL PRO LCALL PR3 MOV COM 0AFH 开显示设置 LCALL PRO LCALL PR3 RET 清屏 CLEAR MOV R4 00H 页面地址暂存器设置 CLEAR1 MOV A R4 取页地址值 ORL A 0B8H 或 页面地址设置代码 MOV COM A 页面地址设置 LCALL PRO LCALL PR3 MOV COM 00H 列地址设置为 0 LCALL PRO LCALL PR3 MOV R3 50H 一页清 80 个字节 15 CLEAR2 MOV DAT 00H 显示数据为 0 LCALL PR1 LCALL PR4 DJNZ R3 CLEAR2 页内字节清零循环 INC R4 页地址暂存器加一 CJNE R4 04H CLEAR1 RAM 区清零循环 RET 1 写指令代码子程序 E1 PRO PUSH DPL PUSH DPH MOV DPTR CRADD1 设置读状态字地址 PR01 MOVX A DPTR 读状态字 JB ACC 7 PR01 判 忙 标志为句 0 否再读 MOV DPTR CWADD1 设置写指令代码地址 MOV A COM 取指令代码 MOVX DPTR A 写指令代码 POP DPH POP DPL RET 2 写显示数据子程序 E1 PR1 PUSH DPL PUSH DPH MOV DPTR CRADD1 设置读状态字地址 PR11 MOVX A DPTR 读状态宇 JB ACC 7 PR11 判 忙 标志为 0 否再读 MOV DPTR DWADD1 设置写显示数据地址 MOV A DAT 取数据 MOVX DPTR A 写数据 POP DPH POP DPL RET 3 读显示数据子程序 E1 PR2 PUSH DPL PUSH DPH 16 MOV DPTR CRADD1 设置读状态字地址 PR21 MOVX A DPTR 读状态字 JB ACC 7 PR21 判 忙 标志为 0 否 否再读 MOV DPTR DRADD1 设置读显示数据地址 MOVX A DPTR 读数据 MOV DAT A 存数据 POP DPH POP DPL RET 4 写指令代码子程序 E2 PR3 PUSH DPL PUSH DPH MOV DPTR CRADD2 设置读状态字地址 PR31 MOVX A DPTR 读状态字 JB ACC 7 PR31 判 忙 陈志为 0 否 否再读 MOV DPTR CWADD2 设置写指令代码地址 MOV A COM 取指令代码 MOVX DPTR A 写指令代码 POP DPH POP DPL RET 5 写显示数据子程序 E2 PR4 PUSH DPL PUSH DPH MOV DPTR CRADD2 设置读状态字地址 PR41 MOVX A DPTR 读状态字 JB ACC 7 PR41 判 忙 标志为 0 否 否再读 MOV DPTR DWADD2 设置写显示数据地址 MOV A DAT 取数据 MOVX DPTR A 写数据 POP DPH POP DPL RET 6 读显示数据子程序 E2 17 PR5 PUSH DPL PUSH DPH MOV DPTR CRADD2 设置读状态字地址 PR51 MOVX A DPTR 读状态字 JB ACC 7 PR51 判 忙 标志为 0 否再读 MOV DPTR DRADD2 设置写显示数据地址 MOVX A DPTR 读数据 MOV DAT A 存数据 POP DPH POP DPL RET 中文显示子程序 CCW PR MOV DPTR CCTAB 确定字符字模块首地址 MOV A CODE 取代码 MOV B 20H 字模块宽度为 32 个字节 MUL AB 代码 32 ADD A DPL 字符字模块首地址 MOV DPL A 字模库首地址 代码 32 MOV A B ADDC A DPH MOV DPH A PUSH COLUMN 列地址入栈 PUSH COLUMN 列地址入栈 MOV CODE 00H 代码寄存器借用为间址寄存器 CCW 1 MOV COUNT 10H 计数器设置为 16 MOV A PAGE 读页地址寄存器 ANL A 03H 取页地址有效值 ORL A 0B8H 或 页地址设置代码 MOV COM A 设置页地址 LCALL PRo LCALL PR3 POP COLUMN 取列地址值 MOV A COLUMN 读列地址寄存器 CLR C SUBB A PD1 列地址 模块参数 JC CCW 2 0 为左半屏显示区域 E1 18 MOV COLUMN A 0 为右半屏显示区域 E2 MOV A PAGE SETB ACC 3 设置区域标志位 MOV PAGE A 0 为 E1 1 为 E2 CCW 2 MOV COM COLUMN 设置列地址值 MOV A PAGE 判区域标志以确定设置哪个控制器 JNB ACC 3 CCW 3 LCALL PR3 区域 E2 LJMP CCW 4 CCW 3 LCALL PRO 区域 E1 CCW 4 MOV A CODE 取间址寄存器值 MOVC A A DPTR 取汉字字模数据 MOV DAT A 写数据 MOV A PAGE JNB ACC 3 CCW 5 LCALL PR4 区域 E2 LJMP CCW 6 CCW 5 LCALL PR1 区域 E1 CCW 6 INC CODE 间址寄存器加一 INC COLUMN 列地址寄存器加一 MOV A COLUMN 判列地址是否超出区域范围 CJNE A PD1 CCW 7 CCW 7 JC CCW 8 未超出则继续 MOV A PAGE 超出则判是否在区域 E2 JB ACC 3 CCW 8 在区域 E2 则退出 SETB ACC 3 在区域 E1 则修改成区域 E2 MOV PAGE A MOV COM 00H 设置区域 E2 列地址为 0 LCALL PR3 CCW 8 DJNZ COUNT CCW 4 当页循环 MOV A PAGE 读页地址寄存器 JB ACC 7 CCW 9 判完成标志 D7 位 1 则完成退出 INC A 否则页地址加一 SETB ACC 7 置完成位为 1 CLR ACC 3 MOV PAGE A MOV CODE 10H 间址寄存器设置为 16 19 LJMP CCW 1 大循环 CCW 9 RET 中文字符库 CCTAB DB 08H 08H 08H 08H 78H 88H 09H 0EH DB 08H 88H 78H 08H 08H 08H 08H 00H DB 40H 40H 40H 20H 20H 11H 0AH 04H DB 0AH 11H 10H 20H 60H 20H 20H 00H 文 0 DB 40H 42H 4CH 0C4H 20H 22H 22H 0E2H DB 22H 22H 0E2H 22H 22H 20H 20H 00H DB 00H 40H 20H 1FH 20H 48H 44H 43H DB 40H 40H 47H 48H 48H 48H 4EH 00H 远 1 DB 00H 10H 10H 10H 10H 10H 10H 0FFH DB 10H 10H 10H 10H 10H 0F0H 00H 00H DB 00H 00H 80H 40H 20H 18H 06H 01H DB 00H 00H 40H 80H 40H 3FH 00H 00H 力 2 DB 22H 22H 0FEH 22H 22H 10H 92H 92H DB 0F2H 9EH 92H 92H 0FEH 10H 10H 00H DB 08H 08H 47H 24H 14H 08H 04H 0FFH DB 44H 44H 44H 44H 44H 0FCH 00H 00H 珺 3 DB 80H 40H 30H 2FH 0E4H 24H 24H 04H DB 00H 00H 0F8H 00H 00H 0FFH 00H 00H DB 00H 01H 01H 01H 0FFH 41H 21H 01H DB 00H 00H 0FH 40H 80H 7FH 00H 00H 钊 4 DB 80H 40H 30H 2FH 0E4H 24H 24H 04H DB 00H 00H 0F8H 00H 00H 0FFH 00H 00H DB 00H 01H 01H 01H 0FFH 41H 21H 01H DB 00H 00H 0FH 40H 80H 7FH 00H 00H 钊 5 20 中文演示显示程序段 MAIN LCALL INIT LCALL CLEAR MOV CTEMP 0 MOV DIR 0 AAA MOV PAGE 02H MOV COLUMN CTEMP MOV CODE 00H LCALL CCW PR MOV PAGE 02H MOV A CTEMP ADD A 10H MOV COLUMN A MOV CODE 01H LCALL CCW PR MOV PAGE 02H MOV A CTEMP ADD A 20H MOV COLUMN A MOV CODE 02H LCALL CCW PR MOV PAGE 02H MOV A CTEMP ADD A 30H 顺次向后显示 30H 表示显示在第 四个位置 MOV COLUMN A MOV CODE 03H 取对应的字模 03H 代表中文字库 表中的第四组数据在此对应 8 21 LCALL CCW PR MOV PAGE 02H MOV A CTEMP ADD A 40H MOV COLUMN A MOV CODE 04H LCALL CCW PR MOV PAGE 02H MOV A CTEMP ADD A 50H MOV COLUMN A MOV CODE 04H LCALL CCW PR LJMPS DOWN 选用此句可实现文字循环向下滚动显示 LJMP S UP 选用此句可实现文字循环向上滚动显示 LJMP LEFT 选用此句可实现文字循环向左滚动显示 SJMP 选用此句文字呈现静态显示 LCALL DELAY 若删去上述跳转直接执行以下程序可实现 文字循环向右滚动显示 LCALL DELAY LCALL DELAY MOV A DIR CJNE A 0 LEFT INC CTEMP MOV A CTEMP CJNE A 58 AAA MOV DIR 1 LJMP AAA LEFT DEC CTEMP MOV A CTEMP CJNE A 0 AAA MOV DIR 0 LJMP AAA LCALL S LEFT 22 LCALL S UP SJMP 示例五 滚动演示程序段 定时间隔地有规律地修改显示起始行地址 将产生显示画面平滑向上或向下滚动的效 果 示例程序如下 S UP MOV R7 00H 向上改动程序 S UPI MO

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论