单片机课程设计报告:基于单片机的LCD显示字符串_第1页
单片机课程设计报告:基于单片机的LCD显示字符串_第2页
单片机课程设计报告:基于单片机的LCD显示字符串_第3页
单片机课程设计报告:基于单片机的LCD显示字符串_第4页
单片机课程设计报告:基于单片机的LCD显示字符串_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

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

文档简介

1、湖南商学院单片机应用系统设计课程设计报告题目 基于单片机的LCD显示字符串 姓 名:学 号:专 业:班 级:指导教师:职 称:计算机与信息工程学院2014年06月课程设计(实习)评审表姓 名学 院学 号专业班级题 目基于单片机的LCD液晶显示字符串评审意见评审成绩指导教师签名职称评审时间 年 月 日目 录1 设计任务与要求11.1 设计任务11.2 设计任务12 系统功能描述12.1 题目与要求12.2 系统功能分析23 系统总体设计23.1 LCD1602工作原理23.1.1 引脚功能说明:33.1.2 LCD寄存器的选择33.1.3 LCD指令表33.1.3 LCD1602内部显示地址43

2、.2 单片机简介44 系统详细设计64.1 电路原理图64.2 主要电路设计与计算64.3 程序流程图65 系统实现与测试75.1安装与调试75.2 系统功能和指标测试76 课程设计总结86.1 遇到的问题及解决办法86.2 系统存在的不足和改进设想86.3心得体会8参考文献10附录11附录111附录212单片机控制LCD显示字符串1 设计任务与要求1.1 设计任务单片机原理与应用是电子信息工程专业的一门重要专业课,对应用能力和动手能力要求很高,课程设计环节是学生学习该课程后进行的一项必不可少的基本训练。本着以下目的,制定单片机应用系统设计实施方案。使学生增进对单片机的感性认识,加深对单片机理

3、论方面的理解,巩固学生所学理论知识;使学生掌握单片机的内部功能模块的应用,培养学生系统设计的思想;培养学生的软件设计能力,提高学生的动手能力;培养学生查阅相关资料、撰写文档的能力和自学、科研的能力。1.2 设计任务(1)根据应用系统的要求,初步掌握总体结构的方法和构思,从中选择一种最佳的设计方案。(2)根据应用系统结构规模的要求,掌握在单片机外部扩展系统硬件设计的基本过程:例如硬件接口的设计,正确合理选用所需元器件,绘制应用系统与单片机连接的电路图等项工作。(3)根据设计任务和要求,首先画出程序总体流程图,然后进行各控制模块程序的设计、编写系统程序。(4)掌握如何应用单片机仿真软件来开发应用系

4、统及仿真调试的过程,先进行各模块调试,然后进行各程序模块的联调,最后与硬件一起进行联调,反复检测和修改直至开发结束。2 系统功能描述2.1 题目与要求采用LCD液晶显示屏,从右到左滚动显示“SCUDESIGN”。2.2 系统功能分析单片机应用系统是指微处理器用于工业测量控制功能所必备的硬件结构系统。它包括微处理器及其扩展电路、过程输入/输出通道、人机会话和接口电路等。 单片机及其扩展电路用于存储程序、数据并进行一系列运算处理。当微处理器内部组成不能满足系统要求时,尚有外部扩展程序存储器、数据存储器及I/O等。过程输入/输出通道包括模拟量输入/输出通道和开关量输入/输出通道两大部分。对模拟量信号

5、的采集,需要经过模拟量输入通道的A/D转换器转换成数字信号,再通过接口送入微处理器进行加工处理、分析运算等。其结果通过模拟量输出通道的D/A转换器,转换为模拟量的输出控制,通常为伺服驱动控制。开关量输入/输出通道用来输 入/输出开关量信号。 通过LCD显示字符由LCD1602液晶显示屏等通过接口与单片机相连接,通信接口实现系统与外界的数据交换,从而在显示屏上显示所要求的字符串“SCUDESIGN”。3 系统总体设计3.1 LCD1602工作原理通过AT89C52单片机控制LCD1602显示字符串,LCD1602的实物图(见图1)和引脚功能(见图2)如下:图1 LCD1602实物图 图2 LCD

