C5单片机电子台历的设计与制作课件_第1页
C5单片机电子台历的设计与制作课件_第2页
C5单片机电子台历的设计与制作课件_第3页
C5单片机电子台历的设计与制作课件_第4页
C5单片机电子台历的设计与制作课件_第5页
已阅读5页,还剩60页未读 继续免费阅读

下载本文档

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

文档简介

电子台历的设计与制作电子台历的设计与制作1第一部分实际应用

电子台历广泛用于单位、会议、电子精品(礼品)屋、赠送朋友、赠送亲人的物品。摆放于办公桌、书桌、或者车上,给人们的生活带来极大的便捷。第一部分实际应用 电子台历广泛用于单位、会议、电子精品2第二部分项目成果展示第二部分项目成果展示3电子台历的设计与制作

1.任务 设计并制作一个电子台历。 2.要求 (1)使用LCD1602显示。 (2)使用DS1302实现获取时间。 (3)支持定时闹铃。电子台历的设计与制作4第三部分基本功能设计系统具体功能如下。时间、日期显示:系统时间采用24小时制。正常情况下,系统显示当前的时间、日期、星期,显示格式为:第一行显示“年-月-日星期”,第二行是“时:分:秒”。闹铃功能:当系统时间与用户设定闹铃时间一致时,闹铃报警。报警时有声、光提示,时间为1分钟。报警过程中,可按任意键取消报警。设置功能:用户可对系统的时间、日期及闹铃时间进行设置。设计时为使用方便,可考虑单独设计设置时间、日期、星期、闹钟设置、数据增、减、信息设置确认、退出等键。第三部分基本功能设计系统具体功能如下。5第三部分基本功能设计 根据以上功能分析,电子台历结构如图所示,由单片机最小系统、按键模块、显示模块、闹铃模块、时钟模块等组成。第三部分基本功能设计 根据以上功能分析,电子台历结构6知识要点:

(1)单片机最小系统;(已学)(2)按键扩展与使用;(已学)(3)蜂鸣器扩展;(已学)★(4)DS1302的使用介绍;★(5)液晶显示器使用介绍;知识要点:7第四部分知识补充一、

DS1302的使用介绍

DS1302是DALLAS(达拉斯)公司推出的涓流充电时钟芯片,内含有一个实时时钟/日历和31字节静态RAM,通过简单的串行接口与单片机进行通信。实时时钟/日历电路提供秒、分、时、日、日期、月、年的信息,还包括每月的天数和闰年自动校正功能。时钟运行可以采用24小时制或带AM/PM12制。DS1302采用三线接口与单片机进行同步串行的方式通信。第四部分知识补充一、DS1302的使用介绍81.DS1302的性能特性实时时钟(RTC)计秒、分、时、日期、月、星期和年,并且带闰年,有效补偿到2100年。31字节、电池备份的、非易失性(NV)RAM来存储数据。串行I/O使得引脚数量最少。宽范围工作电压,2.0~5.5V。在2.0V时,功耗小于300nA。在时钟/RAM中读/写连续地址的方式为脉冲串式。8引脚DIP或可选的8引脚SOIC用于表面安装。简单的3线接口。TTL兼容(Vcc=5V)。图7-3DS1302的引脚图可选工业级温度范围:

40℃~+85℃。1.DS1302的性能特性实时时钟(RTC)计秒、分、时、92.DS1302的引脚介绍X1、X2是32.768KHz晶振的引脚;VCC2是电源供电引脚,VCC1是3V纽扣电池的供电引脚;SCLK为与单片机串行通信的时钟引脚;I/O为与单片机传送数据的引脚;RST是DS1302的复位引脚,低电平有效。2.DS1302的引脚介绍X1、X2是32.768KHz晶103.典型用法uP为单片机,晶振为32.768KHz3.典型用法uP为单片机,晶振为32.768KHz114.DS1302的内部日历/时钟寄存器

DS1302内部日历/时钟寄存器,如图所示。图中左侧为命令寄存器,依次为秒、分、时、日、月、星期、年、控制、涓流充电控制、时钟多字节十个读写命令,右侧为相应的日历/时钟数据寄存器,以BCD码形式存储。4.DS1302的内部日历/时钟寄存器 DS1302内部124.DS1302的内部日历/时钟寄存器

4.DS1302的内部日历/时钟寄存器134.DS1302的内部日历/时钟寄存器

