当前位置:首页 > 微机课设—电子万年历的设计制作
电子万年历的设计与制作 X1,X232.768kHz晶振引脚
GND 地线 RST 复位端
I/O 数据输入/输出端口 SCLK 串行时钟端口 VCC1 慢速充电引脚
VCC2 电源引脚 图2DS1302管脚
图2 DS1302的引脚
3.2.2DS1302接口电路设计
1时钟芯片DS1302的接口电路及工作原理:
图3 DS1302与MCU接口电路
图3为DS1302的接口电路,其中Vcc1为后备电源,Vcc2为主电源。VCC1在单电源与电池供电的系统中提供低电源并提供低功率的电池备份。VCC2在双电源系统中提供主电源,在这种运用方式中VCC1连接到备份电源,以便在没有主电源的情况下能保存时间信息以及数据。
DS1302由VCC1或VCC2 两者中较大者供电。当VCC2大于VCC1+0.2V时,VCC2给DS1302供电。当VCC2小于VCC1时,DS1302由VCC1供电。
9
电子万年历的设计与制作 DS1302在每次进行读、写程序前都必须初始化,先把SCLK端置 “0”,接着把RST端置“1”,最后才给予SCLK脉冲;读/写时序如下图5所示。表-1为DS1302的控制字,此控制字的位7必须置1,若为0则不能对DS1302进行读写数据。对于位6,若对时间进行读/写时,CK=0,对程序进行读/写时RAM=1。位1至位5指操作单元的地址。位0是读/写操作位,进行读操作时,该位为1;进行写操作时,该位为0。控制字节总是从最低位开始输入/输出的。表-2为DS1302的日历、时间寄存器内容:“CH”是时钟暂停标志位,当该位为1时,时钟振荡器停止,DS1302处于低功耗状态;当该位为0时,时钟开始运行。“WP”是写保护位,在任何的对时钟和RAM的写操作之前,“WP”必须为0。当“WP”为1时,写保护位防止对任一寄存器的写操作。
2、DS1302的控制字
DS1302的控制字如表2所示。控制字节的高有效位(位7)必须是逻辑1,如果它为0,则不能把数据写入DS1302中,位6如果0,则表示存取日历时钟数据,为1表示存取RAM数据;位5至位1指示操作单元的地址;最低有效位(位0)如为1表示进行读操作,为0表示进行写操作。控制字节总是从最低位开始输出。
表2 DS1302的控制字格式 1
RAM/CK A4
A3
A2
A1
A0
RD/WR
3、数据输入输出(I/O)
在控制指令字输入后的下一个SCLK时钟的上升沿时,数据被写入DS1302,数据输入从低位即位0开始。同样,在紧跟8位的控制指令字后的下一个SCLK脉冲的下降沿读出DS1302的数据,读出数据时从低位0位到高位7。如下图4所示。
图4DS1302读/写时序图
4、DS1302的寄存器AM
10
———
电子万年历的设计与制作 DS1302有12个寄存器,其中有7个寄存器与日历、时钟相关,存放的数据位为BCD码形式,其日历、时间寄存器及其控制字见表3。
表3 DS1302的日历、时间寄存器
写寄存器 读寄存器 Bit7 80H 82H 84H
81H 83H 85H
CH 12/24
——
Bit6 Bit5 10秒 10分
Bit7 Bit3 Bit2
秒 分
Bit1 Bit0
0 10
——
时 时
AM/PM
86H 88H 8AH 8CH 8EH
87H 89H 8BH 8DH 8FH
WP
0
0 0 0
0 0 0 10年
0
0
0
10日 0 0
10月 0
0
0 日 月 星期 年
0
0
此外,DS1302 还有年份寄存器、控制寄存器、充电寄存器、时钟突发寄存器及与RAM相关的寄存器等。时钟突发寄存器可一次性顺序读写除充电寄存器外的所有寄存器内容。 DS1302与RAM相关的寄存器分为两类:一类是单个RAM单元,共31个,每个单元组态为一个8位的字节,其命令控制字为C0H~FDH,其中奇数为读操作,偶数为写操作;另一类为突发方式下的RAM寄存器,此方式下可一次性读写所有的RAM的31个字节,命令控制字为FEH(写)、FFH(读)。
3.3温度芯片DS18B20接口设计与性能分析
3.3.1DS18B20性能简介
1.DS18B20的主要特性
DS18B20温度传感器是美国DALLAS半导体公司最新推出的一种改进型智能温度传感器,与传统的热敏电阻等元件相比,它能直接读出被测温度,并且可根据实际要求通过简单的编程实现9-12位的数字值读数方式。现场温度直接以\一线总线\的数字方式传输,大大提高了系统的抗干扰性。适合于恶劣环境的现场温度测量,如:环境控制、设备或过程控制、测温类消费电子产品等。与前一代产品不同,新的产品支持3V~5.5V的电压范围,使系统设计更灵活、方便。其性能特点可归纳如下:
1独特的单线接口仅需要一个端口引脚进行通信;
2测温范围在-55℃到125℃,分辨率最大可达0.0625℃;
11
电子万年历的设计与制作 3采用了3线制与单片机相连,减少了外部硬件电路;
4零待机功耗;
5可通过数据线供电,电压范围在3.0V-5.5V; 6用户可定义的非易失性温度报警设置; 7报警搜索命令识别并标志超过程序限定温度(温度报警条件)的器件; 8负电压特性,电源极性接反时,温度计不会因发热烧毁,只是不能正常工作。
2.DS18B20工作原理
DS18B20的读写时序和测温原理与DS1820相同,只是得到的温度值的位数因分辨率不同而不同,且温度转换时的延时时间由2s减为750ms。DS18B20测温原理如图5所示。图中低温度系数晶振的振荡频率受温度影响很小,用于产生固定频率的脉冲信号送给计数器1。高温度系数晶振随温度变化其振荡率明显改变,所产生的信号作为计数器2的脉冲输入。计数器1和温度寄存器被预置在-55℃所对应的一个基数值。计数器1对低温度系数晶振产生的脉冲信号进行减法计数,当计数器1的预置值减到0时,温度寄存器的值将加1,计数器1的预置将重新被装入,计数器1重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到计数器2计数到0时,停止温度寄存器值的累加,此时温度寄存器中的数值即为所测温度。图5中的斜率累加器用于补偿和修正测温过程中的非线性,其输出用于修正计数器1的预置值。
斜率累加器 预置 计数比较低温度系数晶振 计数器1 预置 增加 减到温度寄存停止 高温度系数晶振 计数器2 减到LSB 位置/清除
图5 DS18B20测温原理
3.3.2DS18B20接口电路设计
如6图所示,该系统中采用数字式温度传感器DS18B20,具有测量精度高,电路连接简单特点,此类传感器仅需要一条数据线进行数据传输,用P3.7
12
共分享92篇相关文档