单片机课程设计报告基于单片机的LCD显示字符串讲解文档格式.docx
- 文档编号:429602
- 上传时间:2023-04-28
- 格式:DOCX
- 页数:16
- 大小:178.10KB
单片机课程设计报告基于单片机的LCD显示字符串讲解文档格式.docx
《单片机课程设计报告基于单片机的LCD显示字符串讲解文档格式.docx》由会员分享,可在线阅读,更多相关《单片机课程设计报告基于单片机的LCD显示字符串讲解文档格式.docx(16页珍藏版)》请在冰点文库上搜索。
使学生增进对单片机的感性认识,加深对单片机理论方面的理解,巩固学生所学理论知识;
使学生掌握单片机的内部功能模块的应用,培养学生系统设计的思想;
培养学生的软件设计能力,提高学生的动手能力;
培养学生查阅相关资料、撰写文档的能力和自学、科研的能力。
1.2设计任务
(1)根据应用系统的要求,初步掌握总体结构的方法和构思,从中选择一种最佳的设计方案。
(2)根据应用系统结构规模的要求,掌握在单片机外部扩展系统硬件设计的基本过程:
例如硬件接口的设计,正确合理选用所需元器件,绘制应用系统与单片机连接的电路图等项工作。
(3)根据设计任务和要求,首先画出程序总体流程图,然后进行各控制模块程序的设计、编写系统程序。
(4)掌握如何应用单片机仿真软件来开发应用系统及仿真调试的过程,先进行各模块调试,然后进行各程序模块的联调,最后与硬件一起进行联调,反复检测和修改直至开发结束。
2系统功能描述
2.1题目与要求
采用LCD液晶显示屏,从右到左滚动显示“SCUDESIGN”。
2.2系统功能分析
单片机应用系统是指微处理器用于工业测量控制功能所必备的硬件结构系统。
它包括微处理器及其扩展电路、过程输入/输出通道、人机会话和接口电路等。
单片机及其扩展电路用于存储程序、数据并进行一系列运算处理。
当微处理器内部组成不能满足系统要求时,尚有外部扩展程序存储器、数据存储器及I/O等。
过程输入/输出通道包括模拟量输入/输出通道和开关量输入/输出通道两大部分。
对模拟量信号的采集,需要经过模拟量输入通道的A/D转换器转换成数字信号,再通过接口送入微处理器进行加工处理、分析运算等。
其结果通过模拟量输出通道的D/A转换器,转换为模拟量的输出控制,通常为伺服驱动控制。
开关量输入/输出通道用来输入/输出开关量信号。
通过LCD显示字符由LCD1602液晶显示屏等通过接口与单片机相连接,通信接口实现系统与外界的数据交换,从而在显示屏上显示所要求的字符串“SCUDESIGN”。
3系统总体设计
3.1LCD1602工作原理
通过AT89C52单片机控制LCD1602显示字符串,LCD1602的实物图(见图1)和引脚功能(见图2)如下:
图1LCD1602实物图
图2LCD1602引脚图
3.1.1引脚功能说明:
1602LCD采用标准的14脚(无背光)或16脚(带背光)接口,各引脚接口说明如表2所示:
表1LCD1602引脚接口说明
编号
符号
引脚说明
1
VSS
电源地
9
D2
数据
2
VDD
电源正极
10
D3
3
VL
液晶显示偏压
11
D4
4
RS
数据/命令选择
12
D5
5
R/W
读/写选择
13
D6
6
E
使能信号
14
D7
7
D0
15
BLA
背光源正极
8
D1
16
BLK
背光源负极
3.1.2LCD寄存器的选择
表2LCD寄存器功能说明
功能说明
写入命令寄存器
写入数据寄存器
读取忙碌标志及RAM地址
读取RAM数据
X
不动作
3.1.3LCD指令表
表3LCD指令表
指令功能
控制线
数据线
清除屏幕
清除屏幕,并把光标移至左上角
光标回到原点
x
光标移至左上角,显示内容不变
设定进入模式
I/D
S
I/D=1:
地址递增,I/D=0:
地址递减S=1:
开启显示屏,S=0:
关闭显示屏
显示器开关
D
C
B
D=1:
开启显示幕C=1:
开启光标B=1:
光标所在位置的字符闪烁
移位方式
S/C
R/L
S/C=0、R/L=0:
光标左移;
S/C=0、R/L=1:
光标右移S/C=1、R/L=0:
字符和光标左移;
S/C=1、R/L=1:
字符和光标右移
功能设定
DL
N
F
DL=1:
数据长度为8位,DL=0:
数据长度为4位N=1:
双列字,N=0:
单列字;
F=1:
5x10字形,F=0:
5x7字形
CGRAM地址设定
CGRAM地址
将所要操作的CGRAM地址放入地址计数器
DDRAM地址设定
DDRAM地址
将所要操作的DDRAM地址放入地址计数器
忙碌标志位BF
BF
地址计数器内容
读取地址计数器,并查询LCM是否忙碌,BF表示LCM忙碌
写入数据
将数据写入CGRAM或DDRAM
读取数据
读取CGRAM或DDRAM的数据
3.1.3LCD1602内部显示地址
图3LCD1602内部显示地址
3.2单片机简介
单片机工作原理单片机由运算器、控制器、存储器、输入输出设备构成。
单片机自动完成赋予它的任务的过程,也就是单片机执行程序的过程,即一条条执行的指令的过程,所谓指令就是把要求单片机执行的各种操作用的命令。
图489C52实物图
图589C52引脚图
作为LCD1602的信号输入,单片机起控制显示的整体作用,同时液晶显示屏连接了一个继电器用来调节背光。
4系统详细设计
4.1电路原理图
图6电路仿真图
4.2主要电路设计与计算
此电路图包括一个晶振电路、一个复位电路、LCD1602引脚连接、排阻(由于没有用到P0口,实物焊接的时候并没有接),另外加了一个LED灯用来观测电路是否正常。
4.3程序流程图
图7主函数流程
5系统实现与测试
5.1安装与调试
安装、调试过程包括仿真时的调试和焊接以后的实物调试。
仿真时遇到的问题主要是程序的不足,刚开始延时过长导致滚动显示的效果并不明显,有停顿,后来更改延时解决问题。
图8keil调试截图
安装调试过程刚刚开始的时候焊接错误了一个引脚,找了许久终于发现问题,又由于仿真图的单片机不用接电源,结果我实物连接的时候忘了接电源和地,难怪LED灯不亮.....
5.2系统功能和指标测试
如下图,系统运行正常,达到设计任务与要求。
图9仿真结果
6课程设计总结
6.1遇到的问题及解决办法
程序设计的过程对于我来说最为艰难,比焊接的技术性来得更强。
因为对单片机整体程序设计的不熟悉,我设计程序的时候设计了差不多一天,后来又调试了一会儿,整个花在软件上的时间就不短了,所以整个单片机课程设计我用了总共两天的时间,第二天是焊接和调试。
软件编程仿真出来之后接着开始思考该怎么排版久久不敢下手,后来想清楚每一个元器件的位置我终于鼓起勇气开始焊接。
6.2系统存在的不足和改进设想
作品完成之后,我回顾这两天,发现自己最大的问题是效率。
如果是娴熟的人来做这件事可能用不了半天。
况且虽然题目只要求滚动显示字符,我还是可以加几种变化的方式,例如加两个按键,一个使字符串在第一行滚动显示,另一个可以实现在第二行的显示,或者可以使字符串从第一行右边一直滚动到第二行的左边。
6.3心得体会
经过这次单片机课程设计,我对单片机的整体把握更加具体了,也对实现控制有了更明确的认识,知道从设计程序到利用51单片机实现硬件控制的过程,掌握了对LCD1602字符串显示的知识。
整个实物都是由我自己焊接出来的,焊接的过程中也遇到了问题,大二的时候焊接过收音机,我自认为焊接技术是还可以的,但是骄傲总使人吃苦头:
我居然烫到自己,大夏天的烫伤的地方好久都难以痊愈。
真是觉得自己太过大意,如果下次焊接一定要记住,谦虚是成功的前提,有句话叫一瓶子不响,半瓶子晃荡,说的就是我之前的状态。
所以以后要更加谦虚地向大神们请教和学习,努力让自己更优秀。
参考文献
[1]刘玉英.C语言程序设计——案例驱动教程[M].清华大学出版社:
2011.9.
[2]曹汉房等编著,数字技术教程,北京:
电子工业出版社,1995年11月出版,103-120
[3]何立民.单片机应用技术选编[M].北京航空航天大学出版社:
2011.10.
[4]张齐.单片机原理与应用系统设计——基于C51的Proteus仿真实验与解题指导.电子工业出版社:
2011.2
[5]李亚伯等编著,数字电路与系统,北京:
电子工业出版社,2001年6月出版130-150
[6]冼有佳.显示器集成电路实用手册:
LCD显示器专集[M].电子工业出版社:
2008.3.
[7]郝鸿安编著,常用数字集成电路应用手册,北京:
中国计量出版社,1987年10月出版,153-197
[8]孙毅刚.彭宇.赵光权.单片机原理及接口技术[M].人民邮电出版社.2011.08
[9]唐颖.单片机原理与应用及C51程序设计[M].北京:
北京大学出版社,2011
[10]毅刚.基于Proteus的单片机课程的基础实验与课程设计[M].北京:
人民邮电出版社,2012
[11]张毅刚.单片机原理及接口技术[M].北京:
人民邮电出版社,2011
[12]徐建仁主编,数字集成电路应用与实验,长沙:
国防科技大学出版社,1990年2月出版,66-123
[13]吴戈,等.案例学单片机C语言开发[M].北京:
[14]李双庆等编著,常用半导体器件简明手册,北京:
电子工业出版社,1989年6月出版53-84
[15]Anonymous.Creativeon-chipperipheralscutMCUpowerconsumption[J].Electro-nicsWeekly,2014(2588),pp.16
附录
附录1
元器件清单
序号
名称
大小
数量
电容
30pf
2个
电解电容
10uf
1个
电阻
10K
1K
晶振
/
按键开关
89C52单片机
LCD1602液晶显示屏
导线
若干
洞洞板
附录2
源程序:
#include<
reg51.h>
#include"
lcd1602.h"
unsignedcharcodedate[]="
SCUDESIGN"
;
voiddelay(uintz)//延时函数
{
uintx,y;
for(x=z;
x>
0;
x--)
{
for(y=110;
y>
y--)
{
;
}
}
}
voidwrite_data(uchardate)//写入指令数据到LCD
lcdrw=0;
lcdrs=1;
P3=date;
//delay(5);
lcden=1;
delay(5);
lcden=0;
voidclock_init()
uchari,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(date[k]);
//单个字符显示
delay(100);
voidmain()
init1602();
clock_init();
voidwrite_com(ucharcom)//写入指令数据到LCD
lcdrs=0;
P3=com;
voidinit1602()//1602初始化
write_com(0x3C);
write_com(0x0C);
write_com(0x06);
write_com(0x01);
write_com(0x80);
voidwrite_sfm(ucharadd,uchardate)//向指定地址写入数据
ucharshi,ge;
shi=date/10;
ge=date%10;
write_com(0x80+add);
write_com(0x30+shi);
write_com(0x30+ge);
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 课程设计 报告 基于 LCD 显示 字符串 讲解
![提示](https://static.bingdoc.com/images/bang_tan.gif)