秒命令寄存器:当对秒寄存器进行写操作时,其值为80h;当对秒寄存器进行读操作时,其值为81h。右上角的秒寄存器的秒值是用BCD码表示的,其中“CH”表示时钟停止位,为0振荡器工作允许,为1振荡器停止;“10秒”表示秒十位的BCD码;“秒”代表个位的BCD码。

时钟/日历多字节读写命令:在读取或修改时钟/日历信息时,只需一次选通,就可以连续操作,读命令为BFh,写命令为BEh。其余命令均为单字节操作,每个时间或日历信息修改时需要单独选通。4.DS1302的内部日历/时钟寄存器 秒命令寄存器:当144.DS1302的内部日历/时钟寄存器

小时数据寄存器的第7位为12/24小时标志,值为1时是12小时模式,值为0时是24小时模式,第5位表示AM/PM定义,A/P=1下午模式,A/P=0上午模式。 控制寄存器中WP为写保护位,为0时,寄存器数据写入使能;为l时,寄存器数据写入禁止。 涓流寄存器中TCS表示涓流充电选择,DS表示二极管选择位,RS表示电阻选择位。TCS=1010能使涓流充电,TCS等于其他禁止涓流充电;DS=01选择一个二极管,DS=10选择两个二极管,DS=00或11,充电功能也被禁止;RS=00,未接电阻,RS=01,接2k电阻,RS=10,接4k

电阻,RS=11,接8k

电阻。4.DS1302的内部日历/时钟寄存器 小时数据寄存器的155.DS1302的操作时序

对DS1302进行读/写操作时,必须遵循先写命令再读(写)数据的基本原则。要对DS1302进行读/写命令/数据操作,必须遵循其操作时序。5.DS1302的操作时序 对DS1302进行读/写操作165.DS1302的操作时序

图中I/O的阴影部分信号不稳定。无阴影部分信号稳定,数据有效。写操作时,在SCLK的上升沿必须保证数据有效。在写命令时序中(WRITECOMMANDBYTE),tCC表示从完成复位到写第一位数据建立的时间,要求大于1

S;tDC表示建立有效数据位的时间,要求大于50nS(其实由于时间非常短,可以不考虑,只需在编写程序时先送数据再拉高SCLK即可);tCDH表示有效数据保持的时间;tCL表示低电平保持的时间,必须在这段时间建立好下一位要发送的数据,要求大于250nS;WRITEDATA为写数据,与写命令方法一致,但要注意:RST为低电平时,所有传送数据被终止,I/O引脚为高阻;上电后,RST变为高电平时,SCLK必须保持逻辑低电平。

5.DS1302的操作时序 图中I/O的阴影部分信号不稳175.DS1302的操作时序

函数名:RTInputByte()功能:实时时钟写入一字节说明:往DS1302写入1Byte数据(内部函数)入口参数:d写入的数据返回值:无voidRTInputByte(unsignedchard){unsignedchari;for(i=8;i>0;i--){T_IO=d&0x01;

T_CLK=1;T_CLK=0;d=d>>1;}}5.DS1302的操作时序函数名:RTInputBy185.DS1302的操作时序

5.DS1302的操作时序195.DS1302的操作时序

DS1302的数据读取是先写后读,即先写命令,后读数据。当第8位读命令的SCLK下降沿后延时tCDD(最多200nS)后,第一位数据被DS1302输出,单片机可在此时读取,随后SCLK变为高电平,保持时间为tCCZ,必须大于70nS,以保证DS1302将下一位数据准备好。由于是单字节命令,所以每一字节数据读完后,应拉低70nS(tCDZ)以上时间。5.DS1302的操作时序 DS1302的数据读取是先写205.DS1302的操作时序

函数名:RTOutputByte()功能:实时时钟读取一字节说明:从DS1302读取1Byte数据(内部函数)入口参数:无返回值:ACCunsignedcharRTOutputByte(void){unsignedchari,data;for(i=8;i>0;i--){data=data>>1;if(T_IO)data=|0x80;T_CLK=1;T_CLK=0;}return(data);}5.DS1302的操作时序函数名:RTOutputB215.DS1302的操作时序

为了使用更加灵活,通常调用以上的写程序和读时程序,组合成一个带写地址和读/写数据的程序,具体如下。voidWrite1302(unsignedcharucAddr,unsignedcharucDa){T_RST=0;T_CLK=0;T_RST=1;RTInputByte(ucAddr);//地址,命令clk1->0RTInputByte(ucDa);//写1Byte数据

T_CLK=1;T_RST=0;}5.DS1302的操作时序为了使用更加灵活,通常调用以上225.DS1302的操作时序

