基于单片机的多功能液晶显示数字时2.docx
- 文档编号:9871930
- 上传时间:2023-02-07
- 格式:DOCX
- 页数:107
- 大小:1.35MB
基于单片机的多功能液晶显示数字时2.docx
《基于单片机的多功能液晶显示数字时2.docx》由会员分享,可在线阅读,更多相关《基于单片机的多功能液晶显示数字时2.docx(107页珍藏版)》请在冰豆网上搜索。
基于单片机的多功能液晶显示数字时2
基于单片机的多功能液晶显示
数字时钟设计
摘要
计算机的产生加快了人类改造世界的步伐,但是它毕竟体积大。
单片机在这种情况下诞生了。
截止今日,单片机应用技术飞速发展,纵观我们现在生活的各个领域,从导弹的导航装置,到飞机上各种仪表的控制,从计算机的网络通讯与数据传输,到工业自动化过程的实时控制和数据处理,以及我们生活中广泛使用的各种智能IC卡、电子宠物等,这些都离不开单片机。
单片计算机即单片微型计算机。
是集CPU,RAM,ROM,定时,计数和多种接口于一体的微控制器。
它体积小,成本低,功能强,广泛应用于智能产业和工业自动化上。
而51系列单片机是各单片机中最为典型和最有代表性的一种。
这次毕业设计通过对它的学习,应用,从而达到学习、设计、开发软、硬的能力。
本文通过对一个基于单片机的能实现定时,秒表,闹钟等功能的多功能电子时钟的设计学习,详细介绍了单片机应用中的数据转换显示,液晶显示原理,键盘扫描原理。
从而达到学习、了解单片机相关指令在各方面的应用。
系统由AT89C51、温度检测芯片、时钟芯片、液晶显示器等部分构成,能实现时钟日历显示的功能,能进行时、分、秒的显示和实时温度显示。
也具有时钟、日历的校准,定时时间的设定和闹铃等功能。
文章后附有电路原理图、PCB板图和程序清单,以供读者参考。
因水平有限,难免有疏落不足之处,敬请老师和同学能给与批评指正。
关键字:
AT89C51定时秒表闹钟
DesignsofLCDdigitalclockbasedonMCS-51
Abstract
Computershaveacceleratedthetransformationoftheworld'shumanpace,butitisafterallbulky.SCMinthiscasewasborn.Asoftoday,SCMapplicationrapiddevelopmentoftechnology,lookingaroundusnowinallspheresoflife,frommissiles,navigationequipment,tothevariousinstrumentsontheaircraftcontrolfromacomputernetworkcommunicationsanddatatransmission,industrialautomationtoreal-timeprocesscontrolanddataprocessing,andourlivesextensiveuseofthesmartcard,electronicpets,whichisinseparablefromthemicrocontroller.
Monolithicsingle-chipmicro-computerorcomputer.ThatisthesetofCPU,RAM,ROM,thetiming,numberandvarietyofinterfaceintegratedmicrocontrollers.Itssmallsize,lowcost,highperformance,whicharewidelyusedinsmartindustries,andindustrialautomation.And51SeriesSCMSCMisthemosttypicalandthemostrepresentativeone.ThegraduationdesignThroughthestudy,andtherebyachievethestudy,design,developmenthardwareandsoftwarecapabilities.
Basedonamicrocontrollerbasedonthewilltoachievetiming,stopwatch,alarmclocks,andotherfunctionsofamulti-functionalelectronicclockdesignstudy,indetail,thecomputerapplicationofdataconversion,PrincipleLCD,keyboardscanningprinciple.TherebyachievestudyingandunderstandingtherelevantdirectivesSCMinallaspectsoftheapplication.ByAT89C51system,temperaturedetectionchip,theclockchips,liquidcrystaldisplaysofcomponents,toachieveclockcalendardisplayfunctioncanbecarriedout,hourssecondsoftheshowandreal-timetemperaturedisplay.Alsocalculatedwiththecalendarandclock,calendarcalibration,regularhoursandsetthealarmfunction.Thearticleattachedcircuitdiagram,thePCBplansandprocedureschecklistforthereferenceofourreaders.Duetolimited,anditwillinevitablybelighterinadequate,locationswillgiveteachersandstudentscorrectionandcriticism.
Keywords:
AT89C51;timing;stopwatch;alarmclocks
目录
1引言1
2总体方案介绍2
2.1系统设计思想2
2.2系统框架图2
3硬件仿真电路设计3
3.1Proteus3
3.1.1Proteus简介3
3.1.2Proteus的基本操作3
3.2AT89C51的电路设计5
3.2.1AT89C51简介5
3.2.2AT89C51的时钟电路设计7
3.2.3AT89C51的复位电路设计8
3.3AT89C51液晶显示模块的连接9
3.3.1液晶显示器LCD1602简介9
3.3.2AT89C51与LCD1602的连接13
3.4AT89C51与时钟芯片的连接14
3.4.1时钟芯片DS1302简介14
3.4.2AT89C51与时钟芯片DS1302的连接16
3.5AT89C51与温度芯片的连接17
3.5.1温度芯片DS18B20简介17
3.5.2AT89C51与温度芯片DS18B20的连接17
3.6AT89C51与键盘的连接18
4系统软件设计20
4.1Keil简介20
4.2程序设计20
4.2.1主程序模块设计20
4.2.2液晶显示器LCD1602模块22
4.2.3时钟芯片DS1302操作模块23
4.2.4温度芯片DS18B20操作模块25
4.2.5键盘操作模块26
5Proteus与Keil连接调试28
6硬件实现31
6.1Protel简介31
6.2Protel的硬件电路设计31
6.2.1创建项目文件31
6.2.2原理图设计32
6.2.3报表生成33
6.2.4创建PCB文件33
6.2.5PCB布线35
6.2.63D效果图36
7结论37
谢辞38
参考文献39
附录40
外文资料77
1引言
单片机是指一个集成在一块芯片上的完整计算机系统。
尽管他的大部分功能集成在一块小芯片上,但是它具有一个完整计算机所需要的大部分部件:
CPU、内存、内部和外部总线系统,目前大部分还会具有外存。
同时集成诸如通讯接口、定时器,实时时钟等外围设备。
而现在最强大的单片机系统甚至可以将声音、图像、网络、复杂的输入输出系统集成在一块芯片上。
目前单片机已经渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。
导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录像机、摄像机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。
更不用说自动控制领域的机器人、智能仪表、医疗器械了。
因此,单片机的学习、开发与应用将造就一批计算机应用与智能化控制的科学家、工程师。
本次设计的多功能数字时钟,以AT89C51芯片为核心,辅以必要的电路,通过液晶显示器能够准确显示数字时钟。
它也是现代社会应用广泛的计时工具,在航天、电子等科研单位,工厂、医院、学校等企事业单位,各种体育赛事及至我们每个人的日常生活中都发挥着重要的作用。
该系统同时具有硬件设计简单、工作稳定性高、价格低廉等优点。
2总体方案介绍
整个电子时钟系统电路可分为五大部分:
中央处理单元(CPU)、电源电路部分、显示部分、键盘输入部分、温度采集部分。
2.1系统设计思想
本系统由控制时钟芯片DS1302、温度芯片DS18B20、AT89C51单片机和字符点阵型LCD1602液晶显示器等器件构成。
用DS1302产生时钟信号,用温度芯片DS18B20产生温度信号,再由单片机负责接收并且对其进行控制,然后通过编写程序实现具体的功能,如年、月、日、星期、时、分、秒及温度的显示,以及时间的校准、闹钟的设置等。
再通过编写液晶器件的驱动程序,使其信息显示在LCD1602液晶显示器上。
最后,将设计的硬件电路在Proteus仿真软件中进行仿真。
2.2系统框架图
根据上述的系统设计总思想设计出如下总体框架图(图2-1):
图2-1系统总体框架图
3硬件仿真电路设计
在前面的章节给出了系统设计的粗略轮廓,在本章节中,将画出详细的电路仿真原理图,并按照要求仔细地在Proteus中完成硬件的仿真电路。
总体上来说,本系统主要由显示电路,功能控制电路、传感器电路三部分组成。
吸收了硬件软件化的思想,大部分功能通过软件来实现,使电路简单明了,系统稳定性大大提高。
本系统不仅成功的实现了电子时钟的基本功能,而且还可以通过对程序的改变来实现其它方面的开发及学习。
3.1Proteus
3.1.1Proteus简介
ProteusISIS是英国Labcenter公司开发的电路分析与实物仿真软件。
它运行于Windows操作系统上,可以仿真、分析(SPICE)各种模拟器件和集成电路,该软件的特点是:
(1)实现了单片机仿真和SPICE电路仿真相结合。
具有模拟电路仿真、数字电路仿真、单片机及其外围电路组成的系统的仿真、RS232动态仿真、I2C调试器、SPI调试器、键盘和LCD系统仿真的功能;有各种虚拟仪器,如示波器、逻辑分析仪、信号发生器等。
(2)支持主流单片机系统的仿真。
目前支持的单片机类型有:
68000系列、8051系列、AVR系列、PIC12系列、PIC16系列、PIC18系列、Z80系列、HC11系列以及各种外围芯片。
(3)提供软件调试功能。
在硬件仿真系统中具有全速、单步、设置断点等调试功能,同时可以观察各个变量、寄存器等的当前状态,因此在该软件仿真系统中,也必须具有这些功能;同时支持第三方的软件编译和调试环境,如KeilC51uVision3等软件。
(4)具有强大的原理图绘制功能。
总之,该软件是一款集单片机和SPICE分析于一身的仿真软件,功能极其强大。
3.1.2Proteus的基本操作
双击桌面上的ISIS7Professional图标或者单击屏幕左下方的“开始”→“程序”→“Proteus7Professional”→“ISIS7Professional”,出现如图3-1所示屏幕,进入ProteusISIS集成环境。
图3-1启动时的屏幕
ProteusISIS的工作界面是一种标准的Windows界面,如图3-2所示。
包括:
标题栏、主菜单、标准工具栏、绘图工具栏、状态栏、对象选择按钮、预览对象方位控制按钮、仿真进程控制按钮、预览窗口、对象选择器窗口、图形编辑窗口。
图3-2ProteusISIS的工作界面
进入ProteusISIS的工作界面后,选择“对象选择器窗口”中的“对象选择按钮”,选择所需的元器件,然后放置到“图形编辑窗口”中,以些类推将原理图中的元器件放置完毕,再用相应的线联接起来,绘图完毕后点击保存即可。
如果想对本系统进行仿真时,还要将编译过的源程序载下AT89C51中,操作过程为:
在AT89C51芯片上单击右键选择“EditComponent”如图3-3,在“ProgramFile”框中选择编译好的源程序文件,选择“OK”键关闭“EditComponent”对话框。
最后点击仿真进程控制按钮中的“开始”按钮即可进行仿真操作。
图3-3EditComponent对话框
3.2AT89C51的电路设计
3.2.1AT89C51简介
AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—FlashProgrammableandErasableReadOnlyMemory)的低电压,高性能CMOS8位微处理器,俗称单片机。
AT89C2051是一种带2K字节闪烁可编程可擦除只读存储器的单片机。
单片机的可擦除只读存储器可以反复擦除100次。
该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。
由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C2051是它的一种精简版本。
AT89C51单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。
外形及引脚排列如图3-4所示:
图3-4AT89C51
管脚说明:
VCC——供电电压。
GND——接地。
P0口——8位漏级开路双向I/O口,每脚可吸收8TTL门电流。
当P1口的管脚第一次写1时,被定义为高阻输入。
P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。
在FIASH编程时,P0口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。
P1口——带内部上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。
P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。
在FLASH编程和校验时,P1口作为第八位地址接收。
P2口——带内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。
并因此作为输入时,P2口的管脚被外部拉低,将输出电流。
这是由于内部上拉的缘故。
P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。
在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。
P2口在FLASH编程和校验时接收高八位地址信号和控制信号。
P3口——带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。
当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。
作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。
在编程/校验时,P3口可接收某些控制信号。
具体的P3口功能,如表3-1所示。
表3-1P3口的特殊功能
引脚替代功能说明
P3.0RXD串行数据接收
P3.1TXD串行数据发送
P3.2INT0外部中断0申请
P3.3INT1外部中断1申请
P3.4T0定时器0外部事件计数输入
P3.5T1定时器1外部事件计数输入
P3.6WR外部RAM写选通
P3.7RD外部RAM读选通
RST——复位输入。
当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。
ALE/PROG——当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。
在FLASH编程期间,此引脚用于输入编程脉冲。
在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。
因此它可用作对外部输出的脉冲或用于定时目的。
然而要注意的是:
每当用作外部数据存储器时,将跳过一个ALE脉冲。
如想禁止ALE的输出可在SFR8EH地址上置0。
此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。
另外,该引脚被略微拉高。
如果微处理器在外部执行状态ALE禁止,置位无效。
/PSEN——外部程序存储器的选通信号。
在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。
但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。
/EA/VPP——当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。
注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。
在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。
XTAL1——反向振荡放大器的输入及内部时钟工作电路的输入。
XTAL2——来自反向振荡器的输出。
3.2.2AT89C51的时钟电路设计
时钟电路是产生CPU校准时序,是单片机的控制核心。
AT89C51的时钟信号可通过内部振荡方式和外部振荡方式两种方式得到。
本次设计使用的是片内振荡方式,通过外接12MHz的晶振来实现时钟电路的时序控制。
在使用片内振荡器时,XTAL1和XTAL2分别为反向放大器的输入端和输出端。
外接晶体以及电容C1和C2构成并联谐振电路,接在放大器的反馈回路中。
当使用外部时钟驱动时,XTAL2引脚应悬空,而由XTAL1引脚上的信号驱动,或者XTAL1引脚应悬空,而由XTAL2引脚上的信号驱动。
外部振荡器再通过一个2分频的触发器来形成内部时钟所需要的信号。
在电容器C1、C2选择时方面,一般选择其值为5~30pF。
本系统中所用的电容值为22pF,具体的电路接法如图3-5所示。
图3-5晶振电路图
3.2.3AT89C51的复位电路设计
根据应用的要求,复位操作通常由上电复位和开关复位2种基本形式。
本系统使用的复位电路是在基本复位电路的基础上所改进的一种混合方法,使其两种形式巧妙地糅合在一起,即做到了上电复位,又可以在发生预料之外的问题时,随时进行开关复位单片机。
具体的电路连接接法如图3-6所示。
图3-6复位电路
单片机复位后的状态:
单片机的复位操作使单片机进入初始化过程,其中包括使程序计数器PC=0000H,P0~P3=FFH,SP=07H,其他寄存器处于零。
这表明程序从0000H地址单元开始执行。
单片机复位后不改变片内RAM区中的内容,21个特殊功能寄存器复位后的状态如表3-2所示。
表3-28051单片机复位后特殊功能寄存器的初始状态[1]
特殊功能寄存器
初始状态
特殊功能寄存器
初始状态
A
00H
TMOD
00H
B
00H
TCON
00H
表3-2续8051单片机复位后特殊功能寄存器的初始状态[1]
特殊功能寄存器
初始状态
特殊功能寄存器
初始状态
PSW
00H
TH0
00H
SP
07H
TL0
00H
DPL
00H
TH1
00H
DPH
00H
TL1
00H
P0~P3
FFH
SBUF
不定
IP
***00000B
SCON
00H
IE
0**00000B
PCON
0*******B
注:
表中的符号*为随机状态
需要指出的是,记住一些特殊功能寄存器复位后的状态,对于熟悉单片机操作,减短应用程序中的初始化部分是十分必要的。
3.3AT89C51液晶显示模块的连接
3.3.1液晶显示器LCD1602简介
液晶显示器以其微功耗、体积小、显示内容丰富、超薄轻巧的诸多优点,在袖珍式仪表和低功耗应用系统中得到越来越广泛的应用。
本系统使用是是LCD1602液晶显示器,它可以显示两行,每行16个字符,采用单+5V电源电,外围电路配置简单,价格便宜,具有很高的性价比。
LCD1602外观如图3-7所示。
图3-7LCD1602外观
LCD1602采用标准的14脚接口,其中VSS为地电源,VDD接5V正电源,VEE为液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度。
RS为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。
RW为读写信号线,高电平时进行读操作,低电平时进行写操作。
当RS和RW共同为低电平时可以写入指令或者显示地址,当RS为低电平RW为高电平时可以读忙信号,当RS为高电平RW为低电平时可以写入数据。
E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。
D0~D7为8位双向数据线。
LCD1602液晶模块内部的控制器共有11条控制指令,具体的命令见表3-3所示。
表3-3LCD1602控制指令
指令
RS
R/W
D7
D6
D5
D4
D3
D2
D1
D0
1
清屏
0
0
0
0
0
0
0
0
0
1
2
光标复位
0
0
0
0
0
0
0
0
1
*
3
光标和显示模式设置
0
0
0
0
0
0
0
1
I/D
S
4
显示开关控制
0
0
0
0
0
0
1
D
C
B
5
光标或字符移位
0
0
0
0
0
1
S/C
R/L
*
*
6
置功能
0
0
0
0
1
DL
N
F
*
*
7
置字符发生存贮器地址
0
0
0
1
字符发生存贮器地址(AGG)
8
置数据存贮器地址
0
0
1
显示数据存贮器地址(ADD)
9
读忙标志或地址
0
1
BF
计数器地址(AC)
10
写入CGRAM/DDRAM
1
0
要写的数
11
读CGRAM/DDRAM数
1
1
读出的数据
1602液晶模块的读写操作、屏幕和光标的操作都是通过指令编程来实现的。
(1)清屏指令
功能:
1)清除液晶显示器,即将DDRAM的内容全部填入“空白”的ASCII码20H;
2)光标归位,即将光标撤回液晶显示屏的左上方;
3)将地址计数器(AC)的值设为0;
2.光标复位指令
功能:
1)把光标撤回
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 单片机 多功能 液晶显示 数字
![提示](https://static.bdocx.com/images/bang_tan.gif)