中南大学《自动化工程训练》设计题目LCD时钟程序设计指导老师设计者专业班级自动化级班号设计日期2016年9月目录一、设计任务要求分析................................................11.1设计总体方案及其方案论证..............................................1二、组成电路介绍.................................................12.1复位电路:............................................................12.2晶振电路:............................................................12.3键盘控制系统设计:....................................................22.4闹钟部分:............................................................32.5显示电路设计..........................................................32.5.1LCD1602简介....................................................3三、软件设计.......................................................43.1程序主流程图..........................................................53.2初始化流程图..........................................................53.3延时中断子程序........................................................63.4时间设置子程序........................................................7四、系统测试........................................................74.1测试方法..............................................................74.2测试结果..............................................................74.3结果分析..............................................................8五、源程序..........................................................8一、设计任务要求分析本设计要实现的功能是:实时显示当前的时钟,并且可以设定闹铃,以蜂鸣器鸣响5秒的方式作为闹铃。1.1设计总体方案及其方案论证按照系统的设计功能所要求的,液晶显示电子时钟原理图如图所示。液晶显示电子时钟原理图本系统以AT89C51单片机为核心,该单片机可把数据进行处理,从而把数据传输到显示模块LCD1602液晶显示器,实现时间及日期的显示。以LCD液晶显示器为显示模块,把单片机传来的数据显示出来,并且显示多样化,还可以对时间和日期进行设置,主要靠按键来实现。二、组成电路介绍2.1复位电路:复位电路复位电路有两种方式:上电复位和按钮复位,我们主要用按钮复位方式。如图所示:2.2晶振电路:晶振电路如图所示:1晶振模块原理图选取原则:电容选取22pF,晶振为12MHz。1)电源:AT89S51单片机的供电电源是5V的直流电。2)EA非/Vpp脚:我们没有用外部扩展ROM,因此EA非/Vpp为高电平,即接+5V电源。2.3键盘控制系统设计:按键需要4个,分别实现为时间调整、时间的加、时间的减、闹钟调整四个功能。用单片机的4个I/O口接收控制信号,其电路如图所示:按键调时电路通过控制键来控制所要调节的是时、分、还是秒。在控制键按下后LCD中会在相应的位置出现光标,这时在通过加数键或减数键来控制时分秒的加或减。在调闹钟键按下后LCD中也会在相应的位置出现光标,这时也通过加数键或减数键来设置闹钟。2.4闹钟部分:闹钟部分主要由蜂鸣器,三极管,电阻组成。其电路图如图所示:2闹钟电路当单片机的P1^5接口输出为高电平时,蜂鸣器响,当输出为低电平时,蜂鸣器停止。2.5显示电路设计2.5.1LCD1602简介LCD1602液晶也叫1602字符型液晶,它是一种专门用来显示字母、数字、符号等的点阵型液晶模块,它有若干个5X7或者5X11等点阵字符位组成,每个点阵字符位都可以显示一个字符。每位之间有一个点距的间隔,每行之间也有也有间隔,起到了字符间距和行间距的作用,正因为如此,所以他不能显示图形(用自定义CGRAM,显示效果也不好)。1602LCD是指显示的内容为16X2,即可以显示两行,每行16个字符液晶模块(显示字符和数字)。目前市面上字符液晶绝大多数是基于HD44780液晶芯片的,控制原理是完全相同的,因此基于HD44780写的控制程序可以很方便地应用于市面上大部分的字符型液晶。...