电子万年历系统设计方案.docx
- 文档编号:11564904
- 上传时间:2023-06-01
- 格式:DOCX
- 页数:65
- 大小:353.55KB
电子万年历系统设计方案.docx
《电子万年历系统设计方案.docx》由会员分享,可在线阅读,更多相关《电子万年历系统设计方案.docx(65页珍藏版)》请在冰点文库上搜索。
电子万年历系统设计方案
电子万年历系统设计方案
1.1STC89C52简介
STC89C52完全兼容MCS-51还有新的功能,比如新增两级中断优先级,多一个外中断,置EEPRO,M512B存等。
还支持ISP下载,不用编程器,只要一个MAX23和一些廉价的元件就能写程序,可擦写10万次。
比51起最大的优点能支持在线下载,在线烧写程序,而不必专门买昂贵的编程器,只需要ISP下载线就可以了。
据指针
12SO字节
SRAM
~1L
816M2>64k宇竹闪存
2k・sic字节
ISP引导码
P0
8051徴处理器
四个&隹并行瑞口
P1
速(G-90M),崗可靠
/
ETROM
A/D
D白怡flash
石加价
1STC功能逻辑图
P2n
P40—P43四个附送
IO媪口
1.2性能参数
STC单片机比51单片机性能有以下优越性:
(1)高抗静电(ESD),6000伏静电测试,直接打在芯片管脚上,安然无恙
⑵超强抗干扰,轻松过2KV/4KV快速脉冲干扰(EFT)。
⑶超强加密,性能良好。
⑷STC5V单片机,宽电压,5V-3.8V给复位信号,正常工作。
(5)STC单片机,Power直接在用户系统上用ISP在线下载方式,将用户程序
⑹下载进STC单片机Down掉电时功耗<0.1uA(C版本)。
(7)I/O口输入/输出口经过特殊处理,很多干扰是从I/O进去的,每个I/O均有对VCC对GN二级管箝位保护。
(8)单片机部的电源供电系统经过特殊处理,很多干扰是从电源进去的。
T2/P1.0
T2EX/PL1
P1.2
PL3
PL.4
P1.5
Pt6
Pl.7
Rsr
RXLVP30
TXD/P3,1
INTO/F3.2而1/P3,3
T0/P3.4
I1./P5.5
WP3.6
R^/PS.7
XTAL2
XTAll
vss
120
21
图2STC89C52引脚图
nnH
VCC
PO.0ADO
1PO.1/ADLJPO.2
PO.3鱼D3
FO.4.ADI
7■■■■AD7
IP2.4A12_]P23,A11
1P2.21:
j
二IP2,1/-A9二IP2.0AS
鉴于SCT89C5和AT98C5引I脚分布相同,以上仅介绍SCT89C5一些优于AT98C5的
性能,在此,就不对单片机多做介绍了,详细参数可以参考SCT89C52PD资料图,或
者相关书籍,或者上网查阅相关,在此,推荐一官方:
.mcu-memory.
2应用系统设计
2.1系统功能说明
根据家居生活中的实际需要,万年历应该具有如下功能。
1、时间显示时间显示是万年历设计最重要的功能。
万年历应该不仅能准确显示时、分、秒,而且还要能够显示年、月、日和星期。
2、时间调整万年历在第一次使用时,需要根据当前时间进行时间调整,设定起初始时间,设置完成之后,它会在设定值基础上进行准确的计时和显示。
在万年历断电或出现其他故障排除后,也需要根据当前时间进行时间调整。
3、定时闹钟定时闹钟是万年历的一个辅助功能。
可以通过键盘设定定时时间,这样当万年历运行到设定的定时时间时,会发出语音提示,提示时间为1分钟。
可以根据需要设定闹钟功能的开启和关闭。
4、温度显示温度显示是万年历的另外一个辅助功能。
万年历上设置有一个温度传感器,用于检测环境温度,提示用户注意温度的变化,做好诸如防寒保暖等措施。
5、掉电运行万年历采用市电或者电池供电。
当发生停电或者电池量耗尽等情况时,它通过置的纽扣电池给时钟供电以保持正确的时钟数据,但关闭其他部分的电源,这样在来电或者更换电池之后不必重新设定时间。
在市电运行正常时,可以根据需要更换备用的纽扣电池而不影响时钟运行。
2.2应用系统设计
图3万年历系统结构框图
223设备选型
本设计采用STC89C52乍为控制系统的核心。
按照图1所确定的系统结构,选择
合适的功能部件,以完成完整的系统控制电路设计。
控制系统需要选择实时时钟日历
单元、温度传感器单元、键盘和显示单元三部分。
表2是万年历设计具体的设备选型
表2万年历设计设备选型表
器件
编号
器件名称
型号
基本参数
1
单片机
STC89C52
前面以介绍
2
I2c接口日历芯片,自动日历到
2099年,
BCD码年、
实施日历芯片
SD2303
月、日、周、时、分、秒输入
/输出,带两路定时闹
钟,年误差小于2.5分钟
3
温度传感器
DS1722
SPI/三线串行接口温度传感器,
测量围
-55°C〜
120°C,8〜12位可编程分辨率,测量误差小于
2.0°C
4
键盘单兀
独立键盘
7个可独立键盘
5
显示单元
数码管
16个7段数码管
2.2.4控制面板设计
控制面板即万年历外形图,如图4所示
万年历
日日日阱日日月日日日
星期日inr丿烂日日日
日日时日日分
I时间设負IPRI上一位I
图4万年历控制面板
在万年历的控制面板上设置有16个数码管,分别用于显示年、月、日、星期、温度、时和分。
显示格式如下。
年:
4位数码管显示年,如2008表示2008年。
月:
2位数码管显示月,如06表示6月份。
日:
2位数码管显示日,如10表示10日。
星期:
3位数码管显示星期,如7表示星期日。
温度:
3位数码管显示温度,如H28表示+28E,L05表示—5C。
时:
2位数码管显示时,如23表示23点。
分:
2位数码管显示分,如59表示59分。
为了进行时间设定和闹钟设定,在控制面板下方设置有7个按键,分别为“时间设置”建、“闹铃设置”键、“+”键、“―”键、“上一位”键、“下一位”键和“确定”键,其功能如下所示。
当需要设置时间时,按下“时间设置”键,这时万年历停止计时并将时间清零,
在年的最高位上的小数点点亮表示进行年最高位设置,用户可以通过“+”或者“一”
来调整数字,调整完后按“下一位”,则年的最高位小数点熄灭而次高位小数点点亮,用户按照上述方法设置次高位……直到时间设置完。
注意,温度不可以设置。
设置完
后按“确定”键,用户设定值将存储进入单片机并开始以此时间计时。
当需要设置闹铃时,按下“时间设置”键,这时万年历仍继续计时而面板上的时间将全部显示为“0”,同时时间的小时高位小数点电亮,用户按照时间设定的方式设置闹钟的时和分,按下“确定”键后,闹铃被存储进单片机。
当万年历走时走到设定闹铃时间时,蜂鸣器发出报警声。
闹铃的设置时间可以通过按“闹铃设置”键来查看,任何不符合走时的闹铃设置将关闭闹铃功能。
如设置“06时20分”将关闭闹铃功能。
这是取消闹铃功能的一种方法。
3硬件设计
万年历的硬件设计电路如图5所示。
下面对各部分分别予以说明
10
V
CC
ESET
V
CC
3
PN
■Il
CC
1
K
8
P?
0
S1T3
22
V
CC
PDPDPDPDPDPDPDPDPBPBPBPBPBPBPBPB
N
CDD
0uF
VN
SSC
20
19
18
17
16
P3
ST9C52
AAA
VCGN
4
7
8
Gvv
ndM°dadd
SC
lkOdSd;
2
4dI
2BI
AT—
J
■Il
10
SD
23
03
K*
4
SDSC
INTNTBL
S;常熾0綁rxk)(sc)m)i肅那叩
(TO(TO
SCSC
2)P)^CPCPCPCPCPC
(AD(ADADADAD(AD(AD(AD
7)F6)F5)F4)P)F2)P)P0)PA7A6A5A4A3A2A1A0
V
CC
R
P1
CDREF
C7C6543210
10
V
1;C
4
2
3
5
6
一3
N
N
PN
卑N
qon
PN
6
hc16
V
TCCclr
9
D301
D302
D101
CLK
QAQBQCQDQEQFQGQH
74U
沪6
3D303
4D304
5D305
图5硬件电路图
9|
8
6
12
C
C
C
C
3
2口
2
1二
A
B
C
D
E
F
Dp
lD102
D103
7D104
4D105
2D106
1Q107
9
12
二9
一8
6・
C3
C2
C1'一
A
B
C
D
E
F
TDp
C
C
C
C
3匸
2
2
1(:
A
B
C
D
E
F
Dp
2
10
11
d/
D*
A
B
C
D
E
F
——DG
D301
7
4
2
10
5
D302
3.1实时时钟电路设计
万年历采用支持两线式串行接口、带温度补偿的高精度实时时钟日历芯片
SD2303,它与STC89C5单片机的连接如图6所示
ED2303
VDD
SCX
NC
SE>A
NG
[NTB
vss
]NTA
20
*X2§
13
pr时r丐
3&
3c
37
3t
3匕
也
r
22
22
松
2f
27
29
n
图6实时时钟电路
3.1.1实时时钟芯片SD2303简介
SD2303是一种具有置晶振、支持两线串行接口的高精度实时时钟芯片。
该系列
芯片可保证时钟精度为土5ppm(在25±1°C下),即年误差小于2.5分钟;该芯片置时钟精度调整功能,可以在很宽的围校正时钟的频率偏差,能以最小分辨率3.052ppm
来进行校正,通过与温度传感器的结合可以设定适应温度变化的调整值,实现在宽问
围高精度的计时功能;置电池、串行NVSEAM其中置的一次性SRAM擦写次数可达100亿次。
该系列芯片可满足对实时时钟芯片的各种需要,是高精度实时时钟的理想选择。
SD2303具有如下特点:
(1)低功耗:
典型值0.5uA(VDD=3.0V。
(2)工作电压为1.8〜5.5V,工作温度为-40〜85C。
(3)年、月、日、星期、时、分、秒BCD码输入输出,并可通过独立的地址访问各时间寄存器。
(4)自动日历到2099年(包括闰年自动换算功能)。
(5)可设定并自动重置的两路定时闹钟功能。
(6)周期性中断脉冲输出:
2Hz、1Hz、每分、小时、月输出可选择不同波形的中断脉冲。
(7)可控的32768Hz方波信号输出。
(8)置时钟精度数字调整功能。
(9)30秒时间调整功能。
(10)部晶振停振检测功能:
保证时钟的有效性。
(11)置总线1秒自动释放功能,保证了时钟数据的有效性及可靠性。
(12)置电源稳压,部及时电压可低至1.2V。
(13)置晶振,出厂前已对时钟进行校准,保证精度土5ppm即时钟误差小于2.5分钟。
(14)工业级型号为SD2303API封装形式为8-DIP封装。
3.1.2SD2303的引脚设置
SD2303实时时钟日历芯片的引脚配置如图7所示。
INTRA|
|1
0
8|VDD
NC
rr
7]SDA
NC
|3
6|SCL
VSS
|±
51INTRB
图7SD2303的引脚配置
表3给出了SD2303的引脚功能说明。
表3SD2303引脚功能表
引脚编号
符号
功能
备注
1
INTRA
报警中断
A路输出
N沟道开路输出,
需接上拉电阻
2
NC
没有作用
3
NC
没有作用
4
VSS
地
5
INTRB
报警中断
B路输出
N沟道开路输出,
需接上拉电阻
6
SCL
IIC串行时钟输入
7
SDA
IIC串行时钟输入/输出
N沟道开路输出,需接上拉电阻
8
VDD
电源
3.1.3SD2303的部寄存器
SD2303将时间数据和控制命令存储在不同地址的寄存器,具体的地址分配如表4所示。
表4SD2303寄存器列表
部地址
描述
功能
0x00
秒寄存器
以BCD码形式计数与存储秒
0x01
分寄存器
以BCD码形式计数与存储分
0x02
时寄存器
以BCD码形式计数与存储时
0x03
周寄存器
以BCD码形式计数与存储周
0x04
天寄存器
以BCD码形式计数与存储天
0x05
月寄存器
以BCD码形式计数与存储月
0x06
年寄存器
以BCD码形式计数与存储年
0x07
时间调整
晶振参数修正及外部晶振选择控制
0x08
分定时A
存储定时器A的分数据
0x09
时定时A
存储定时器A的时数据
0x0a
天定时A
存储定时器A的天数据
0x0b
分定时B
存储定时器B的分数据
0x0c
时定时B
存储定时器B的时数据
0x0d
天定时B
存储定时器B的天数据
0x0e
控制寄存器1
闹铃使能、中断输出选择及周期性中断选择
0x0f
控制寄存器2
时间显示格式选择、中断与报时标志及停振检测
(1)秒寄存器(部地址0x00)
D7
D6
D5
D4
D3
D2
D1
D0
操作
一
S40
S20
S10
S8
S4
S2
S1
写
0
S40
S20
S10
S8
S4
S2
S1
读
0
一
一
一
一
一
一
一
默认
秒计数围为0x00〜0x59(BCD码格式),当计数从0x59变为0x00时,分寄存器值加1.默认操作是指当XSTP位为1(上电、掉电或者停振后再起振)时,执行读操作。
(2)分寄存器(部地址0x01)。
D7D6D5D4D3D2D1D0操作
分计数围为0x00〜0x59,当计数从0x59变为0x00时,时寄存器值加1
(3)时寄存器(部地址0x02)。
D7
D6
D5
D4
D3
D2
D1
D0
操作
一
一
H20/P_A
H10
H8
H4
H2
H1
写
0
0
H20/P_A
H10
H8
H4
H2
H1
读
0
0
一
一
一
一
一
一
默认
时计数围为0x01〜0x12(12小时制)或0x00〜0x23(24小时制)。
当计数从11PM
变成12AM(12小时制)或0x23变成0x00(24小时制)时,天寄存器值加1。
(4)周寄存器(部地址0x03)。
D7
D6
D5
D4
D3
D2
D1
D0
操作
一
一
一
一
一
W4
W2
W1
写
0
0
0
0
0
W4
W2
W1
读
0
0
0
0
0
一
一
一
默认
周计数围为0x00〜0x06,其中0x01〜0x06表示星期1至星期6,0x00表示星期天。
当天计数加1时,星期计数也加1。
(5)天寄存器(部地址0x04)。
D7
D6
D5
D4
D3
D2
D1D0
操作
一
一
D20
D10
D8
D4
D2D1
写
0
0
D20
D10
D8
D4
D2D1
读
0
0
一
一
一
一
一一
默认
天计数围为:
0x01〜
-0x31
(一月、
三月、
、五月、
七月、八月、
十月、十二月)
0x01〜
7x30
(四月、
六月-
、九月、
十一月)
0x01〜
7x29
(闰年二月)
0x01〜
-0x28
(平年二月)
(6)月寄存器(部地址
0x05)。
D7
D6
D5
D4
D3
D2
D1D0
操作
一
一
D20
D10
D8
D4
D2D1
写
0
0
D20
D10
D8
D4
D2D1
读
0
0
一
一
一
一
一一
默认
月寄存器围为0x01〜0x02,当计数从0x12变成0x01时,年寄存器值加1.
(7)月寄存器(部地址0x05)。
D7
D6
D5
D4
D3
D2
D1
D0
操作
Y80
Y40
Y20
Y10
Y8
Y4
Y2
Y1
写
Y80Y40Y20
Y10Y8
Y4
Y2
Y1
读
默认
年寄存器围为0x00〜0x99,其中0x00、0x04、0x08…0x92、
(8)时间调整寄存器(部地址0x07)。
0x96
为闰年。
D7D6D5
D4D3
D2
D1
D0
操作
XSL_F6F5
F4F3
F2
F1
F0
写
XSL_F6F5
F4F3
F2
F1
F0
读
默认
位7:
XSL-位为晶振选择为。
SD2303置
茅晶振,
此位必须固定为
0。
位6〜位0:
时间调整位。
时间调整电路是在当秒计数到0x00、0x20、0x40时刻,根据预先设定的数据(F5〜F0)改变1秒时钟的计数个数。
通常每32768个脉冲位1秒(对寄存器预定初值,才能激活整个调整电路)。
当F6为0时,产生1秒的寄存器计数脉冲将增加为32768+[(F5、F4、F3、F2、F1、F0)-1]*2个;当F6为1时,产生1秒的寄存器计数脉冲将增加为32768-[(/F5、/F4、/F3、/F2、/F1、/F0)+1]*2个。
当(F6、F5、F4、F3、F2、F1、F0)预设为(*、0、0、0、0、*)时,产生1秒的寄存器计数脉冲个数不变。
当(F6、F5、F4、F3、F2、F1、F0)=(0、1、0、1、0、0、1)且当时钟运行到
0x00、0x20、0x40秒时刻时,寄存器计数脉冲变为32768+(41-1)*2+32848个;
当(F6、F5、F4、F3、F2、F1、F0)=(1、1、1、1、1、1、0)且当时钟运行到0x00、0x20、0x40秒时刻时,寄存器计数脉冲变为32768-(1+1)*2+32764个;
当(F6、F5、F4、F3、F2、F1、F0)=(0、0、0、0、0、0、1)且当时钟运行到0x00、0x20、0x40秒时刻时,寄存器计数脉冲个数不变;
因为每20秒增加或者减少的计数脉冲个数最少为2个,故时钟调整寄存器的最小调整精度为2/(32768*20)=3.015ppm
时钟调整电路仅仅是调整时钟走时,并不影响晶振本身频率调整,故32768Hz的
脉冲输出不会改变。
(9)闹铃A分寄存器(部地址0x08)。
D7
D6
D5
D4
D3
D2
D1
D0
操作
一
AM40
AM20
AM10
AM8
AM4
AM2
AM1
写
一
AM40
AM20
AM10
AM8
AM4
AM2
AM1
读
0
默认
闹铃A分寄存器计数围同分寄存器
(10)闹铃A时定时器(部地址0x09)
D7
D6
D5
D4
D3
D2
D1
D0
操作
一
一
AH20/P_A
AH10
AH8
AH4
AH2
AH1
写
0
0
AH20/P_A
AH10
AH8
AH4
AH2
AH1
读
0
0
一
一
一
一
一
一
默认
D5位在12小时制中置0表示AM置1表示PM在24小时制中表示小时的十位在12小时制中,午夜的零点应该设置为0x12,中午0点应该设置为0x32。
(11)闹铃A周定时器(部地址0x0a)o
D7
D6
D5
D4
D3
D2
D1
D0
操作
一
AW6
AW5
AW4
AW3
AW2
AW1
AW0
写
一
AW6
AW5
AW4
AW3
AW2
AW1
AW0
读
0
一
一
一
一
一
一
一
默认
闹铃A周定时器的AW&AW0位对应星期6至星期1以及星期天。
如置位AW6和
AW(位,表示在星期六和星期天闹铃起作用。
当AW&AW(全部位0时,关闭闹铃。
(12)闹铃B分寄存器(部地址0x0b)o
D7D6D5D4D3D2D1D0操作~
-—BM40__BM20__BM10__BM8BM4BM2BM1写
—BM40BM20BM10BM8BM4BM2BM1读
0———————默认
闹铃B分寄存器围同闹铃A寄存器。
(13)闹铃B时定时器(部地址0x0c)o
D7D6D5D4D3D2D1D0操作
——BH20/P_A__BH10__BH8BH4__BH2BH1写
00BH20/P_ABH10BH8BH4BH2BH1读
00——————默认
闹铃B时定时器围同闹铃A时定时器。
(14)闹铃B周定时器(部地址OxOd)。
D7D6D5D4D3D2D1D0操作
-—BW6BW5__bW4Bw3__BW2BW1BW0写
—BW6BW5BW4BW3BW2BW1BW0读
0———————默认
闹铃B周定时器围同闹铃A周定时器。
(15)控制寄存器1(部地址0x0e)o
D7
D6
D5
D4
D3
D2
D1
D0
操作
AALE
BALE
SL2
SL1
TEST
CT2
CT1
CT0
写
AALE
BALE
SL2
SL1
TEST
CT2
CT1
CT0
读
0
0
0
0
0
0
0
0
默认
位7:
A
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 电子 万年历 系统 设计方案