企业网站的类型包括,做地产设计的公司,seo是什么意思中文翻译,WordPress中设置域名的数据库在哪摘要 随着社会、科技的发展#xff0c;人类得知时间#xff0c;从观太阳、摆钟到现在电子钟#xff0c;不断研究、创新。为了在观测时间#xff0c;能够了解与人类密切相关的信息#xff0c;比如星期、日期等#xff0c;电子时钟诞生了#xff0c;它集时间、日期、星期等…摘要 随着社会、科技的发展人类得知时间从观太阳、摆钟到现在电子钟不断研究、创新。为了在观测时间能够了解与人类密切相关的信息比如星期、日期等电子时钟诞生了它集时间、日期、星期等功能于一身具有读取方便、显示直观、功能多样、电路简洁等诸多优点符合电子仪器仪表的发展趋势具有广阔的市场前景。 该电子时钟主要采用STC89C52RC单片机作为主控核心由DS1302时钟芯片提供时钟、LED动态扫描显示屏显示。STC89C52RC单片机是由Atmel公司推出的功耗小电压可选用46V电压供电DS1302时钟芯片是美国DALLAS公司推出的具有涓细电流充电功能的低功耗实时时钟芯片它可以对年、月、日、星期、时、分、秒进行计时还具有闰年补偿等多种功能而且DS1302的使用寿命长误差小数字显示是采用的LED显示屏来显示可以同时显示年、月、日、星期、时、分、秒和温度等信息。此外该电子时钟还具有时间校准等功能。 关键词时钟电路 时钟芯片DS1302LED动态扫描 单片机STC89C52RC
绪论 随着人们生活水平的提高和生活节奏的加快对时间的要求越来越高精准数字计时的消费需求也是越来越多。 二十一世纪的今天最具代表性的计时产品就是电子时钟它是近代世界钟表业界的第三次革命。第一次是摆和摆轮游丝的发明相对稳定的机械振荡频率源使钟表的走时差从分级缩小到秒级代表性的产品就是带有摆或摆轮游丝的机械钟或表。第二次革命是石英晶体振荡器的应用发明了走时精度更高的石英电子钟表使钟表的走时月差从分级缩小到秒级。第三次革命就是单片机数码计时技术的应用使计时产品的走时日差从分级缩小到1/600万秒从原有传统指针计时的方式发展为人们日常更为熟悉的夜光数字显示方式直观明了并增加了全自动日期、星期的显示功能它更符合消费者的生活需求因此电子时钟的出现带来了钟表计时业界跨跃性的进步…… 我国生产的电子时钟有很多种总体上来说以研究多功能电子时钟为主使万年历除了原有的显示时间日期等基本功能外还具有闹铃报警等功能。商家生产的电子万年历更从质量价格实用上考虑不断的改进电子时钟的设计使其更加的具有市场。 本设计为软件硬件相结合的一组设计。在软件设计过程中应对硬件部分有相关了解这样有助于对设计题目的更深了解有助于软件设计。基本的要了解一些主要器件的基本功能和作用。 除了采用集成化的时钟芯片外还有采用MCU的方案利用STC89系列单片微机制成电子电路采用软件和硬件结合的方法控制LED数码管输出分别用来显示年、月、日、时、分、秒其最大特点是:硬件电路简单安装方便易于实现软件设计独特,可靠。STC89C52RC是由ATMEL公司推出的一种小型单片机。95年出现在中国市场。其主要特点为采用Flash存贮器技术降低了制造成本其软件、硬件与MCS-51完全兼容可以很快被中国广大用户接受。 本文介绍了基于STC89C52RC单片机设计的电子时钟。
首先我们在绪论中简单介绍了单片机的发展与其在中低端领域中的优势以及课题的开发意义接着介绍了STC89C52RC单片机的硬件结构和本毕业设计所要外扩的LED显示及其驱动方法并在此基础上实现了时钟基本电路的设计然后使用单片机C语言进行时钟程序的设计程序采用模块化结构使得逻辑关系简单明了维护方便。 第1章 设计要求与方案论证
1.1 引言 本文提出了一种基于STC89C52RC单片机的时钟设计方案本方案以STC89C52RC单片机作为主控核心与时钟芯片DS1302、按键、LED显示等模块组成硬件系统。在硬件系统中设有独立按键和LED显示器能显示丰富的信息根据使用者的需要可以随时对时间进行校准、选择时间等综上所述此电子时钟具有读取方便、显示直观、功能多样、电路简洁、成本低廉等诸多优点符合电子仪器仪表的发展趋势具有广阔的市场前景。
1.2功能要求
本电子时钟能动态显示年、月、日、星期、小时、分钟、秒
1.3方案论证
1.3.1 技术可行性 随着国内超大规模集成电路的出现微处理器及其外围芯片有了迅速的发展。集成技术的最新发展之一是将CPU和外围芯片如程序存储器、数据存储器、并行I/O口、串行I/O口、定时/计数器、中断控制器及其他控制部件集成在一个芯片之中制成单片计算机Single-Chip Microcomputer。而近年来推出的一些高档单片机还包括有许多特殊功能单元如A/D、D/A转换器、调制解调器、通信控制器、锁相环、DMA、浮点运算单元、PWM控制输出单元、PWM输出时的死区可编程控制功能等。因此只要外加一些扩展电路及必要的通道接口就可以构成各种计算机应用系统如工业流水线控制系统、作为家用电器的主控制器、分布式控制系统的终端节点或作为其主控制节点起中继的作用、数据采集系统、自动测试系统等。 单片机的出现并在各技术领域中得到如此迅猛的发展与单片机构成计算机应用系统所形成的下述特点有关 1、单片机构成的应用系统有较大的可靠性。这些可靠性的获得除了依靠单片机芯片本身的高可靠性以及应用有最少的联接外还可以方便地采用软、硬件技术。 2、系统扩展、系统配置较典型、规范容易构成各种规模的应用系统应用系统有较高的软、硬件利用系数。 3、由于构成的应用系统是一个计算机系统相当多的测、控功能由软件实现故具有柔性特征不须改变硬件系统就能适当地改变系统功能。 4、有优异的性能、价格比。
1.3.2 单片机的选择
方案一采用传统的STC89C52RC作为电机的控制核心。单片机算术运算功能强软件编程灵活、自由度大可用软件编程实现各种算法和逻辑控制并且由于其功耗低、体积小、技术成熟和成本低等优点使其在各个领域应用广泛。
方案二采用FTC10F04单片机还带有非易失性Flash程序存储器。它是一种高性能、低功耗的8位CMOS微处理芯片市场应用最多。其主要特点如下8KB Flash ROM可以擦除1000次以上数据保存10年。
由于本系统对CPU运算速度要求很高需要执行很复杂的运算方案一成本比较低适合做设计方案二运算速度高性能好所以两种方案都有可取之处。选用方案一作为主方案方案二作为备用方案。
1.3.3 显示模块的选择
方案一使用液晶显示屏显示时间数字。 液晶显示屏LCD具有轻薄短小、低耗电量、无辐射危险平面直角显示以及影象稳定不闪烁等优势可视面积大画面效果好分辨率高抗干扰能力强等特点。但由于液晶是以点阵的模式显示各种符号需要利用控制芯片创建字符库编程工作量大控制器的资源占用较多其成本也偏高。在使用时不能有静电干扰否则易烧坏液晶的显示芯片不易维护。
方案二使用传统的LED数码管显示。 数码管具有低能耗、低损耗、低压、寿命长、耐老化、防晒、防潮、防火、防高低温对外界环境要求低易于维护同时其精度比较高称重轻精确可靠操作简单。数码管采用BCD编码显示数字程序编译容易资源占用较少。 根据以上的论述采用方案二。在本系统中我们采用了八段四位一体数码管串口的动态显示。
1.3.4 键盘模块的选择
在对日期和时间进行切换对日期和时间进行调节校准过程中系统需要产生激励电流因此需要用按键。 方案一使用独立式键盘。独立式键盘是指直接用I/O口线构成的单个按键电路。独立式按键电路配置灵活软件结构简单。 方案二使用矩阵式键盘。矩阵式键盘是由行线和列线组成按键位于行、列的交叉点上行线、列线分别连接到按键开关的两端。其特点是简单且不增加成本这种键盘适合按键数量较多的场合。 根据以上的论述因本系统需要的按键不多日期加1键月数加1键年数加1键分数加1键时数加1键时间/日期切换键要求简单。所以采用方案一独立式键盘。
1.3.5总体方案论证与选择
按照系统设计功能的要求初步确定系统由主控模块、时控模块、及显示模块和键盘接口模块共4个模块组成。
主控芯片使用51系列STC89C52RC单片机时钟芯片使用美国DALLAS公司推出的一种高性能、低功耗、带RAM的实时时钟DS1302。采用DS1302作为计时芯片可以做到计时准确。更重要的是DS1302可以在很小电流的后备电源2.55.5V电源再2.5V时耗电小于300nA而且DS1302可以编程选择多种充电电流来为后备电源进行慢速充电可以保证后备电源基本不耗电。显示模块采用普通的共阳极四位一体八段LED数码管。
第二章 系统硬件电路设计
2.2系统硬件概述
2.2.1 主控制器STC89C52RC STC89C52RC单片机是宏晶科技推出的新一代高速、低功耗、超强抗干扰的单片机指令代码完全兼容传统8051单片机12时钟、机器周期和6时钟、机器周期可以任意选择。 主要特性如下 增强型8051单片机6时钟、机器周期和12时钟、机器周期可以任意选择指令代码完全兼容传统8051单片机。
工作电压5.5V~3.3V工作频率范围0~44MHz。用户应用程序空间为8K字节片上集成512字节RAM通用I/O口32个复位后为P1/P2/P3/P4是准双向口/弱上位P0口是漏极开路输出作为总线扩展用时不用加上拉电阻作为I/O口用时需加上拉电阻。
ISP(在系统可编程)/IAP再应用可编程无需专用编程器无需专用仿真器可通过串口RXD/P3.0,TXD/P3.1 直接下载用户程序数秒即可完成一片。具有EEPROM功能
具有看门狗功能
共3个16位定时器/计数器。及定时器T0、T1、T2外部中断4路下降沿中断或低电平触发电路Power Down模式可由外部中断低电平触发中断方式唤醒通用异步串行口UART,还可用定时器实现多个UART工作温度范围:-40~85度工业级/0~75度商业级PDIP封装
2.2.2时钟电路DS1302 DS1302的性能特性:
实时时钟可对秒、分、时、日、周、月以及带闰年补偿的年进行比较用于高速数据暂存的31*8位RAM最少引脚的串行I/O2.55.5V电压工作范围2.5V时耗小于300nA
用于时钟或RAM数据读/写的单字节或多字节脉冲方式数据传送方式简单的三线接口
可选的慢速充电至Vcc1的能力。
DS1302在任何数据传送时必须先初始化把RST脚置为高电平然后把8位地址和命令字装入移位寄存器数据在SCLK的上升沿被访问到。在开始8个时钟周期把命令字节装入移位寄存器后另外的时钟周期在读操作时输出数据在写操作时写入数据。时钟脉冲的个数在单字节方式下为88在多字节方式下为8字节数最大可达248字节数。如果在传送过程中置RST脚为低电平则会终止本次数据传送并且I/O引脚变为高阻态。上电运行时在Vcc≥2.5V之前RST脚必须保持低电平。只有在SCLK为低电平时才能将RST置为高电平。
DS1302的控制字如表所示。控制字节的最高有效位位7必须是逻辑1如果它为0则不能把数据写入到DS1302中。位6如果为0则表示存取日历时钟数据为1则表示存取RAM数据。位51A4A0指示操作单元的地址。最低有效位位0如果为0则表示药进行写操作为1表示进行读操作。控制字节总是从最低位开始输入/输出。
为了提高对32个地址寻址能力地址/命令位15逻辑1,可以把时钟/日历或RAM寄存器规定为多字节burst方式。位6规定时钟或RAM而位0规定读或写。在时钟/日历寄存器中的地址931或RAM寄存器中的地址31不能存储数据。在多字节方式下读或写从地址0的位0开始。必须按数据传送的次序写最先的8个寄存器。但是当以多字节方式写RAM时为了传送数据不必写所有的31字节不管是否谢了全部31字节所写的每一字节都将传送至RAM。
表2.1 DS1302控制字 DS1302共有12个寄存器其中有7个寄存器与日历、时钟相关存放的数据位为BCD码形式。其日历、时间寄存器及其控制字如上表所示其中奇数为读操作偶数为写操作。
时钟暂停秒寄存器的位7定义位时钟暂停位。当它为1时DS1302停止振荡进入低功耗的备份方式通常在对DS1302进行写操作时如进入时钟调整程序,停止振荡。当它为0时时钟将开始启动。 AM-PM/12-24小时方式小时寄存器的位7定义为12或24小时方式选择位。它为高电平时选择12小时方式。在此方式下位5为第二个10小时位2023h。 DS1302的晶振选用32768Hz电容推荐值为6pF。因为振荡频率较低也可以不接电容对计时精度影响不大。 2.3主要单元电路的设计
2.3.1显示电路
显示部分采用普通的共阳数码管显示采用动态扫描以减少硬件电路。年月日、时分秒、报警共需要24位数码显示用8位数码管以按键切换的方式来显示。考虑到一次扫描24位数码管显示时会出现闪烁情况故采用动态扫描可将数码管数量减少至8位显示时采用串行口输出段码。 2.3.2键盘接口
键盘在单片机系统中是一个很重要的部件。为了输入数据、查询和控制系统的工作状态都要用到键盘键盘是人工干预计算机的主要手段。
键盘可分为编码和非编码键盘两种。编码键盘采用硬件线线路来实现键盘编码每按下一个键键盘能自动生成按键代码键数较多而且还具有去抖动功能。这种键盘使用方便但硬件较复杂PC机所用的键盘就属于这种。非编码键盘仅提供按键开关工作状态其他工作由软件完成这种键盘键数较少硬件简单一般在单片机应用系统中广泛使用。此处主要介绍该类非编码键盘及其与MCS—51型单片机的接口。
2.3.2.1按键开关去抖动问题
按键开关在电路中的连接如图所示。按键未按下时A点电位为高电平5V按键按下时A点电位为低电平。A点电位就用于向CPU传递按键的开关状态。但是由于按键的结构为机械弹性开关在按键按下和断开时触点在闭合和断开瞬间还会接触不稳定引起A点电平不稳定如图2-11b所示键盘的抖动时间一般为510ms抖动现象会引起CPU对一次键操作进行多次处理从而可能产生错误。因此必须设法消除抖动的不良后果。 消除抖动的不良后果的方法有硬、软件两种。
为了节省硬件通常在单片机系统中一般不采用硬件方法消除键的抖动而是用软件消除抖动的方法。根据抖动特性在第一次检测到按键按下后执行一段延时5~10ms让前延抖动消失后再一次检测键的状态如果仍保持闭合状态电平则确认真正有键按下。当检测到按键释放后也要给5~10ms的延时待后延抖动消失后才转入该键处理程序。
2.3.2.2查询式按键及其接口
按照键盘与CPU的连接方式可以分为查询按键和矩阵式键盘。查询式按键是各按键相互独立每个按键占用一根I/O口线每根I/O口线上的按键工作状态不会影响其他I/O口线上按键的工作状态。查询式按键电路配置灵活软件结构简单但每个按键必须占用一根I/O口线在按键数量较多时I/O口线浪费较大且电路结构显得繁杂。故这种形式适用于按键数量较少的场合。
2.3.2.3矩阵式键盘及其接口
矩阵式键盘又称行列式键盘有n个行线和m个列线经限流电阻接5V电源上按键跨接在行线和列线上n×m行列结构可构成mn个按键组成一个键盘。与独立式按键相比mn个按键只占用mn根I/O口线因此适用于按键较多的场合。
当无键闭合时相应的I/O之间开路。当有键闭合时与闭合键相连接的两条I/O口线之间短路。判断有无键按下的方法是第一步置列线相关I/O口为输入态从行线相对应的I/O口输出低电平读入列线数据若某一列线为低电平则该列线上有键闭合。第二步置行线相关I/O口输出低电平读入列线数据若某一列线为低电平则该列线上有键闭合。综合一二两步的结果可确定按键编号。但是键闭合一次只能进行一次键功能操作因此须等待近按键释放后再进行键功能操作否则按一次键有可能会连续多次进行同样的键操作。
2.3.2.4键盘扫描控制方式
在单片机应用系统中对键盘的处理工作仅是CPU工作内容的一部分CPU还要进行数据处理、显示和其他输入输出操作因此键盘处理工作既不能占用CPU太多时间又需要CPU对键盘操作及时作出响应。CPU对键盘处理控制的工作方式有以下几种
1. 程序控制扫描方式
程序控制扫描方式是在CPU工作空余调用键盘扫描子程序响应键输入信号要求。
2. 定时控制扫描方式
定时控制扫描方式是利用定时/计数器每隔一段时间产生定时中断CPU响应中断后对键盘进行扫描并在有键闭合时转入该键的功能子程序。
3. 中断控制扫描方式
中断控制扫描方式是利用外部中断源响应输入信号。当无按键按下时CPU执行正常工作程序。当有按键按下时CPU立即产生中断。在中断服务子程序中扫描键盘判断是哪一个键被按下然后执行该键的功能子程序。这种控制方式克服了前两种控制方式可能产生的空扫描和不能及时响应键输入的缺点既能及时处理键输入又能提高CPU运行效率但要占用一个宝贵的中断资源。图即工作于中断方式的矩阵式键盘接口电路。在初始化时P1.4~P1.7置输出0P1.0~P1.3置为输入态P1.0~P1.3分别接至与门各输入端。当有键闭合时
0CPU中断后在中断服务子程序中再完成键识别和键功能处理。 2.3.3时钟电路
2.3.3.1 DS1302工作方式简介及数据操作原理
DS1302可以对年、月、日、星期、时、分、秒进行计时, 且具有闰年补偿功能, 工作电压宽达2.5~5.5V。采用三线接口与CPU进行同步通信, 并可采用突发方式一次传送多个字节的时钟信号或RAM数据。DS1302内部有一个33x8的用于临时性存放数据的RAM寄存器。DS1302是的DS1202升级产品, 与DS1202兼容, 但增加了主电源/后背电源双电源引脚, 同时提供了对后背电源进行涓细电流充电的能力。
DS1302时钟芯片包括实时时钟/日历和31字节的静态RAM。它经过一个简单的串行接口与微处理器通信。实时时钟/日历提供秒、分、时、日、周、月和年等信息。对于小于31天的月和月末的日期自动进行调整还包括闰年校正的功能。时钟的运行可以采用24小时或带AM/PM的12小时格式。采用三线接口与CPU进行同步通信并可采用突发方式一次传送多字节的时钟信号或RAM数据。
DS1302有主电源/后备电源双电源引脚Vcc1在单电源与电池供电的系统中提供低电源并提供低功率的电磁备份Vcc1在双电池系统中提供主电源。在这种运行方式中Vcc1里连接到后备电源以便在没有主电源的情况下能保存时间信息以及数据。DS1302由Vcc1或Vcc2中较打大者供电。当Vcc2Vcc10.2V时Vcc2给DS1302供电当Vcc2Vcc1时DS1302由Vcc1供电。 DS1302在任何数据传送时必须先初始化把RST脚置为高电平然后把8位地址和命令字装入移位寄存器数据在SCLK的上升沿被访问到。在开始8个时钟周期把命令字节装入移位寄存器后另外的时钟周期在读操作时输出数据在写操作时写入数据。时钟脉冲的个数在单字节方式下为88在多字节方式下为8字节数最大可达248字节数。如果在传送过程中置RST脚为低电平则会终止本次数据传送并且I/O引脚变为高阻态。上电运行时在Vcc≥2.5V之前RST脚必须保持低电平。只有在SCLK为低电平时才能将RST置为高电平。
DS1302的控制字如图所示。控制字节的最高有效位位7必须是逻辑1如果它为0则不能把数据写入到DS1302中。位6如果为0则表示存取日历时钟数据为1则表示存取RAM数据。位51A4A0指示操作单元的地址。最低有效位位0如果为0则表示药进行写操作为1表示进行读操作。控制字节总是从最低位开始输入/输出。
为了提高对32个地址寻址能力地址/命令位15逻辑1,可以把时钟/日历或RAM寄存器规定为多字节burst方式。位6规定时钟或RAM而位0规定读或写。在时钟/日历寄存器中的地址931或RAM寄存器中的地址31不能存储数据。在多字节方式下读或写从地址0的位0开始。必须按数据传送的次序写最先的8个寄存器。但是当以多字节方式写RAM时为了传送数据不必写所有的31字节不管是否谢了全部31字节所写的每一字节都将传送至RAM。 DS1302共有12个寄存器其中有7个寄存器与日历、时钟相关存放的数据位为BCD码形式。其日历、时间寄存器及其控制字如下表所示其中奇数为读操作偶数为写操作。 时钟暂停秒寄存器的位7定义位时钟暂停位。当它为1时DS1302停止振荡进入低功耗的备份方式通常在对DS1302进行写操作时如进入时钟调整程序,停止振荡。当它为0时时钟将开始启动。 AM-PM/12-24小时方式小时寄存器的位7定义为12或24小时方式选择位。它为高电平时选择12小时方式。在此方式下位5为第二个10小时位2023h。 DS1302的晶振选用32768Hz电容推荐值为6pF。因为振荡频率较低也可以不接电容对计时精度影响不大。 第3章 系统的软件设计
电子时钟的程序主要包括3个方面的内容一是DS1302从单片机中读取数据进行计数二是利用按键进行时间的调整三是单片机中读取DS1302中的数据驱动LED数码管显示时间。STC89C52RC单片机主要I/O口的分配:P10、P11、P12分别接时钟芯片的SCLK、I/O、RST引脚,P13、P14、P15、P16接四个独立按键。 主程序流程图
时间调整程序流程图
第4章 结束语
2010年3月我开始了我的毕业论文工作时至今日论文基本完成。从最初的茫然到慢慢的进入状态再到对思路逐渐的清晰整个写作过程难以用语言来表达。历经了一个多月的奋战紧张而又充实的毕业设计终于落下了帷幕。回想这段日子的经历和感受我感慨万千在这次毕业设计的过程中我拥有了无数难忘的回忆和收获。当我终于完成了所有打字、绘图、排版、校对的任务后整个人都很累但同时看着电脑荧屏上的毕业设计稿件我的心里是甜的我觉得这一切都值了。这次毕业论文的制作过程是我的一次再学习再提高的过程。在论文中我充分地运用了大学期间所学到的知识。
我不会忘记这难忘的几个月的时间。毕业论文的制作给了我难忘的回忆。在我徜徉书海查找资料的日子里面对无数书本的罗列最难忘的是每次找到资料时的激动和兴奋亲手用protel 99设计电路图的时间里记忆最深的是每一步小小思路实现时那幸福的心情为了论文我曾赶稿到深夜但看着亲手打出的一字一句心里满满的只有喜悦毫无疲惫。这段旅程看似荆棘密布实则蕴藏着无尽的宝藏。我从资料的收集中掌握了很多单片机及其接口应用的知识让我对我所学过的知识有所巩固和提高并且让我对当今单片机的最新发展技术有所了解。在整个过程中我学到了新知识增长了见识。在今后的日子里我仍然要不断地充实自己争取在所学领域有所作为。
脚踏实地认真严谨实事求是的学习态度不怕困难、坚持不懈、吃苦耐劳的精神是我在这次设计中最大的收益。我想这是一次意志的磨练是对我实际能力的一次提升也会对我未来的学习和工作有很大的帮助。在这次毕业设计中也使我们的同学关系更进一步了同学之间互相帮助有什么不懂的大家在一起商量听听不同的看法对我们更好的理解知识所以在这里非常感谢帮助我的同学。
在此更要感谢我的指导老师和专业老师是你们的细心指导和关怀使我能够顺利的完成毕业论文。在此我要向司老师致以最衷心的感谢和敬意。