unsignedcharRead1302(unsignedcharucAddr){unsignedcharucData;T_RST=0;T_CLK=0;T_RST=1;RTInputByte(ucAddr); //地址,命令ucData=RTOutputByte(); //读1Byte数据T_CLK=1;T_RST=0;return(ucData);}5.DS1302的操作时序unsignedcharR235.DS1302的操作时序

DS1302时钟/日历芯片在使用的过程中,往往需要初始化时钟/日历信息,结合上两段程序,具体程序编写如下。/********************************************************************函数名:Set1302()功能:设置初始时间说明:先写地址,后读命令/数据(寄存器多字节方式)调用:Write1302()入口参数:pClock:设置时钟数据地址格式为:秒分时日月星期年7Byte(BCD码)1B1B1B1B1B1B1B返回值:无********************************************************************/5.DS1302的操作时序 DS1302时钟/日历芯片在245.DS1302的操作时序

voidSet1302(unsignedchar*pClock){unsignedchari;unsignedcharucAddr=0x80;//初始化首地址Write1302(0x8e,0x00);//控制命令,WP=0,写操作for(i=7;i>0;i--){Write1302(ucAddr,*pClock);//秒分时日月星期年pClock++;ucAddr+=2;}Write1302(0x8e,0x80);//控制命令,WP=1,写保护}5.DS1302的操作时序voidSet1302(un25二、液晶显示器的使用 液晶显示器的显像原理,是将液晶置于两片导电玻璃之间,靠两个电极间电场的驱动,引起液晶分子扭曲向列的电场效应,以控制光源透射或遮蔽功能,在电源关开之间产生明暗而将影像显示出来。 液晶显示器件中的每个显示像素都可以被电场控制,不同的显示像素按照驱动信号的“指挥”在显示屏上合成出各种字符、数字及图形。液晶显示驱动器的功能就是建立这样的电场。二、液晶显示器的使用 液晶显示器的显像原理,是将液晶置于两片261.液晶显示器的说明 液晶显示器件是一种高新技术的基础元器件,虽然其应用已经很广泛了,但对很多人来说,使用、装配时仍感到困难。特别是点阵型液晶显示器件,使用者感到更是无从下手,特殊的连接方式和所需的专用设备也非人人了解和具备,所以一般液晶显示器件是将液晶显示器件与控制、驱动集成电路装在一起,形成一个功能部件。市场上供应的液晶显示模块主要有以下几种。1.液晶显示器的说明 液晶显示器件是一种高新技术的基础元器272.液晶显示器分类(1)数显液晶模块 数显液晶是一种由段型液晶显示器件与专用的集成电路组装成一体的功能部件,只能显示数字和一些标识符号。(2)液晶点阵字符模块 液晶点阵字符是由点阵字符液晶显示器件和专用的行、列驱动器、控制器,以及必要的连接件、结构件装配而成的,可以显示数字和西文字符。(3)液晶点阵图形模块 液晶点阵图形模块也是点阵模块的一种,其特点是点阵像素连续排列,行和列在排布中均没有空格。因此可以显示连续、完整的图形。由于它也是有X-Y矩阵像素构成的,所以除显示图形外,也可以显示字符。下面以字符型液晶显示模块为例介绍其原理与应用。2.液晶显示器分类(1)数显液晶模块283.字符型液晶显示模块

字符型液晶显示模块是一类专用于显示字母、数字和符号等的点阵型液晶显示模块,接口格式统一、比较通用,无论显示屏的尺寸如何,它的操作指令及其形成的模块接口信号定义都是兼容的。这类液晶显示器的型号通常为XXX1602、XXX1604、XXX2002和XXX2004等。对于XXX1602,其中XXX为商标名称;16代表液晶每行可显示16个字符;02表示共有两行,即这种显示器可同时显示32个字符。

3.字符型液晶显示模块 字符型液晶显示模块是一类专用于显示29RT-1602C采用标准的16脚接口,各引脚情况如下:第1脚:VSS,电源地第2脚:VDD,+5V电源第3脚:V0,液晶显示偏压信号,一般加电位器调整第4脚:RS,数据/命令选择端,高电平时选择数据寄存器、低电平时选择指令寄存器。3.1.1字符型液晶显示模块RT-1602C的外观与引脚3.11602液晶模块RT-1602C采用标准的16脚接口,各引脚情况如下:第1脚30第5脚:R/W,读/写选择端,高电平时进行读操作,低电平时进行写操作。当RS和R/W共同为低电平时可以写入指令或者显示地址,当RS为低电平R/W为高电平时可以读忙信号,当RS为高电平R/W为低电平时可以写入数据。第6脚:E,端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。第7~14脚:D0~D7,为8位双向数据线。第15脚:BLA,背光源正极第16脚:BLK,背光源负极第5脚:R/W,读/写选择端,高电平时进行读操作,低电平时进31

控制器采用HD44780,驱动器采用HD44100。HD44780是集控制器,驱动器于一体,专用于字符显示控制驱动集成电路。HD44100是作扩展显示字符位的。HD44780是字符型液晶显示控制器的代表电路。HD44780集成电路的特点:1)可选择5×7或5×10点字符。2)HD44780不仅作为控制器而且还具有驱动40×16点阵液晶像素的能力,并且HD44780的驱动能力可通过外接驱动器扩展360列驱动。控制器采用HD44780,驱动器采用HD44323.1.2内部部件

