版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、单片机原理与应用综合实验报告lcd1602字符液晶滚动演示程序专业班级: 姓名: 学 号: 时 间: 指导教师: 2012年 05月 23日 lcd1602字符液晶滚动演示程序摘要:本设计以单片机作为lcd液晶显示系统控制器为主线,基于单片机89c51,采用的液晶显示器是lcd1602,主要用来显示字母、数字、符号,滚屏、左右移动以及实时控制功能。同时也对部分芯片和外围电路进行了介绍和设计,并附以系统结构框图加以说明,着重介绍了本系统应用的各硬件接口技术和各个接口模块的功能及工作过程。本设计还介绍了显示原理、硬件电路和软件部分的设计原理。关键词:1602液晶显示器 89c51单片机 并行通信1
2、 引言:液晶显示器(lcd)具有功耗低、体积小、重量轻、超薄等许多其它显示器无法相比的优点。近几年来被广泛用于单片机控制的智能仪器、仪表和低功耗电子产品中。液晶显示器分为字符型lcd显示模块和点阵型lcd显示模块。字符型lcd是一种用5×7点阵图形来显示字符的液晶显示器。点阵型液晶可显示用户自定义的任意符号和图形,并可卷动显示,它作为便携式单片机系统人机交互界面的重要组成部分被广泛应用于实时检测和显示的仪器仪表中。支持汉字显示的点阵型液晶在现代单片机应用系统中是一种十分常用的显示设备,汉字bp机、手机上的显示屏就是点阵型lcd。点阵型lcd是现代单片机应用系统中最常用的人机交互界面之
3、利用单片机控制液晶显示系统的原理,完成单片机液晶显示系统的设计,我希望能够触类旁通,灵活应用其他型号的液晶显示控制器。将来如果有机会从事这方面的工作,要运用的液晶显示控制器不一定是ks0108,但这次毕业设计中学到的东西为此打下了良好的基础,相信自己能做好这方面的工作。2 总体设计方案2.1 设计思路2.1.1 本设计主要是通过控制89c51单片同的引脚来控制lcd1602显示给定的符号、字母、数字,以及控制显示内容的垂直移动和水平移动。由于lcd1602的字符有相应的字符代码,不用编写字库,因此在设计时对方案的选择就只考虑单片机与显示器的数据传送类型,即串行通信和并行通信。(1)方案确立:方
4、案一:串行通信串行通信是反映一个数据的所有位按一定的顺序和方式,一位一位地通过串行输入/输出口进行传送。由于串行通信是数据的逐位顺序传送,在进行通信时,只需一根传输线,其传送的数据位多且通信距离长。串行通信方式如图1所示。方案二:并行通信采用并行传送方式在微机与外部设备之间进行数据传送的接口叫并行接口。主要特点:一是同时并行传送的二进位数就是数据宽度;二是在计算机与外设间采用应答式的联络信号来协调双方的数据操作。传送的数据位1-128位,一般为8位。单片机与外部设备之间也通常采用8位并行i/o接口进行短距离的通信其传输距离近,传送方式单一,每次传送一个字或一个字节。并行通信方式如图2所示。 p
5、0.0 p0.1 p0.2 p0.3 p0.4 p0.5 p0.6 p0.7 gndd0d1d2d3d4d5d6d7gndgn rxdtxd 89c51gnd rxd txd 89c51 gnd 图1 串行通信方式 图2 并行通信方式由于本设计的传输距离不远,所用i/o口不多,所以方案二既可满足课程设计的基本要求又能充分发挥其优势,电路简单,易控制,所以采用该方案。2.2 设计方框图 主控制芯片 89c51晶振电路lcd1602显示器复位电路控制开关 图3 系统总体方框图3 设计原理分析本设计主要是通过控制89c51单片同的引脚来控制lcd1602显示给定的符号、字母、数字,以及控制显示内容的
6、垂直移动和水平移动。在控制lcd1602过程中主要是通过lcd1602显示模指令和单片机的中断嵌套来实现的。由于在编程时最主要的就是使用lcd1602显示模指令来实现写指令和写数据功能,所以下面我给出其显示模指令集、写操作时序及ram地址映射。lcd1602显示模指令集:(1)清屏功能:清ddrom值和ac值(2)归位功能:光标复位,光标返回到地址00h(3)输入方式设置功能:设置光标,画面移动方式。其中:i/d=1:数据读写操作后,ac 自加一;i/d=0:数据读写操作后,ac 自减一;s=1:数据读写操作,画面平移;s=0:数据读写操作,画面不动;(4)显示开关控制功能:设置显示、光标和闪
7、烁开关。其中:d 表示显示开关,d=1 为开,d=0 为关;c 表示光标开关,c=1 为开,c=0 为关;b 表示闪烁开关,b=1 为开,b=0 为关。(5)光标、画面位移功能:光标、画面移动。其中:s/c=1 画面移动一个字符位;s/c=0 光标移动一个字符位;r/l=1:右移;r/l=0 左移。(6)功能设置功能:工作方式设置(初始化指令)。其中:dl=1,8 位数据接口;dl=0,4 位数据接口;n=1,两行显示;n=0,一行显示;f=1,5*10 点阵显示;f=0,5*7 点阵显示。(7)cgram 地址设置功能:设置cgram 地址,a5a0=03fh。(8)ddram 地址设置功能
8、:设置ddram 地址。其中:n=0,一行显示a6a0=04fh;n=1 两行显示,首行a6a0=02fh,次行a6a0=4067h。(9)读bf 及ac 值功能:读忙bf 和地址计数器ac 的值。其中:bf=1:忙,bf=0:准备好。此时ac 值意义为最近一次地址设置(cgram 或ddram)定义。(10)写数据功能:根据最近设置的地址性质,数据写入cgram 或ddram 中。(11)读数据功能:根据最近设置的地址性质,从cgram 或ddram 数据读出。图4 写操作时序图5 ram地址映射3.1 时钟电路的设计在引脚xtal1和xtal2外接晶体振荡器或陶瓷谐振振荡器,构成了内部振荡
9、方式。由于单片机内部有一个高增益反相放大器,当外接晶振后,就构成了自积振荡,并产生振荡时钟脉冲。晶振通常选用12mhz或11.0592mhz,如图4所示。振荡周期:晶振的振荡周期,又称时钟周期,为最小的时序单位。状态周期:振荡频率经单片机内的二分频器分频后提供给片内cpu的时钟周期。因此一个状态周期包含2个振荡周期。机器周期:1个机器周期由6个状态周期12个振荡周期组成,是计算机执行一种基本操作的时间单位。指令周期:执行一条指令所需的时间。一个指令周期由1-4个机器周期组成,依据指令不同而不同。图4 晶振3.2 控制电路的设计如图5所示,按键k3、k2、k1分别接单片机的p3.2、p3.3、p
10、3.4。按键k3为暂停/继续按钮,按键k2为自动垂直滚动按钮,k1为自动水平滚动按钮。图5 控制电路4 结束语为期一周的课程设计已经结束,在这几天的学习、设计、及电路搭建过程中我感触颇深,使我对抽象的理论有了具体的认识。通过对函数信号发生器的设计,熟悉了常用的仪器仪表,并且检验了大学三年的学习成果,进一步加深了我对专业知识的了解和认识以及动手的能力。虽然在这次设计中对于所学知识的运用和衔接还不够熟练,作品完成的还不是很出色。但是我将在以后的工作和学习中继续努力,不断完善。参考文献1 林立.单片机原理用应用基于proteus和keilc .北京:电子工业出版社,20092 阎石.数字电子技术基础
11、(第三版). 北京:高等教育出版社,19893 李继凯.现代电子技术工程设计与实践 北京:化学工业出版社,2010附录#include<reg51.h>#define uchar unsigned char /宏定义#define uint unsigned int /宏定义uchar code table="i like dang pian ji! " uchar code table1="yang hao sheng dian zi 10-2 ban 32" uchar code table2=" tong zhi "
12、 uchar code table3="1. dian zi zhuan" uchar code table4="2. ye kao shi yu" uchar code table5="3. shi liu zhou " uchar code table6="4. xing qi yi yu" uchar code table7="5. 2a703jingxing" uchar code table8=" huan ying " sbit lcden=p22;sbit lc
13、drs=p20;sbit k3=p32;uchar num,time; /定义两个全局变量void delay(uint z) /延时函数uchar x,y;for(x=z;x>0;x-) for(y=100;y>0;y-);void write_com(uchar com) /写指令函数lcdrs=0;p0=com;delay(50);lcden=1;delay(50);lcden=0;void write_date(uchar date) /写数据函数lcdrs=1;p0=date;delay(1);lcden=1;delay(1);lcden=0;void init() /初
14、始化函数lcden=0;write_com(0x38);write_com(0x0c);write_com(0x06);write_com(0x80);write_com(0x01);void int0()interrupt 0 /外部中断0,实现暂停 ea=0; delay(10);if(k3) while(k3);else ea=1; void int1()interrupt 2 /外部中断1,实现垂直移动 for(time=3;time>0;time-) /内容垂直移动三次 init();write_com(0x80); /从第一行开头开始写入数据for(num=0;num<
15、20;num+) write_date(table2num);delay(20); write_com(0x80+0x40); /从第二行开头开始写入数据 for(num=0;num<34;num+) write_date(table3num);delay(20); write_com(0x01);/清屏 write_com(0x80);/将第二行的上移到第一行for(num=0;num<20;num+) write_date(table3num); delay(20); write_com(0x80+0x40); /在第二行开头写入新内容,以下依此类推 for(num=0;num
16、<34;num+) write_date(table4num);delay(20); write_com(0x01); write_com(0x80); for(num=0;num<20;num+) write_date(table4num);delay(20); write_com(0x80+0x40); for(num=0;num<34;num+) write_date(table5num);delay(20); write_com(0x01); write_com(0x80);for(num=0;num<20;num+) write_date(table5num)
17、;delay(20); write_com(0x80+0x40); for(num=0;num<34;num+) write_date(table6num);delay(20); void kt0()interrupt 1 /定时/计数器中断扩展为外部中断,实现水平移动 for(time=3;time>0;time-) /内容水平移动三次 init(); write_com(0x80+0x06); /在第一行指定位置写入数据 for(num=0;num<34;num+) write_date(tablenum); delay(0); write_com(0x80+0x46); /在第三行指定位置写入数据 for(num=0;num<34;num+) write_date(table1num); delay(0); for(num=0;num<40;num+) /整屏移
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 印刷业绿色印刷技术与推广考核试卷
- 个人房产出租单位居住权合同(2024版)
- 信托参与的动画影视制作技术引进与合作考核试卷
- 2006年贵州遵义中考满分作文《话说“棋逢对手”》
- 2024版:现代办公室装修合同3篇
- 《数学好玩-校园中的测量》说课稿-2024-2025学年北师大版数学三年级上册
- 农药批发商的客户关系维护考核试卷
- 全国电子工业版初中信息技术第六册第3单元3.2活动1《输入图像训练分类模型》说课稿
- 农业农业机械产业循环经济教育服务批发考核试卷
- 2025年人教新起点高二物理上册月考试卷含答案
- 工程款支付报审表
- 《项目施工组织设计开题报告(含提纲)3000字》
- ICU常见药物课件
- CNAS实验室评审不符合项整改报告
- 农民工考勤表(模板)
- 承台混凝土施工技术交底
- 卧床患者更换床单-轴线翻身
- 计量基础知识培训教材201309
- 中考英语 短文填词、选词填空练习
- 阿特拉斯基本拧紧技术ppt课件
- 新课程理念下的班主任工作艺术
评论
0/150
提交评论