6、1602引脚图3.1.1 引脚功能说明:1602LCD 采用标准的 14脚(无背光)或 16脚(带背光)接口,各引脚接口说明如表2所示: 表1 LCD1602引脚接口说明编号符号引脚说明编号符号引脚说明1VSS电源地9D2数据2VDD电源正极10D3数据3VL液晶显示偏压11D4数据4RS数据/命令选择12D5数据5R/W读/写选择13D6数据6E使能信号14D7数据7D0数据15BLA背光源正极8D1数据16BLK背光源负极3.1.2 LCD寄存器的选择表2 LCD寄存器功能说明ER/WRS功能说明100写入命令寄存器101写入数据寄存器110读取忙碌标志及RAM地址111读取RAM数据0X

7、不动作3.1.3 LCD指令表表3 LCD指令表指令功能控制线数据线RSR/WD7D6D5D4D3D2D1D0清除屏幕0000000001清除屏幕,并把光标移至左上角光标回到原点000000001x光标移至左上角,显示内容不变设定进入模式00000001I/DSI/D=1:地址递增,I/D=0:地址递减 S=1:开启显示屏,S=0:关闭显示屏显示器开关0000001DCBD=1:开启显示幕 C=1:开启光标 B=1:光标所在位置的字符闪烁移位方式000001S/CR/LxxS/C=0、R/L=0:光标左移;S/C=0、R/L=1:光标右移 S/C=1、R/L=0:字符和光标左移;S/C=1、R

8、/L=1:字符和光标右移功能设定00001DLNFxxDL=1:数据长度为8位,DL=0:数据长度为4位 N=1:双列字,N=0:单列字;F=1:5x10字形,F=0:5x7字形CG RAM地址设定0001CG RAM地址将所要操作的CG RAM地址放入地址计数器DD RAM地址设定001DD RAM地址将所要操作的DD RAM地址放入地址计数器忙碌标志位BF01BF地址计数器内容读取地址计数器,并查询LCM是否忙碌,BF表示LCM忙碌写入数据10写入数据将数据写入CG RAM或DD RAM读取数据11读取数据读取CG RAM或DD RAM的数据3.1.3 LCD1602内部显示地址图3 LC

9、D1602内部显示地址 3.2 单片机简介单片机工作原理单片机由运算器、控制器、存储器、输入输出设备构成。 单片机自动完成赋予它的任务的过程,也就是单片机执行程序的过程,即一条条执行的指令的过程,所谓指令就是把要求单片机执行的各种操作用的命令。图4 89C52实物图图5 89C52引脚图 作为LCD1602的信号输入,单片机起控制显示的整体作用,同时液晶显示屏连接了一个继电器用来调节背光。4 系统详细设计4.1 电路原理图图6 电路仿真图4.2 主要电路设计与计算 此电路图包括一个晶振电路、一个复位电路、LCD1602引脚连接、排阻(由于没有用到P0口,实物焊接的时候并没有接),另外加了一个L

10、ED灯用来观测电路是否正常。开始调自定义字库设置DDRAW地址,在第一行显示设置显示数据首地址 循环量设置取字符代码循环完? 结束4.3 程序流程图图7 主函数流程5 系统实现与测试5.1 安装与调试安装、调试过程包括仿真时的调试和焊接以后的实物调试。仿真时遇到的问题主要是程序的不足,刚开始延时过长导致滚动显示的效果并不明显,有停顿,后来更改延时解决问题。图8 keil调试截图安装调试过程刚刚开始的时候焊接错误了一个引脚,找了许久终于发现问题,又由于仿真图的单片机不用接电源,结果我实物连接的时候忘了接电源和地,难怪LED灯不亮.5.2 系统功能和指标测试如下图,系统运行正常,达到设计任务与要求

11、。图9 仿真结果6 课程设计总结6.1 遇到的问题及解决办法程序设计的过程对于我来说最为艰难,比焊接的技术性来得更强。因为对单片机整体程序设计的不熟悉,我设计程序的时候设计了差不多一天,后来又调试了一会儿,整个花在软件上的时间就不短了,所以整个单片机课程设计我用了总共两天的时间,第二天是焊接和调试。软件编程仿真出来之后接着开始思考该怎么排版久久不敢下手,后来想清楚每一个元器件的位置我终于鼓起勇气开始焊接。6.2 系统存在的不足和改进设想作品完成之后,我回顾这两天,发现自己最大的问题是效率。如果是娴熟的人来做这件事可能用不了半天。况且虽然题目只要求滚动显示字符,我还是可以加几种变化的方式,例如加