1)显示缓冲器DDRAM与显示位置一一对应3.1.2内部部件

1)显示缓冲器DDRAM与显示位置一一对332)用户自定义CGRAM可写入用户定义的8(4)个汉字3)内部CGRAM

存储160个字符,采用ASCII编码,供用户使用2)用户自定义CGRAM可写入用户定义的8(4)个汉字34C5单片机电子台历的设计与制作课件353.1.3指令格式与指令功能LCD控制器HD44780内有多个寄存器,通过RS和R/W引脚共同决定选择哪一个寄存器(操作方式),选择情况如表RSR/W寄存器及操作00写入指令01读出忙标志和地址计数器10写入数据11读出数据3.1.3指令格式与指令功能LCD控制器HD44780内361)清屏指令格式:01RSR/WD7D6D5D4D3D2D1D00000000001功能:清除屏幕,将显示缓冲区DDRAM的内容全部写入空格(ASCII20H)显示空白。光标复位,回到显示器的左上角。地址计数器AC清零。1)清屏RSR/WD7D6D5D4D3D2D1D000000372)光标复位命令(归位)

格式:02功能:光标回到原点RSR/WD7D6D5D4D3D2D1D000000000102)光标复位命令(归位)

格式:02RSR/WD7D6D5D38功能:设定当写入一个字节后,光标的移动方向以及后面的内容是否移动。I/D=l:数据读写操作后,AC自动增1;(光标移动)I/D=0:数据读写操作后,AC自动减l;S=1:当数据写入DDRAM,显示将全部左移(I/D=1)或全部右移(I/D=0),此时光标未动,仅仅是显示内容移动,但从DDRAM中读取数据时,显示不移动;S=0:显示不移动,光标移右(I/D=1)或左移(I/D=0)。3)输入方式设置格式:

RSR/WD7D6D5D4D3D2D1D000000001I/DS功能:设定当写入一个字节后,光标的移动方向以及后面的内容是否394)显示开关控制命令

功能:D控制显示的开关:当D=1时显示,D=0时不显示。C控制光标开关:当C=1时光标显示,C=0时光标不显示。B控制字符是否闪烁:当B=1时字符闪烁,B=0时字符不闪烁。RSR/WD7D6D5D4D3D2D1D00000001DCB4)显示开关控制命令

