
1602液晶显示设计.doc
17页武汉理工大学《能力拓展训练》课程设计说明书1摘要本次课程设计是以 AT89C52 为核心控制器,1602 液晶为显示器设计的液晶显示电路该电路可在 1602 液晶上显示 ASCII 码表里的各种字符,通过编程设定的显示方式设计中采用了二种动态显示方式,第一种是整屏左移操作,先将待显示的内容写入 1602RAM的后面几个存储单元,当内容写入完成后,写入指令,实现指针不动而屏幕动的效果第二种是将内容一个个写到 1602 显示,这主要通过延时函数控制写入的两个字符间的时间间隔1602 液晶一次可以显示 32 个字符,通过编程可以实现不同的动态显示方式关键词:AT89C52;1602;动态显示武汉理工大学《能力拓展训练》课程设计说明书21 Proteus 仿真流程与 Keil 编译器简介1.1 Proteus 仿真流程(1)工作界面Proteus ISIS 的工作界面是一种标准的 Windows 界面,如图 1-2 所示包括:标题栏、主菜单、标准工具栏、绘图工具栏、状态栏、对象选择按钮、预览对象方位控制按钮、仿真进程控制按钮、预览窗口、对象选择器窗口、图形编辑窗口图 1.1 proteus 操作界面(2)基本操作1 图形编辑窗口在图形编辑窗口内完成电路原理图的编辑和绘制。
为了方便作图坐标系统(CO-ORDINATE SYSTEM) ISIS 中坐标系统的基本单位是 10nm,主要是为了和 Proteus ARES 保持一致但坐标系统的识别(read-out)单位被限制在 1th坐标原点默认在图形编辑区的中间,图形的坐标值能够显示在屏幕的右下角的状态栏中武汉理工大学《能力拓展训练》课程设计说明书3点状栅格(The Dot Grid)与捕捉到栅格(Snapping to a Grid)编辑窗口内有点状的栅格,可以通过 View 菜单的 Grid 命令在打开和关闭间切换点与点之间的间距由当前捕捉的设置决定捕捉的尺度可以由 View 菜单的 Snap 命令设置,或者直接使用快捷键F4、F3、F2 和 CTRL+F12 预览窗口该窗口通常显示整个电路图的缩略图在预览窗口上点击鼠标左键,将会有一个矩形蓝绿框标示出在编辑窗口的中显示的区域 其他情况下,预览窗口显示将要放置的对象的预览这种 Place Preview 特性在下列情况下被激活:当一个对象在选择器中被选中、当使用旋转或镜像按钮时、当为一个可以设定朝向的对象选择类型图标时(例如:Component icon, Device Pin icon 等等) 、当放置对象或者执行其他非以上操作时,place preview 会自动消除、对象选择器(Object Selector)根据由图标决定的当前状态显示不同的内容。
显示对象的类型包括:设备,终端,管脚,图形符号,标注和图形在某些状态下,对象选择器有一个 Pick 切换按钮,点击该按钮可以弹出库元件选取窗体通过该窗体可以选择元件并置入对象选择器,在今后绘图时使用3 对象选择与放置通过对象选择按钮,从元件库中选择对象,并置入对象选择器窗口,供今后绘图时使用显示对象的类型包括:设备,终端,管脚,图形符号,标注和图形放置对象的步骤如下(To place an object:)根据对象的类别在工具箱选择相应模式的图标(mode icon) 根据对象的具体类型选择子模式图标(sub-mode icon) 如果对象类型是元件、端点、管脚、图形、符号或标记,从选择器里(selector )选择你想要的对象的名字对于元件、端点、管脚和符号,可能首先需要从库中调出如果对象是有方向的,将会在预览窗口显示出来,你可以通过预览对象方位按钮对对象进行调整最后,指向编辑窗口并点击鼠标左键放置对象1.2 Keil 软件简介Keil C51 是美国 Keil Software 公司出品的 51 系列兼容单片机 C 语言软件开发系统,与汇编相比,C 语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。
Keil 提供了包括 C 编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(uVision)将这些部分组合在一起运武汉理工大学《能力拓展训练》课程设计说明书4行 Keil 软件需要 WIN98、 NT、WIN2000 、WINXP 等操作系统如果你使用 C 语言编程,那么 Keil 几乎就是你的不二之选,即使不使用 C 语言而仅用汇编语言编程,其方便易用的集成环境、强大的软件仿真调试工具也会令你事半功倍Keil C51 开发系统基本知识 Keil C51 开发系统基本知识 (1)系统概述 Keil C51 软件提供丰富的库函数和功能强大的集成开发调试工具,全 Windows 界面另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到 Keil C51 生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解在开发大型软件时更能体现高级语言的优势下面详细介绍 Keil C51 开发系统各部分功能和使用 (2)Keil C51 单片机软件开发系统的整体结构 C51 工具包的整体结构,uVision 与 Ishell 分别是 C51 for Windows 和 for Dos 的集成开发环境(IDE),可以完成编辑、编译、连接、调试、仿真等整个开发流程。
开发人员可用 IDE 本身或其它编辑器编辑 C 或汇编源文件然后分别由 C51 及 C51 编译器编译生成目标文件(.OBJ)目标文件可由 LIB51 创建生成库文件,也可以与库文件一起经 L51 连接定位生成绝对目标文件(.ABS)ABS 文件由 OH51 转换成标准的 Hex 文件,以供调试器dScope51 或 tScope51 使用进行源代码级调试,也可由仿真器使用直接对目标板进行调试,也可以直接写入程序存贮器如 EPROM 中Keil C51 生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解在开发大型软件时更能体现高级语言的优势武汉理工大学《能力拓展训练》课程设计说明书52 单片机模块功能简介AT89C52 是一个低电压,高性能 CMOS 8 位单片机,片内含 8k bytes 的可反复擦写的Flash 只读程序存储器和 256 bytes 的随机存取数据存储器( RAM) ,器件采用 ATMEL 公司的高密度、非易失性存储技术生产,兼容标准 MCS-51 指令系统,片内置通用 8 位中央处理器和 Flash 存储单元,AT89C52 单片机在电子行业中有着广泛的应用。
其主要功能特性有以下几点:(1)兼容 MCS51 指令系统 (2)8K 可反复擦写(大于 100000 次)Flash ROM; (3)32 个双向 I/O 口; (4)256x8bit 内部 RAM; (5)3 个 16 位可编程定时/计数器中断; (6)时钟频率 0-24MHz; (7)2 个串行中断,可编程 UART 串行通道; (8)2 个外部中断源,共 8 个中断源; (9)2 个读写中断口线,3 级加密位; (10)低功耗空闲和掉电模式,软件设置睡眠和唤醒功能; (11)有 PDIP、PQFP、TQFP 及 PLCC 等几种封装形式,以适应不同产品的需求 AT89C52 为 8 位通用微处理器,采用工业标准的 C51 内核,在内部功能及管脚排布上与通用的 8XC51 相同,其主要用于会聚调整时的功能控制其引脚分布如图 2.1 所示武汉理工大学《能力拓展训练》课程设计说明书6图 2.1 AT89C52 单片机引脚图3 设计方案与工作原理3.1 LCM1602 液晶简介LCM (LCD Module)即 LCD 显示模组,是指将液晶显示器件、连接件、控制与驱动等外围电路,PCB 电路板,背光源,结构件等装配在一起的组件。
LCM 提供用户一个标准的 LCD 显示驱动接口,用户按照接口要求进行操作来控制 LCD 正确显示LCM 是一种相对更高集成度的 LCD 产品,对小尺寸 LCD 显示,LCM 是一种省电的显示装置,LCM 可以比较方便地与各种微控制器(比如单片机)连接,作为简易的人机接口其中,MCS-51 单片机作为 LCM1602 显示控制系统的核心部件它由中央处理器(CPU ) 、存储器(ROM 与 RAM) 、输入/输出单元(I/O)三大基本部分构成单片机具有高性能、低价格;体积小,集成度高,可靠性和抗干扰能力强;较低工作电压(1.8~5V ) ,低功耗等优点并且,只要在单片机的外围适当加一些必要的扩展电路及通道接口,就可以构成各种应用系统,如工业控制系统、数据采集系统、自动控制系统、自动测试系统、检测监视系统、智能仪表、功能模块等因此单片机广泛应用于便携式智能产品与家电消费品,以及工业控制,国防装备等领域武汉理工大学《能力拓展训练》课程设计说明书73.2 单片机最小系统单片机控制模块是整个设计方案的核心AT59C51 芯片作为该系统的控制部件,它控制了 1602 液晶显示的内容以及液晶动态显示方式。
单片机最下系统由时钟电路和复位电路构成,这样就可以在接入其他器件,用单片机编程实现对外部器件的控制单片机最小系统如图 3.1 所示武汉理工大学《能力拓展训练》课程设计说明书8图 3.1 单片机最小系统3.3 设计方案由上面介绍的 1602 液晶,参看 1602 液晶芯片资料可以对其写入内容和设定内容的显示位置以及显示方式将 1602 液晶与单片机最小系统相连接就构成了本次设计方案1602 液晶与单片机的连接方式是 1602 液晶的数据端 D0~D7 连接在单片机的 P0 口,1602 液晶的数据命令选择端 RD 接在单片机的 P2.6 引脚,读写控制端 R/Wj 接在单片机的 P2.5 引脚,使能端 EN 接在单片机的 P2.7 脚设计的电路图如图 3.2 所示武汉理工大学《能力拓展训练》课程设计说明书9图 3.2 设计方案原理图4 软件编程4.1 1602 流程图本次课程设计 1602 液晶显示的内容是“WELCOME TO WU HAN LI GONG”,设定的动态显示方式是显示的内容在屏幕上从右向左移动,停留一段时间后闪烁两次消失,然后从左向右一次显示每个字符,停留一段时间后闪烁两次后消失。
动态显示方式的字符间的时间间隔,不同显示方式的时间间隔主要通过延时程序来完成,设计的 1602系统流程图如图 4.1 所示武汉理工大学《能力拓展训练》课程设计说明书10NYNY图 4.1 1602 显示流程图4.2 软件程序#include #include typedef unsigned char BYTE; //用 BYTE 代替 unsigned char 数据类型typedef bit BOOL; //用 BOOL 代替 bit 数据类型 sbit LCD_RS = P2^6; //数据命令选择端 sbit LCD_RW = P2^5; //读写选择端sbit LCD_EP = P2^7; //使能信号开始对 1602 初始化写入显示设置命令延迟 5ms检查忙信号B_Z=0?获得 RAM 地址延迟 5ms写入相应内容内容显示完?结束武汉理工大学《能力拓展训练》课程设计说明书11BYTE code dis1[] = {" WELCOME TO "};//待显示的字符BYTE code dis2[] = {" WU HAN LI GONG "};BYTE code dis3[] = {" BIG BIG WORLD "};BYTE code dis4[] = {" I LOV。