12、两个按键,一个使字符串在第一行滚动显示,另一个可以实现在第二行的显示,或者可以使字符串从第一行右边一直滚动到第二行的左边。6.3 心得体会经过这次单片机课程设计,我对单片机的整体把握更加具体了,也对实现控制有了更明确的认识,知道从设计程序到利用51单片机实现硬件控制的过程,掌握了对LCD1602字符串显示的知识。整个实物都是由我自己焊接出来的,焊接的过程中也遇到了问题,大二的时候焊接过收音机,我自认为焊接技术是还可以的,但是骄傲总使人吃苦头:我居然烫到自己,大夏天的烫伤的地方好久都难以痊愈。真是觉得自己太过大意,如果下次焊接一定要记住,谦虚是成功的前提,有句话叫一瓶子不响,半瓶子晃荡,说的就是

13、我之前的状态。所以以后要更加谦虚地向大神们请教和学习,努力让自己更优秀。 参考文献1 刘玉英.C语言程序设计案例驱动教程M.清华大学出版社:2011.9.2 曹汉房等编著,数字技术教程,北京:电子工业出版社,1995年11月出版,103-1203 何立民.单片机应用技术选编M.北京航空航天大学出版社:2011.10.4 张齐.单片机原理与应用系统设计基于C51的Proteus仿真实验与解题指导.电子工业出版社:2011.25 李亚伯等编著,数字电路与系统,北京:电子工业出版社,2001年6月出版 130-150 6 冼有佳.显示器集成电路实用手册:LCD显示器专集M.电子工业出版社:2008.

14、3.7 郝鸿安编著,常用数字集成电路应用手册,北京:中国计量出版社,1987年10月出版,153-197 8 孙毅刚.彭宇.赵光权.单片机原理及接口技术M.人民邮电出版社.2011.089 唐颖.单片机原理与应用及C51程序设计M.北京:北京大学出版社,201110 毅刚.基于Proteus的单片机课程的基础实验与课程设计M.北京:人民邮电出版社,201211 张毅刚.单片机原理及接口技术M.北京:人民邮电出版社,201112 徐建仁主编,数字集成电路应用与实验,长沙:国防科技大学出版社,1990年2月出版, 66-123 13 吴戈,等.案例学单片机C语言开发M.北京:人民邮电出版社,201

15、214 李双庆等编著,常用半导体器件简明手册,北京:电子工业出版社,1989年6月出版 53-84 15 Anonymous.Creative on-chip peripherals cut MCU power consumptionJ.Electro-nics Weekly, 2014(2588), pp.16附录附录1 元器件清单 序号 名称大小数量1电容30pf2个2电解电容10uf1个3电阻10K1个4电阻1K1个5晶振 /1个6按键开关 /1个7 89C52单片机 /1个8LCD1602液晶显示屏 /1个9导线 /若干10洞洞板 /1个 附录2源程序:#include<reg5

16、1.h>#include "lcd1602.h"unsigned char code date="SCUDESIGN "void delay(uint z) /延时函数uint x,y;for(x=z;x>0;x-)for(y=110;y>0;y-);void write_data(uchar date) /写入指令数据到LCDlcdrw=0;lcdrs=1;P3=date;/delay(5);lcden=1;delay(5);lcden=0;void clock_init()uchar i,j,k;while(1)for(j=0;j<11;j+) /循环滚动显示,设置为11刚好可以无限循环显示init1602();for(i=j;i<j+25;i+) /每移动一位扫描一整条字符k=i;if(i>10)k=i-11;if(i>21)k=i-22;write_data(datek); /单个字符显示delay(100);void main()init1602();clock_init(); void write_com(uchar com) /写入指令数据到LCDlcdrw=0;lcdrs=0;P3=com;delay(5);lcden=1;delay(5);lcden

温馨提示

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

评论

0/150

提交评论