功能:RSR/WD7D6D5D4D3D405)光标画面移位置命令格式:RSR/WD7D6D5D4D3D2D1D0000001S/CR/L**功能:移动光标或整个显示字幕移位。S/C=0、R/L=0,光标左移一个字符位,AC自动减1;S/C=0、R/L=1,光标右移一个字符位,AC自动加1;S/C=1、R/L=0,光标和画面一起左移一个字符位;S/C=1、R/L=1,光标和画面一起右移一个字符位。5)光标画面移位置命令RSR/WD7D6D5D4D3D2D1416)功能设置命令功能:设置数据位数,当DL=1时数据位为8位,DL=0时数据位为4位。设置显示行数,当N=1时双行显示,N=0时单行显示。设置字形大小,当F=1时5×10点阵,F=0时为5×7点阵。RSR/WD7D6D5D4D3D2D1D000001DLNF**6)功能设置命令功能:RSR/WD7D6D5D4D3D2D1427)设置字库CGRAM地址命令RSR/WD7D6D5D4D3D2D1D00001CGRAM的地址功能:设置用户自定义CGRAM的地址,对用户自定义CGRAM访问时,要先设定CGRAM的地址,地址范畴0~63。7)设置字库CGRAM地址命令RSR/WD7D6D5D4D3438)显示缓冲区DDRAM地址设置命令功能:设置当前显示缓冲区DDRAM的地址,对DDRAM访问时,要先设定DDRAM的地址,地址范畴0~127。RSR/WD7D6D5D4D3D2D1D0001DDRAM的地址8)显示缓冲区DDRAM地址设置命令功能:设置当前显示缓冲区449)读忙标志及地址计数器AC命令RSR/WD7D6D5D4D3D2D1D001BFAC的值功能:读忙标志及地址计数器AC,当BF=1时则表示忙,这时不能接收命令和数据;BF=0时表示不忙。低7位为读出的AC的地址,值为0-127。9)读忙标志及地址计数器AC命令RSR/WD7D6D5D4D45C5单片机电子台历的设计与制作课件4610)写DDRAM或CGRAM命令功能:向DDRAM或CGRAM当前位置中写入数据。对DDRAM或CGRAM写入数据之前须设定DDRAM或CGRAM的地址。RSR/WD7D6D5D4D3D2D1D010写入的数据10)写DDRAM或CGRAM命令功能:向DDRAM或CGR4711)读DDRAM或CGRAM命令格式:RSR/WD7D6D5D4D3D2D1D011读出的数据功能:从DDRAM或CGRAM当前位置中读邮数据。当DDRAM或CGRAM读出数据时,先须设定DDRAM或CGRAM的地址。11)读DDRAM或CGRAM命令RSR/WD7D6D5D4483.1.4LCD显示器的初始化LCD使用之前须对它进行初始化,初始化可通过复位完成,也可在复位后完成,初始化过程如下:1)清屏。2)功能设置。3)开/关显示设置。4)输入方式设置。3.1.4LCD显示器的初始化LCD使用之前须对它进行初493.1.4LCD显示器的初始化具体初始化过程如下:延时15ms写指令38H(不检测忙信号)延时5ms写指令38H(不检测忙信号)延时5ms写指令38H(不检测忙信号)以后每次写指令、读/写数据操作之前均需检测忙信号写指令38H:显示模式设置写指令08H:显示关闭写指令01H:显示清屏写指令08H:显示光标移动设置写指令0CH:显示开及光标设置3.1.4LCD显示器的初始化具体初始化过程如下:503.1.5单片机与1602液晶显示模块接口电路设计1)直接访问方式

直接访问方式是单片机把字符型液晶显示模块当做存储器或I/O设备直接挂接在单片机的总线上。该模式下,控制信号由单片机的读操作信号、写操作信号和地址信号组成。直接访问的接口电路,如图所示。

字符型液晶显示模块的总线与8031的数据总线相连;E信号由和信号逻辑与非后产生,由高位地址组成的片选信号做选通控制,非选通状态下E为逻辑0;RS由低位地址线A0产生;R/W由地址线A1提供。由此可确定液晶显示模块的读/写操作地址。3.1.5单片机与1602液晶显示模块接口电路设计1)直接51C5单片机电子台历的设计与制作课件523.1.6单片机与1602液晶显示模块接口电路设计2)间接控制方式

间接控制方式是单片机把字符型液晶显示模块作为终端与单片机的并行口连接,单片机通过对该并行接口的操作间接地实现对显示模块的控制。如图所示间接控制方式下的接口电路。图中使用了P1和P3口,P1口直接和液晶显示模块总线相连,P3则分别与液晶显示模块的RS、R/W和E控制线相连,用软件实现液晶显示模块的时序控制。

3.1.6单片机与1602液晶显示模块接口电路设计2)间接53C5单片机电子台历的设计与制作课件543.1.61602液晶显示模块的时序

1602液晶读/写操作是由使能信号E完成的,不操作时E为低电平,操作时产生一个正脉冲。读操作时,E信号为高电平,控制器将所需数据送入数据总线上,供单片机读取;在写操作时,E信号的下降沿处将数据总线上的数据写入控制器接口部的寄存器内。读/写操作的识别由R/W信号决定,R/W=1为读操作,R/W=0为写操作。RS是数据/命令代码选择信号,RS=1选择数据寄存器,RS=0选择命令寄存器或标志位。3.1.61602液晶显示模块的时序 1602液晶读/写55C5单片机电子台历的设计与制作课件561)1602读unsignedcharReadDataLCM(void){LCM_RS=1;LCM_RW=1;LCM_E=0;LCM_E=0;LCM_E=1;return(LCM_Data);}1)1602读unsignedcharReadDataL57C5单片机电子台历的设计与制作课件582)1602写数据voidWriteDataLCM(unsignedcharWDLCM){ReadStatusLCM(); //检测忙LCM_

温馨提示

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

评论

0/150

提交评论