




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、论文题目:基于单片机定时控制器的研制论文题目:基于单片机定时控制器的研制摘 要随着电子技术的迅速发展,特别是随大规模集成电路出现,给人类生活带来了根本性的改变。由其是单片机技术的应用产品已经走进了千家万户。作为单片机技术应用之一的定时控制器,在日常生活,工业场合甚至军事领域都有应用。本文主要介绍了单片机定时控制器的硬件设计过程。单片机作为主控器件,是整个系统的核心,它起到主要的控制作用;时钟芯片为系统提供一个数字钟,定时功能的实现也要依赖它;液晶模块为系统显示提供载体;按键部分采用独立式结构,主要用作调时和定时,也可用作功能选择;控制输出部分通过继电器的动作和发光二极管的亮灭,模拟机器的开和停
2、。本文完成了对系统硬件电路制作、软件设计和调试过程的说明,系统最终实现分时段定时控制的功能。关键词:单片机,时钟芯片,液晶模块,定时控制 subject:development of time controller based on single chip microprocessor abstractalong with the electronic technology rapid development, appears of the large scale integrated circuit specially, these have made a big change on peo
3、ples living. products including the technology application of the single chip microprocessor sets already entered every family.as one application of the single chip microprocessor technology, the time controller has been applied in the daily life, the industry situation and military field.this artic
4、le introduced mainly the design process of the time controller composed by the single chip microprocessor. as the main control component, the single chip microprocessor is the core of the device and it plays the main control action. the clock chip provides a digital clock for the device and helps to
5、 realize the function of the timing control. the liquid crystal display is the carrier for the device system demonstrating. the keys use free standing structure. they mainly use as the timing and fixed time and use also as function choice. the control output simulates machines opening and stops by r
6、elays movement and the light emitter diode. this article has showed the process of the hardware manufacture, the software design and debugging. the function of the time controller is realized finally. key words: single chip microprocessor, the clock chip, the liquid crystal display, timing controlle
7、ri目目 录录第第 1 章章 绪绪 论论.11.1 课题开发背景.11.2 设计要求.1第第 2 章章 单片机及液晶显示模块单片机及液晶显示模块.32.1 单片机 stc89c58rd+结构.32.1.1 引脚定义及功能.32.1.2 复位电路.62.2 液晶 12232 模块.72.2.1 引脚定义及功能说明.72.2.2 指令描述.82.2.3 lcd12232 的写规则.112.2.4 lcd12232 与单片机接口.11第第 3 章章 硬件设计硬件设计.133.1 芯片及硬件模块.133.1.1 时钟芯片模块 ds1302 .133.1.2 液晶外部时钟模块.213.1.3 键盘接口电
8、路.233.2 系统设计思路.243.3 硬件框图.253.4 系统功能说明.263.5 系统硬件设计电路图.27第第 4 章章 软件设计软件设计.294.1 软件设计的原则.294.2 系统功能模块图.294.3 程序流程图.30第第 5 章章 制作与调试制作与调试.345.1 硬件焊接.345.2 硬件调试.355.2.1 焊接调试.355.2.2 故障调试.355.2.3 功能调试.365.3 “伟福”调试软件.365.3.1 “伟福”的特点.365.3.2 “伟福”仿真软件的使用.365.3.3 “伟福”集成调试软件的界面.37ii5.4 综合调试.435.4.1 联机调试.435.4
9、.2 脱机调试.44结束语结束语.46附录附录 硬件实硬件实物物图图.47致致 谢谢.48参考文献参考文献.491第 1 章 绪 论1.1 课题开发背景人类最早使用的定时工具是沙漏或水漏,但在钟表诞生发展成熟之后,人们开始尝试使用这种全新的计时工具来改进定时器,达到准确控制时间的目的。 1876 年,英国外科医生索加取得一项定时装置的专利,用来控制煤气街灯的开关。它利用机械钟带动开关来控制煤气阀门1。起初每周上一次发条,1918 年使用电钟计时后,就不用上发条了。 定时器确实是一项了不起的发明,使相当多需要人控制时间的工作变得简单了许多。人们甚至将定时器用在了军事方面,制成了定时炸弹,定时雷管
10、。现在的不少家用电器都安装了定时器来控制开关或工作时间2。 目前单片机渗透到日常生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。导弹的导航装置,飞机上的各种仪表控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能 ic 卡,民用豪华轿车的安全保障系统,录像机、摄像机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。更不用说自动控制领域的机器人、智能仪表、医疗器械了。鉴于单片机有如此广泛的应用领域,基于单片机的定时控制器就可以运用到日常生活的各个方面,如上下班铃声的控制、机器的开停机时间控制等等。为了能够巩固以前所学习的单片机原理的有
11、关知识,并将其应用到实践中,培养动手能力和解决实际问题的能力,因此选择了基于单片机的定时控制器的设计课题。1.2 设计要求(1)了解 lcd 图形显示器的工作原理及硬件结构; (2)熟悉时钟芯片的工作原理及接口技术;(3)熟悉 8031 单片机的工作原理及接口技术;(4)自行设计(软、硬件) 、制作和调试;(5)实现汉字、字母的 lcd 显示;(6)画出硬件设计图和软件流程图;(7)根据软硬件设计完成硬件制作和软件调试;2(8)实现每天 4 时段的定时控制,通过软件可以任意设置每个时间段的起始与结束时间。3第 2 章 单片机及液晶显示模块单片机是系统设计的主控模块,液晶是系统显示的载体。本章将
12、介绍单片机stc89c58rd+的原理及液晶 12232 模块。2.1 单片机 stc89c58rd+结构stc89c58rd+是宏晶公司生产的低电压、加密性强、高性能 cmos8 位单片机。主要性能特点有3:1)增强型 6 时钟/机器周期,12 时钟/机器周期 8051 cpu;2)工作电压:5.5v3.8 v;3)工作频率范围:040mhz,相当于普通 8051 的 080mhz,实际工作频率可达48mhz; 4)用户可用程序空间 32k;5)片上集成 1280 字节 ram;6)通用 i/o 口(32)个,复位后:p1/p2/p3/p4 是准双向口/弱上拉(普通 8051 传统 i/o
13、口) ,p0 口是开漏输出,作为总线扩展用时,不用加上拉电阻,作为 i/o 口用时,需加上拉电阻;7)eeprom 功能,看门狗功能;8)外部中断 4 路,下降沿中断或低电平触发中断;9)共 3 个 16 位定时器计数器,其中定时器 0 可当成 2 个 8 位定时器使用;空闲方式停止 cpu 的工作,但允许 ram、定时/计数器、串行通信口及中断系统继续工作;掉电方式保存 ram 中的内容,但震荡器停止工作并禁止其他所有部件工作直到下一个硬件复位。2.1.1 引脚定义及功能stc89c58rd+封装形式和引脚排列如图 2-1 所示。4图 2-1 stc89c58rd+引脚图图 2-1 中,各引
14、脚功能如下:vcc:电源gnd:地p0 口:p0 口是一组 8 位漏极开路的双向 i/o 口,是地址数据总线复用口。作为输出口用时,每位能以吸收电流的方式驱动 8 个 ttl 逻辑门电路,对端口写“1”可作为高阻抗输入端用。在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低 8 位)和数据总线复用,在访问期间激活内部上拉电阻。在 flash 编程时,p0 口接受指令字节,而在程序校验时输出指令字节,校验时要求外接上拉电阻。p1 口:p1 是一个带内部上拉电阻的 8 位双向 i/o 口,它的输出缓冲级可驱动(吸收或输出电流)4 个 ttl 逻辑门电路。对端口写“1”,通过内部的上拉电阻
15、把端口拉到高电平,此时可作输入口。作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流。此外,p1.0 和 p1.1 分别作为定时器/计数器 2 的外部计数输入(p1.0/t2)和定时器/计数器 2 的触发输入(p1.1/t2ex) ,具体如表 2-1 所示。flash 编程和程序校验期间,p1 接收低 8 位地址。5表表 2-1 p1 口第二功能口第二功能引脚号功能特性p1.0t2(定时/计数器 2 外部计数脉冲输入),时钟输出p1.1t2ex(定时/计数器 2 捕获/重装载触发和方向控制)p1.5mosi(在系统编程用)p1.6miso(在系统编程用)p1.7sck
16、(在系统编程用)p2 口:p2 是一个带内部上拉电阻的 8 位双向 i/o 口,的输出缓冲级可驱动(吸收或输出电流)4 个 ttl 逻辑门电路。对端口写“1”,通过内部的上拉电阻,某个引脚被外部信号拉低时会输出一个电流。在访问外部程序存储器或 16 位地址的外部数据存储器(例如执行 movx dptr,a)时,p2 口送出高 8 位地址数据。在访问 8 位地址的外部数据存储器(如执行 movx r1,a)时,p2 口线上的内容(特殊功能寄存器 sfr 区中 r2 寄存器的内容) ,在整个访问期间不改变。flash 编程和程序校验期间,p2 亦接受高位地址和其他控制信号。p3 口:p3 口是一组
17、带有内部上拉电阻的 8 位双向 i/o 口。它的输出缓冲级可驱动(吸收或输出电流)4 个 ttl 逻辑门电路。对 p3 口写入“1”时,他们被内部上拉电阻拉高并可作为输入端口。作输入端时,被外部拉低的 p3 口将用上拉电阻输出电流。p3 口除了作为一般的 i/o 口线,更重要的是它的第二功能,如表 2-2 所示。表表 2-2 p3 口的第二功能口的第二功能端口引脚第二功能p3.0rxd(串行输入口)p3.1txd(串行输出口)p3.2int0(外中断 0)p3.3int1(外中断 1)p3.4t0(定时/计数器 0)p3.5t1(定时/计数器 1)p3.6wr(外部数据存储器写选通)p3.7r
18、d(外部数据存储器读选通):复位输入。晶振工作时,脚持续 2 个机器周期高电平将使单片机复位。rstrst6看门狗计时完成后,脚输出 96 个晶振周期的高电平。特殊寄存器 auxr(地址rst8eh)上的 disrto 位可以使此功能无效。disrto 默认状态下,复位高电平有效。ale/prog:当访问外部程序存储器或数据存储器时,ale(地址锁存允许)输出脉冲用于锁存地址的低 8 位字节,即使不访问外部存储器,ale 仍以时钟震荡频率的 1/6 输出固定的正脉冲信号,因此它可对外输出始终或用于定时目的。要注意的是:每当访问外部数据存储器时将跳过一个 ale 脉冲。对 flash 存储器编程
19、期间,该引脚还用于输入编程脉冲(prog) 。如有必要,可通过对特殊功能寄存器(sfr)区中的8eh 单元中的 d0 位置位,可禁止 ale 操作。该位置位后,只有一条 movx 和movc 指令 ale 才会被激活。单片机执行外部程序时,应设置 ale 无效。psen:程序存储允许(psen)输出是外部程序存储器的读选通信号,当stc89c58rd+由外部程序存储器取指令或数据时,每个机器周期两次 psen 有效,即输出两个脉冲。在此期间,当访问外部数据存储器时,这两次有效的 psen 信号不出现。ea/vpp:外部访问允许。欲使 cpu 仅访问外部程序存储器(地址为 0000h-ffffh
20、)ea 端必须保持低电平(接地) 。需注意的是如果加密位 lb1 被编程,复位时内部会锁存 ea 状态。如 ea 为高电平,cpu 则执行内部程序存储器中的指令。flash存储器编程时,该引脚加上编程允许电源 vpp。xtal1:震荡器反向放大器及内部时钟发生器的输入端。xtal2:震荡器反向放大器的输出端。2.1.2 复位电路复位电路如图 2-2 所示4。7k200r11kr222ufcvcc图 2-2 复位电路单片机的外部复位电路有上电自动复位和按键手动复位两种,本设计采用的是按键手动复位。按复位键后,复位端通过电阻与 vcc 电源接通。复位电路关系到一个系统能否可靠地工作,由阻容元件以及
21、门电路组成的复位电路在多数情况下均能良好工作,但是阻容复位电路的复位触发门限较难在设计时确定,这与电阻、电容的精度,电源的精度有关,而且受温度的影响较大。所以,如果发现设计的复位电路不起作用时,可以适当调整一下电阻、电容的大小,使复位高电平能够持续 2 个机器周期。2.2 液晶 12232 模块显示部分采用点阵式液晶 lcd12232-2,可以显示汉字和阿拉伯数字。(1)该液晶的基本特性如下5:具有低功耗、供应电压范围宽等特点;具有 16common 和 61segment 输出,并可外接驱动来扩展驱动;具有 2560 位显示 ram,即 8084 位;具有与 68 系列或 80 系列相适配的
22、 mpu 接口,并有专用的指令集,可以完成文本显示或功能显示的功能设置。(2)工作参数逻辑工作电压:2.6-6.0vlcd 的驱动电压:3.0-13.5v工作温度:0-55(常温)/-20- 70(宽温)保存温度:-10-702.2.1 引脚定义及功能说明8vdd:逻辑电源正vss:逻辑电源地v0:lcd 驱动电源a0: 数据指令选择。高电平:表示出现在数据总线上的是数据;低电平:表示出现在数据总线上的是指令或读书的状态。cs1/cs2:读写使能,对于 68 系列的 mpu,高电平有效;对于 80 系列的 mpu,低电平有效。cl: 外振时钟rd: 读允许,低电平有效wr: 写允许,高电平有效
23、d0-d7: 数据输入输出引脚res: 复位端,68 系列的 mpu,上升沿复位;80 系列的 mpu,下降沿复位led+/led- : 背光正极电源,背光负极电源12232 引脚如图 2-3 所示。vss1vdd2vlcd3cl7rd8wr9ret18vled+19vled-20db010db111db212db313db414db515db616db717a04cs15cs26u?12232-2图 2-3 液晶 12232 引脚图2.2.2 指令描述1)显示模式设置a0rdwrdb7db6db5db4db3db2db1db00101010111d功能:开关屏幕显示,不改变显示 ram 中的
24、内容,也不影响内部状态。d=1,开显示;d=0,关显示。如果在显示关闭的状态下,选择静态驱动模式,那么内部电路将处于安全模式。92)设置显示起始行a0rdwrdb7db6db5db4db3db2db1db0010110a4a3a2a1a0功能:执行该命令后,所设置的行将显示在屏幕的第一行。起始行可以是 0-31 范围内的任意一行。行地址计数器具有循环计数功能,用于显示行扫描同步,当扫描完一行后自动加一。3)页地址设置a0rdwrd7d6d5d4d3d2d1d0010101110a1a0功能:设置页地址。当 mpu 要对 dd ram 进行读写操作时,首先要设置列地址和页地址。 a1 a0页地址
25、 0 0 0 0 1 1 1 0 2 1 1 34)列地址设置a0rdwrd7d6d5d4d3d2d1d00100a6a5a4a3a2a1a0当 mpu 要对 dd ram 进行读写操作前,首先要设置页地址和列地址。执行读写命令后,列地址会自动加 1,直到达到 50h 才会停止,但页地址不变。a6a5a4a3a2a1a0列地址 0 0 1 0 1 1 1 04e10 1 0 1 1 1 14f5)读状态指令a0rdwrd7d6d5d4d3d2d1d0001busyadcon/ofreset0000功能:检测内部状态busy 为忙信号,busy=1:内部正在执行操作;busy=0:空闲状态。ad
26、c:为显示方向,adc=0:反向显示;adc=1:正向显示on/of:显示开关状态,on/of=0:显示打开;on/of=1:显示关闭。reset:复位状态,reset=0,正常;reset=1:内部处于复位初始化状态。6)写显示数据a0rdwrd7d6d5d4d3d2d1d0110write data将 8 位数据写入 dd ram ,执行该指令后,列地址自动加 1,所以可以连续将数据写入 dd ram 而不用重新设置列地址。7)读显示数据a0rdwrd7d6d5d4d3d2d1d0101read data功能:读出页地址和列地址限定的 dd ram 中的数据。当“读-修-改-写”模式关闭时
27、,每执行一次读指令,列地址自动加一,所以可以连续从 dd ram 中读出数据而不用设置列地址。8)设置显示方向a0rdwrd7d6d5d4d3d2d1d00101010000d功能:该指令设置 dd ram 中的列地址与段驱动输出的对应关系当 d=0 时,反向;d=1 时,正向。9)开关静态驱动模式设置a0rdwrd7d6d5d4d3d2d1d00101010010d功能:d=0 表示关闭静态显示,d=1 表示打开静态显示1110)占空比选择a0rdwrd7d6d5d4d3d2d1d00101010100d功能:d=0 表示 1/16duty,d=1 表示 1/32 duty11) “读-修-
28、改-写”模式设置a0rdwrd7d6d5d4d3d2d1d001011100000功能:执行该指令后,每执行一次写数据指令,列地址自动加一;但执行读数据指令时列地址不会改变。这个状态一直持续到执行结束 end 指令。12)end 指令a0rdwrd7d6d5d4d3d2d1d001011101110功能:关闭“读-修-改-写”模式,并把列地址指针恢复到打开“读-修-改-写”模式前的位置。13)复位指令a0rdwrd7d6d5d4d3d2d1d001011100010功能:使模块内部初始化2.2.3 lcd12232 的写规则在液晶屏上横向 8 个点为一个字节数据,汉字在液晶屏上的显示为 161
29、6(宽高),通过字模提取软件按照先左后右,先上后下的方式对汉字进行字模提取,可获得该字模对应的 32 个字节值;阿拉伯数字在液晶屏上的显示为 816(宽高) ,字模提取的方式与汉字相同,可获得该字模对应的 16 个字节值。一个 1616 的汉字的存放方式如下: 0 16 1 17 15 3212一个 816 的阿拉伯数字的存放方式如下: 0 1 15通过单片机将已提取的汉字的字模输入液晶控制器,即可按设定的液晶模块显示需要的汉字或数字。2.2.4 lcd12232 与单片机接口lcd12232 与单片机的接口电路如图 2-4 所示。ea/vpp31xtal119xtal218rst9p3.7(
30、rd)17p3.6(wr)16p3.2(int0)12p3.3(int1)13p3.4(t0)14p3.5(t1)15p1.0(t2)1p1.1(t2ex)2p1.23p1.34p1.45p1.5(mosi)6p1.6(miso)7p1.7(sck)8(ad0)p0.039(ad1)p0.138(ad2)p0.237(ad3)p0.336(ad4)p0.435(ad5)p0.534(ad6)p0.633(ad7)p0.732(a8)p2.021(a9)p2.122(a10)p2.223(a11)p2.324(a12)p2.425(a13)p2.526(a14)p2.627(a15)p2.728
31、psen29ale/prog30(txd)p3.111(rxd)p3.010gnd20vcc40stc89c58rd+vss1vdd2vlcd3cl7rd8wr9ret18vled+19vled-20db010db111db212db313db414db515db616db717a04cs15cs2612232-2vcc10kr60.5kr7p3.7p3.6p0.5p0.6p0.34.7kr17vcc1a11y22a32y43a53y6gnd74y84a95y105a116y126a13vcc1474hc14c6r18vccvccp0.4图 2-4 液晶 12232 与单片机接口电路在图 2-
32、4 中,db0db7 作为数据口,与单片机的 p1 口相连;液晶 12232 的rd、wr 端分别接到单片机的 p3.7、p3.6 端口上,由单片机的这两个端口提供液晶的读写信号;液晶的外部晶振由 74hc14 与 r、c 组成的振荡电路提供,具体的内容将在下一章做介绍;液晶的两个读写使能端口 cs1、cs2,与单片机的 p0.5、p0.6 相连,这样可以在程序中对液晶的忙、闲状态进行判别以及控制液晶的读写;res 端接到p0.4 上,这样在程序中可以灵活的选择液晶的时序。13第 3 章 硬件设计硬件电路是一个单片机系统的躯壳,没有了躯壳,系统会是一个完全瘫痪的系统。本章会向读者讲述整个系统硬
33、件的设计思路和方法,另外还会向大家介绍时钟模块、液晶的外部时钟产生电路等硬件电路。3.1 芯片及硬件模块3.1.1 时钟芯片模块 ds1302美国 dallas 公司的 ds1302 是一种高性能、低功耗、带 ram 的实时时钟芯片,它采用 spi 串行总线接口与单片机连接6。spi 是由 motorola 公司提出的一种同步串行外围接口,采用 3 根或 4 根信号线进行数据传输,所需要的信号包括使能信号、同步时钟、同步数据(输入和输出) 。采用 spi 接口可以方便地与许多厂家的各种标准外围器件直接连接。采用 spi 总线可以简化系统结构,降低系统成本,使系统具有灵活的可扩展性。spi 串行
34、总线有如下一些主要特点:全双工,三线同步传输。主机或从机操作。1.05mbit/s 的最大主机数据传输速率。4 种可编程主机数据传输速率。可编程串行时钟极性与相位。发送结束中断标志。定开发冲突保护。14总线竞争保护。spi 从设备一般使用 1 根数据线(i/o)和 2 根控制线(、sclk) 。其中,数rst据线不仅用于从设备向系统主机返回数据,还可以用作多个从设备之间的级联,当前从设备的 i/o 输出端可以连接到下一级设备的 i/o 输入端。spi 串行接口设备既可以工作在主设备模式下,也可以工作在从设备模式下。系统主设备为 spi 总线通信过程提供同步时钟信号,并决定从设备片选信号的状态,
35、使能将要进行通信的设备。spi 从器件则从系统主设备获取时钟及片选信号,因此从器件的控制信号、sclk 都是输入信号。rst在系统主机与 spi 从设备之间进行通信时,不论是命令还是数据都以串行方式传送,串行传送的数据被泵入到一个移位寄存器,并转换为并行数据格式。须指出的是,移位寄存器的位数并不是固定的,它根据不同的设备而各不相同。大多数设备的移位寄存器是 8 位或 8 位的整数倍。如果一个 spi 从设备没有被选中,它的数据输出端将处于高阻状态,从而与当前处于激活状态的器件隔离。当多个 spi 从设备级联使用时,将它们的使能端连接到同一个片选信号上,当作一个从设备来处理。级联的 spi 从设
36、备被看作是一个大的设备并使用相同的片选信号,从设备的数据输出端分别被连接到下一个从设备的数据输入端,并将最后一个从设备的数据输出端连接到系统主机的数据输入端。当系统中所有的 spi 从设备都需要独立地连接到系统主机时,所有的从设备仍然使用相同的时钟信号 sclk,并将所有 spi 从设备的数据输入引脚连接到系统主机的数据输出引脚,从设备的数据输出引脚连接到主机的数据输入引脚,但每个 spi 从设备采用相互独立的片选信号来控制芯片使能端,这样系统主机可以通过片选信号来选通其中一个从设备进行读写操作访问,而未被选中的其它所有器件处于高阻隔离状态。在 spi 串行总线通信过程中,用来控制外围设备的选
37、通(低电平有效) ,未选rst通器件的数据输出端信号线将处于高阻状态。sclk 则用来为数据通信提供同步时钟,不论 spi 从设备是否处于选通状态,系统主设备都会为所有 spi 从设备提供 sclk 信号。spi 串行数据通信接口可以配置为 4 种不同的工作模式,它们如表 3-1 所示。表表 3-1 spi 串行通信接口模式串行通信接口模式spi 模式cpolcpha0001511210311cpha 用来表示同步时钟信号的相位,cpol 用来表示同步时钟信号的极性。当同步时钟信号的相位为 0、极性也为 0 时,通信过程中的数据位在同步信号的上升沿锁存;当相位为 0,极性为 1 时,数据位在同
38、步时钟信号的下降沿锁存。在同步时钟信号相位为 1 的情况下,同步时钟信号的相位会翻转 180。采用 ds1302 作为主要计时芯片,可做到计时准确。更重要的是,ds1302 可以在很小电流的后备电源(2.55.5v 电源,在 2.5v 时功耗小于 300na)下继续计时,并可编程选择多种充电电流来对后备电源进行慢速充电,可以保证后备电源基本不耗电。它具有以下性能特性:1)实时时钟,可对秒、分、时、日、周、月以及带闰年补偿的年进行计数;2)用于高速数据暂存的 31x8 位 ram;3)最少引脚的串行 i/o;4)2.55.5v 电压工作范围;5)用于时钟或 ram 数据读/写的单字节或多字节(脉
39、冲方式)数据传输方式;6)简单的 3 线接口;7)可选的慢速充电(至 vcc1)的能力。ds1302 与单片机之间能简单地采用 spi 同步串行的方式进行通信,仅需用到 3 根信号线:(复位) 、i/o(数据线) 、sclk(同步串行时钟) 。单片机通过串行口实rst现对 ds1302 的控制和从 ds1302 中读取时钟信息。时钟/ram 的读/写数据以一个字节或多达 31 个字节的字符组方式通信。ds1302 时钟芯片包括实时时钟/日历和 31b 的静态 ram,实时时钟/日历提供秒、分、时、日、周、月、年等信息,对于小于 31 天的月和月末的日期自动进行调整,还包括闰年校正功能。时钟的运
40、行可以采用 24h 或带 am(上午)/pm(下午)的 12h 格式。采用三线接口与 cpu 进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或 ram 数据。ds1302 是由 ds1202 改进来的,增加了双电源管脚用于主电源和备份电源供电,其中 vcc1 为可编程涓流充电电源:vcc1 在单电源与电池供电的系统中提供低电源及16低功率的电池备份;vcc2 在双电源系统中提供主电源,在这种运行方式中,vcc1 连接到备份电,以便在没有主电源的情况下能保存时间信息以及数据。ds1302 由 vcc1 或vcc2 中较大者供电,当 vcc2 大于 vcc1+0.2v 时,vcc2 给
41、ds1302 供电;当 vcc2 小于 vcc1 时,ds1302 由 vcc1 供电。ds1302 有 3 种不同的引脚封装形式,它们分别是双列直插的 dip8 和表面贴装的soic8(150mil) 、soic8(200 mil) ,与这 3 种封装相对应的芯片型号分别是ds1302、ds1302z 和 ds1302s。ds1302 引脚如图 3-1 所示。图 3-1 ds1302 引脚图x1、x2:32.768khz 晶振引脚。gnd:信号地。 :复位引脚。rsti/o:数据输入输出引脚。sclk:同步串行时钟输入引脚。vcc2:主电源。 vcc2:备份电源。1ds1302 的内部结构及
42、工作原理:ds1302 串行时钟芯片由电源、移位寄存器、命令控制逻辑、震荡器、实时时钟及 ram 组成。输入移位寄存器模块用于完成串行数据的输入输出,数据在同步串行时钟 sclk的上升沿串行输入。无论是读周期还是写周期,也无论是单字节传送方式还是多字节传送方式,数据传送开始的 8 个数据位用于指定 ds1302 中哪个字节被访问。在开始的8 个时钟周期将命令字节装入移位寄存器之后,另外的时钟在读操作时输出数据,在写操作时输入数据。输入移位寄存器模块的所有串行数据输入/输出都必须通过把驱动至高电平状rst态来启动。复位引脚输入与控制逻辑相连,用于允许或禁止地址/命令序列送入移rst位寄存器;同时
43、,还提供了中止单字节或多字节数据传输的手段,如输入为rstrst低电平,那麽所有的数据传输将被中止并且 i/o 引脚变为高阻态。在 ds1302 的上电过17程中,当 vcc2.5v 之前,必须为逻辑 0。rst在 ds1302 内部共包含 40 个数据节,其中 7 个时钟/日历字节,1 个时钟写保护控制字节,1 个涓流充电控制字节和 31 个 ram 字节。在对这些字节进行读写访问时,由命令字节中的数据位 a0a5 控制。2ds1302 的控制字如表 3-2 所示。控制字节的最高有效位(位 7)必须是逻辑 1,如果它为 0,则不能把数据写入到ds1302 中,位 6 如果为 0,则表示存取日
44、历时钟数据,为 1 表示存取 ram 数据;位 5 至位 1 指示操作单元的地址;最低有效位(位 0)如为 0 表示要进行写操作,为 1 表示进行读操作,控制字节总是从最低位开始输出。表表 3-2 控制字节的含义控制字节的含义7 6 5 4 3 2 1 01ram/cka4a3a2a1a0ram/ck3. 复位通过把输入驱动置高电平来启动所有的数据传送。输入有两种功能:首rstrst先, 接通控制逻辑,允许地址命令序列送入移位寄存器;其次, 提供了终止单rstrst字节或多字节数据的传送手段。当为高电平时,所有的数据传送被初始化,允许对rstds1302 进行操作。如果在传送过程中置为低电平,
45、则会终止此次数据传送,并且 i/orst引脚变为高阻态。上电运行时,在 vcc2.5v 之前, 必须保持低电平。只有在 sclkrst为低电平时,才能将置为高电平。rst4. 数据输入输出在单片机对 ds1302 进行数据读写操作时,所有的读写操作都必须由命令字节来初始化。命令字节的 d7 必须为逻辑 1,如果它为 0,将禁止 ds1302;d6 为逻辑 0 时指定访问时钟/日历数据;为逻辑 1 时指定访问 ram 数据;d5-d1 指定进行输入或输出的特殊寄存器单元地址;d0 为逻辑 0 时指定进行写操作,为逻辑 1 时指定进行读操作。外部处理器向 ds1302 写数据时,在写命令字节 8
46、个 sclk 周期之后,ds1302 会在下 8 个 sclk 周期的上升沿输入数据字节,如果有更多的 sclk 周期,它们将会被忽略。外部芯片从 ds1302 读数据时,跟随在读命令字节 8 个 sclk 周期之后 ds1302会在下 8 个 sclk 周期的下降沿输出数据。需要注意的是:从 ds1302 输出的第一个18数据位发生在命令字节最后一位后的第一个下降沿处,而且在读操作过程中只要保持为高电平状态,如果有额外的 sclk 时钟周期,ds1302 将重新发送数据字节,这rst一操作特性使得 ds1302 具有多字节连续读取能力。除了采用单字节方式进行数据读写外,也可以采用突发方式多字
47、节连续读写。通过对地址 31 寻址(命令位的 d1-d5 均为逻辑 1) ,可以把时钟/日历或 ram 寄存器规定为多字节方式。在多字节方式中读或写从地址 0 的位 0 开始,当以多字节方式写时钟寄存器时,必须按照数据传送的次序写最先的 8 个寄存器。但以多字节方式写 ram时,不必写所有的 31 个字节,不管是否写齐了 31 个字节,所写的每一个字节都会被传送到 ram。在控制指令字输入后的下一个 sclk 时钟的上升沿时数据被写入 ds1302,数据输入从低位即位 0 开始。同样,在紧跟 8 位的控制指令字后的下一个 sclk 脉冲的下降沿读出 ds1302 的数据,读出数据时从低位 0
48、位至高位 7,数据读写时序如图 3-2 所示。图 3-2 数据读写时序5. ds1302 的寄存器ds1302 共有 12 个寄存器,其中有 7 个寄存器与日历、时钟相关,存放的数据位为bcd 码形式。其日历、时间寄存器及其控制字见表 3-3。此外,ds1302 还有年份寄存器、控制寄存器、充电寄存器、时钟突发寄存器及与ram 相关的寄存器等。时钟突发寄存器可一次性顺序读写除充电寄存器外的所有寄存19器内容。ds1302 与 ram 相关的寄存器分为两类,一类是单个 ram 单元,共 31 个,每个单元组态为一个 8 位的字节,其命令控制字为 cohfdh,其中奇数为读操作,偶数为写操作;再一
49、类为突发方式下的 ram 寄存器,此方式下可一次性读写所有的 ram 的 31 个字节,命令控制字为 feh(写) 、ffh(读) 。表表 3-3 ds1302 的日历的日历时钟寄存器及其控制字时钟寄存器及其控制字命令字各位内容寄存器名写操作读操作取值范围76543210秒寄存器80h81h00-59ch10sec sec分寄存器82h83h00-59010min min时寄存器84h85h01-12 或00-2312/24010aphr hr日寄存器86h87h01-28,2930,310010datedate月寄存器88h89h01-1200010mmonth周寄存器8ah8bh01-07
50、00000day年寄存器8ch8dh00-9910 year year秒寄存器的 d7 定义为时钟暂停位,当此位设置为逻辑 1 时时钟振荡器停止使ds1302 进行低功率倍份方式,其消耗电流小于 100na;当此位设置为逻辑 0 时,时钟将被启动。小时寄存器的 d7 定义为 12 或 24 小时方式选择位,当它为高电平时,选择 12 小时方式;当它设置为低电平时表示选择 24 小时方式。在 12 小时方式下,小时寄存器的 d5 用于 am/pm 指示,d5 为逻辑高电平表示 pm,在 24 小时方式下,d5 则是第二个小时位。写保护寄存器的 d7 是写保护位,其余低 7 位置为 0。在对时钟或
51、内部 ram 单元进行写操作前 d7 必须为 0,当 d7 处于高电平状态时,写保护位防止对其它寄存器进20行写操作。涓流充电寄存器用于控制 ds1302 的涓流充电特性。其中,涓流充电选择(tcs)位 d7-d4 控制涓流充电器的选择,只有当 d7-d4 处于 1010 模式时才能使涓流充电器工作,其它所有的模式都将禁止涓流充电。涓流充电二极管选择(ds)位 d3-d2 用于选择连接在 vcc2 和 vcc1 之间的二极管数目,当 ds 为 01 时选择一个二极管,如果为 10 则选择 2 个二极管,ds 为 00 或 11 时涓流充电器被禁止,与 tcs 无关。涓流充电电阻选择(rs)位
52、d1-d0 用于选择连接在 vcc2 和 vcc1 之间的电阻,rs 为 00 时无电阻连接,rs 为 01 时电阻值为 2k,rs 为 10 时为 4k,rs 为 11 时电阻值为 8k。如果 rs 设定为无电阻的 00,那么涓流充电器将被禁止,与 tcs 无关。涓流充电器的二极管和电阻的选择由用户根据电池或超容量电容充电所需的最大电流决定。假定 5.0 系统电源加到 vcc2,而超容量电容接至 vcc1,并编程设置 vcc2和 vcc1 之间连接一个二极管和一个 2k 的电阻,可得到最大电流为:imax=(5.0v-0.7v)/2k=2.2ma时钟/日历和控制寄存器的最后一个单元是时钟/日
53、历突发多字节方式控制字。当时钟/日历字节在多字节方式下工作时,最先的 8 个时钟/日历寄存器可以从地址为 0 的第0 位开始连续地读或写。在指定突发方式多字节连续写时钟/日历寄存器时,如果写保护位设置为高电平,那么没有数据会传送到 8 个时钟/日历寄存器中的任一个。ds1302 与单片机的接口如图 3-3 所示。21ea/vpp31xtal119xtal218rst9p3.7(rd)17p3.6(wr)16p3.2(int0)12p3.3(int1)13p3.4(t0)14p3.5(t1)15p1.0(t2)1p1.1(t2ex)2p1.23p1.34p1.45p1.5(mosi)6p1.6(
54、miso)7p1.7(sck)8(ad0)p0.039(ad1)p0.138(ad2)p0.237(ad3)p0.336(ad4)p0.435(ad5)p0.534(ad6)p0.633(ad7)p0.732(a8)p2.021(a9)p2.122(a10)p2.223(a11)p2.324(a12)p2.425(a13)p2.526(a14)p2.627(a15)p2.728psen29ale/prog30(txd)p3.111(rxd)p3.010gnd20vcc40stc89c58rd+x12x23vcc21gnd4rst5i/o6sclk7vcc18ds13021232.768k15p
55、fc115pfc2vcc3v4.7kr14.7kr24.7kr3vcc图 3-3 ds1302 与单片机接口电路在图 3-3 中,由于 ds1302 采用的是同步串行的工作方式,它与单片机的相接的端口只有三个:sclk,i/o,相对应的接到单片机的 p0.2,p0.1,p0.0,单片机的rstp0 口在用作 i/o 口的时候要接上拉电阻;x1 ,x2 端接的是 32.768khz 的外部晶振;vcc2 作为主电源接到+5v 电源上,而 vcc1 是 ds1302 的后备电源,具有涓流充电的特性,接的是+3v 的电池。基于前述的内容,系统在设计时时钟模块选择了 ds1302。3.1.2 液晶外部
56、时钟模块液晶 12232 要正常工作需要接入频率为 2khz 的外部时钟信号,在本系统中,由74hc14 和电阻 r、电容 c 组成的振荡电路为 12232 提供时钟信号。74hc14 的引脚如图 3-4 所示。221a11y22a32y43a53y6gnd74y84a95y105a116y126a13vcc14u?74hc14图 3-4 74hc14 引脚图74hc14 为有施密特触发器的六反相器,其主要电特性的典型值如表 3-4 所示。表表 3-4 74hc14 电特性电特性型号vttplhtphlpd54/74140.8v15ns15ns15.3mw引出端符号 :1a6a 输入端 1y6
57、y 输出端 逻辑图如图3-5所示。图3-5 74hc14逻辑图极限值:电源电压 . 7v 输入电压: 74hc14. 5.5v 23工作环境温度: 74hc14 070 存储温度 . -65150功能表如表 3-5 所示。表表 3-5 74hc14 功能表功能表inputoutputaylhhl注:y=a 推荐工作条件如表3-6所示。 表表3-6 74hc14工作条件工作条件最小额定最大电源电压 vcc4.75v5v5.25v输入正向阀值电压vit+1.5v1.7v2v输入负向阀值电压 vit-0.6v0.9v1.1v滞后电压 vt0.4v0.8v输出高电平电流 i oh-800a输出低电平电
58、流 i ol16ma74hc14 应用在振荡电路中,如图 3-6 所示。24k1k2k3ea/vpp31xtal119xtal218rst9p3.7(rd)17p3.6(wr)16p3.2(int0)12p3.3(int1)13p3.4(t0)14p3.5(t1)15p1.0(t2)1p1.1(t2ex)2p1.23p1.34p1.45p1.5(mosi)6p1.6(miso)7p1.7(sck)8(ad0)p0.039(ad1)p0.138(ad2)p0.237(ad3)p0.336(ad4)p0.435(ad5)p0.534(ad6)p0.633(ad7)p0.732(a8)p2.021(
59、a9)p2.122(a10)p2.223(a11)p2.324(a12)p2.425(a13)p2.526(a14)p2.627(a15)p2.728psen29ale/prog30(txd)p3.111(rxd)p3.010gnd20vcc40stc89c58rd+1kr111kr121kr13vcc 图 3-6 施密特反相器应用电路该电路产生的时钟信号频率为:110.8ftrc具体电路图如图 3-7 所示。1a11y22a32y43a53y6gnd74y84a95y105a116y126a13vcc1474hc14vss1vdd2vlcd3cl7rd8wr9ret18vled+19vled
60、-20db010db111db212db313db414db515db616db717a04cs15cs2612232-2crvcc图 3-7 液晶的外部时钟电路在图 3-7 中,r 阻值选择 6.3k,c 的电容选择 100f。3.1.3 键盘接口电路系统采用的是独立式键盘结构,这是出于对单片机的端口不够的考虑。为了保证按键在按下时相应的单片机端口为低电平,每个按键都通过上拉电阻接到了 vcc 上,具体的电路如图 3-8 所示7。25 图 3-8 键盘接口电路3.2 系统设计思路系统以 12232 液晶模块作为显示的载体,可以实现比较美观的显示界面。它在实现定时功能的基础上,可以实现数字钟走
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 【正版授权】 ISO 24495-2:2025 EN Plain language - Part 2: Legal communication
- 年保定一模数学试卷
- 朗诵清明诗歌活动方案策划(3篇)
- 壁球馆施工方案(3篇)
- 黑色旅游活动策划方案(3篇)
- 休闲旅游活动策划方案(3篇)
- 江苏企业舞蹈活动策划方案(3篇)
- 动态雕塑施工方案模板(3篇)
- 紫薇田园都市施工方案(3篇)
- 烟感系统安装施工方案(3篇)
- 医学影像检查技术题库含答案
- CJ/T 43-2005水处理用滤料
- 护理十八项核心制度考试题与答案
- 数据标注项目管理制度
- 云南劳动合同续签协议书
- 如何写好作文开头结尾 课件
- 2025安徽农业大学辅导员考试试题及答案
- 井工煤矿风险监测预警处置方案之安全监控系统监测预警处置方案
- 回收拆除废旧设备合同协议书
- 入股买船合同协议书
- 2025四川农商联合银行笔试题库及答案
评论
0/150
提交评论