基于单片机的万年历设计毕业设计文档格式.docx
- 文档编号:18985165
- 上传时间:2023-01-02
- 格式:DOCX
- 页数:82
- 大小:225.23KB
基于单片机的万年历设计毕业设计文档格式.docx
《基于单片机的万年历设计毕业设计文档格式.docx》由会员分享,可在线阅读,更多相关《基于单片机的万年历设计毕业设计文档格式.docx(82页珍藏版)》请在冰豆网上搜索。
重点要推进超大规模集成电路和新技术的产业化。
我国集成电路市场潜力巨大,是因为近年来因特网持续爆炸式增长、移动通信终端设备市场的迅猛发展,以及数码相机、手持电脑等电子产品市场的兴旺,尤其是移动通信业的高速发展成为推动半导体产业新一轮发展的强大动力。
信息产业的高速发展,为集成电路产业提供了巨大的市场空间。
未来几年,我国集成电路市场需求主要来自以下几个方面:
1.
通信运营业的高速发展对集成电路提出新的需求;
2.
二是通信运营业的高速发展对集成电路提出新的需求;
3国民经济和社会信息化建设给电子信息制造业创造了一个新市场;
4.
随着我国经济结构的战略性调整,传统产业改造升级,提高设计和制造水平推进机电一体化,为各行业提供先进和成套的技术准备,又会给集成电路产业带来新的市场。
综观中国集成电路的设计概况,可以看到从20世纪80年代末开始,经过90年代初的创业期,现正进入它的发展期,21世纪将是中国设计业的成熟期。
2器件简介
2.1LED显示器
2.1.1LED显示器的结构
LED显示块是发光二极管显示字段的显示器件。
在单片机应用系统中通常使用的是七段LED。
七段LED内部由7个条形发光二极管和一个圆点发光二极管组成。
图2-1
本设计中采用的是绿色七段数码管,每一段数码管内部相当于有一个发光二极管。
发光二极管具有单向导电性,只有当外加的正向电压使得正向电流足够大时才发光,它的开启电压比普通二极管的大,红色的在1.8V-2.2V之间,绿色的约为2V。
正向电流越大,发光越强。
内部结构如图2-1。
2.1.2LED的接线形式
根据内部发光二极管的接线形式分成共阴极型(公共点接地)和共阳极型(公共点接电源)。
计算机与七段显示器的接口,分成静态显示接口和动态显示接口。
静态接口是每个七段显示器单独用一组寄存器控制,将其公共点接地。
动态接口使用两组寄存器。
几个显示器的七段用一组寄存器控制,该寄存器称作段选寄存器。
另一组寄存器控制这几个七段显示器的公共点,控制这几个显示器逐个循环点亮。
适当选择循环速度,利用人眼“视觉暂留”效应,使看上去好像这几个七段显示器同时在显示一样。
控制公共点的寄存器称为位选寄存器。
本次设计中采用共阳极型接法,公共级通过一个PNP三极管与+12V的电源相连。
接口采用动态显示。
2.2AT89C52简介
AT89C52是美国ATMEL公司生产的低电压、高性能的CMOS8位单片机,片内含8kbytes的可反复擦写的只读程序存储器(PEROM)和256bytes的随即存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,与标准的MCS-51指令系统及8052产品引脚兼容,片内置通用8位中央处理器(CPU)和Flash存储单元,功能强大。
AT89C52单片机适合于许多较为复杂控制应用场合。
2.2.1AT89C52主要性能参数:
1.与MCS-51产品指令和引脚完全兼容
2.具有8k字节可重擦写Flash闪速存储器
3.1000次擦写周期
4.全静态操作:
0Hz-24MHz
5.三级加密程序存储器
6.256×
8字节内部RAM
7.32个可编程I/O口线
8.3个16位定时器/计数器
9.8个中断源
10.低功耗空闲和掉电方式
11.可编程串行UART通道
2.2.2AT89C52单片机的功能特性概述:
AT89C52提供以下标准功能:
8k字节Flash闪速存储器,256字节内部RAM,32个I/O口线,3个16位定时/计数器,一个6向量两级中断结构,一个全双工串行通信口,片内震荡器及时钟电路。
同时,AT89C52可降至0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式。
空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。
掉电方式保存RAM中的内容,但震荡器停止工作并禁止其他所有部件工作直到下一个硬件复位。
AT89C52单片机与MCS-51兼容,它与MCS-51的功能基本相同。
a.MCS-51单片机的中断系统
(1)中断源
MCS-51单片机是一个多中断源的单片机,有五个中断源:
外部
中断0、定时器0中断、外部中断1、定时器1中断和串行接收或发送中断。
各中断源的中断处理程序入口地址如下表2-1所示:
表2-1中断向量表
中断源
入口地址
外部中断0
0003H
定时器0
000BH
外部中断1
0013H
定时器1
001BH
串行口
0023H
(2)中断控制
1.中断的开放或禁止是由中断允许寄存器IE控制的。
IE的格式如下:
EA
ES
ET1
EX1
ET0
EX0
EA-中断总允许位。
EA=1,开放总中断,而各个中断源的中断请求是允许还是禁止,分别由各自的中断允许位确定;
EA=0,禁止一切中断。
ES-串行口中断允许位。
ET1和ET0分别是定时器T1和T0的中断允许位。
EX1和EX0分别是外部中断1(INT1)和外部中断0(INT0)的中断允许位。
以上五个中断允许位的意义是:
0为禁止中断,1为允许中断。
2.中断源优先级控制-中断优先级寄存器IP。
MCS-51单片机有高、低两个中断优先级,5个中断源可由程序设置为高优先级中断或低优先级中断,实现二级中断嵌套。
一个正在执行的低优先级中断源的中断服务程序,能被高优先级中断源所中断,但不能被同级别的另一个中断源所中断。
MCS-51单片机的5个中断源的优先级由中断优先级寄存器IP的相应位设定。
IP格式如下:
PS
PT1
PX1
PT0
PX0
PS是串行口的中断优先级控制位。
PT1和PT0分别是定时器T1和T0的中断优先级控制位。
PX1和PX0分别是外部中断INT1和INT0的中断优先级控制位。
中断优先级控制位的意义是:
0为设定为低优先级中断源;
1为设定为高优先级中断。
如果同优先级的多个中断请求同时出现时,则按MCS-51单片机的CPU查询次序确定那个中断请求被响应,其查询次序为:
IE0、TF0、IE1、TF1、RI或TI。
b.MCS-51的定时系统
在控制系统中,常常要求有一些实时时钟以实现定时或延时控制,如定时中断、定时检测、定时扫描等等,也往往要求有计数器能对外部事件计数。
MCS-51单片机有2个定时器,称为定时器0(T0)和定时器1(T1)。
(1)定时器的结构
MCS-51单片机的定时器由计数器0、计数器1、方式控制寄存器和定时器控制寄存器组成。
计数器0和计数器1分别由8位计数器TH0、TL0和TH1和TL1构成。
TH0、TL0、TH1、TL1是不能位寻址的特殊功能寄存器,通过对TH0、TL0、TH1、TL1的初始化编程来控制T0和T1的计数初值。
MCS-51单片机的两个计数器TH0、TL0和TH1、TL1可以构成16位的计数器、13位的计数器和8位的计数器。
计数器是定时器T0和T1的核心,它可以对引线T0和T1来的外部事件计数;
也可以对单片机的机器周期计数。
一个机器周期等于12个振荡脉冲周期,因此计数频率为振荡频率的1/12。
这样,不但可以根据计数值计算出定时时间,也可以反过来按定时时间的要求计算出计数器的预置值。
计数器是加法计数器,所以预置的计数初值应为计数值的补码。
(2)定时器的工作方式
MCS-51单片机的T0有方式0、方式1、方式2和方式3四种工作方式。
T1有方式0、方式1和方式2三种工作方式。
工作方式控制寄存器TMOD:
TMOD寄存器是不能位寻址的特殊功能寄存器,用于控制T1和T0的工作方式,各位的定义如下:
GATE
C/T
M1
M0
TMOD的高半字节和低半字节的定义相同,高半字节用于控制T1,低半字节用于控制T0,其中,GATE是门控位。
GATE为1时,定时器的计数器受外部引线INT0或INT1输入电平的控制,输入高电平计数,输入低电平停止计数,这时可以用于测量在INTx引线出现的正脉冲宽度;
GATE为0时,定时器的计数不受INT0或INT1引线的控制。
C/T是定时器和计数器选择位。
C/T为1,选择计数器方式,计数器THi和TLi对Ti引线输入的外部事件计数;
C/T为0,选择定时器方式,计数器THi和TLi对机器周期进行计数。
M1和M0是定时器的工作方式选择位。
M1和M0这2位有00-11四个状态,分别选择方式0(13位定时器)、方式1(16位定时器)、方式2(8位自动重装载定时器)和方式3(T0分成两个8位的定时器)。
2.3DS1302芯片
2.3.1DS1302的性能特性:
1.实时时钟,可对秒、分、时、日、周、月以及带闰年补偿的年进行计数;
2.用于高速数据暂存的31×
8位RAM
3.最少引脚的串行I/O;
4.2.5~5.5V电压工作范围;
5.2.5V时耗电小于300nA;
6.用于时钟或RAM数据读/写的单字节或多字节(脉冲方式)数据传送方式;
7.简单的3线接口
8.可选的慢速充电(至Vcc1)的能力
DS1302时钟芯片包括实时时钟/日历和31字节的静态RAM。
它经过一个简单的串行接口与微处理器通信。
实时时钟/日历提供秒、分、时、日、周、月和年等信息。
对于小于31天的月和月末的日期自动进行调整,还包括闰年校正的功能。
时钟的运行可以采用24h或带AM(上午)/PM(下午)的12h格式。
采用三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或RAM数据。
DS1302有主电源/后备电源双电源引脚:
Vcc1在单电源与电池供电的系统中提供电源,并提供低功率的电池备份;
Vcc2在双电源系统中提供主电源,在这种运用方式中Vcc1连接到备份电,以便在没有主电源的情况下能保存时间信息以及数据。
DS1302由Vcc1或Vcc2中较大者供电。
当Vcc2大于Vcc1+0.2V时,Vcc2给DS1302供电;
当Vcc2小于Vcc1时,DS1302由Vcc1供电。
2.3.2DS1302数据操作原理
DS1302在任何数据传送时必须先初始化,把RST脚置为高电平,然后把8位地址和命令字装入移位寄存器,数据在SCLK的上升沿被输出。
无论是读周期还是写周期,开始8位指定40存器中哪个将被访问到。
在开始8个时钟周期,把命令字节装入移位寄存器之后,另外的始终周期在读操作时输出数据,在写操作时写入数据。
时钟脉冲的个数在单字节方式下为8加8,在多字节方式下为8加字节数,最大可达248字数。
如果在传送过程中置RST脚为低电平,则会中止本次数据传送,并且I/O引脚变为高阻态。
上电运行时,在Vcc≧2.5V之前,RST脚必须保持低电平。
只有在SCLK为低电平时,才能将RST置为高电平。
DS1302的引脚及内部结构图如图2.1所示,表2.1为各引脚的功能。
图2.1DS1302引脚图及内部结构
图2.2DS1302的控制字
DS1302的控制字如图2.2所示。
控制字节的最高有效位(位7)必须是逻辑1;
如果它为0。
则不能把数据写入到DS1302中。
位6如果为0。
则表示存取日历时钟数据;
为1表示存取RAM数据。
位5~1(A4~A0)指示操作单元的地址。
最低有效位(位0)如为0,表示要进行写操作;
为1表示进行读操作。
控制字节总是从最低位开始输入/输出。
为了提高对32个地址的寻址能力(地址/命令位1~5=逻辑1),可以把时钟/日历或RAM寄存器规定为多字节(burst)方式。
位6规定时钟或RAM,而位0规定读或写。
在时钟/日历寄存器中的地址9~31或RAM寄存器中的地址31不能存储数据。
在多字节方式中,读或写从地址0的位0开始。
必须按数据传送的次序写最先的8个寄存器。
但是,当以多字节方式写RAM时,为了传送数据不必写所有31字节,不管是否写了全部31字节,所写的每一字都将传送至RAM。
引脚号
引脚名称
功能
1
Vcc2
主电源
2,3
X1,X2
震荡源,外接32.768kHz晶振
4
GND
地线
5
RST
复位/片选线
6
I/O
串行数据输入/输出端(双向)
7
SCLK
串行数据输入端
8
Vcc1
后备电源
表2.1DS1302引脚功能
图2.3DS1302数据读/写时序
DS1302共有12个寄存器,其中有7个寄存器与日历、时钟相关,存放的数据位为BCD码形式。
其日历、时间寄存器及其控制字见表2.2,其中奇数为读操作,偶数为写操作。
时钟暂停:
秒寄存器的位7定义位时钟暂停位。
当它为1时,DS1302停止振荡,进入低功耗的备份方式。
通常在对DS1302进行写操作时(如进入时钟调整程序),停止振荡。
当它为0时,时钟将开始启动。
AM-PM/12-24[小]时方式:
[小]时寄存器的位7定义为12或24[小]时方式选择位。
它为高电平时,选择12[小]时方式。
在此方式下,位5是AM/PM位,此位是高电平时表示PM,低电平表示AM。
在24[小]时方式下,位5为第二个10[小]时位(20~23h)。
寄存器名
命令字节
取值范围
寄存器内容
写
读
3
2
秒寄存器
80H
81H
00~59
CH
10s
SEC
分寄存器
82H
83H
10min
MIN
[小]时寄存器
84H
85H
00~23或01~12
12/24
10A/P
HR
日期寄存器
86H
87H
01~28,29,30,31
10DATE
DATE
月份寄存器
88H
89H
01~12
10M
MONTH
周寄存器
8AH
8BH
01~07
DAY
年寄存器
8CH
8DH
00~99
10YEAR
YEAR
表2.2内部寄存器地址和内容
DS1302的晶振选用32.768kHz,电容推荐值为6pF,因为振荡频率较低,也可以不接电容,对记时精度影响不大。
2.474LS164-八位移位寄存器
2.4.174LS64简介
74LS164是一个8位移位寄存器,起其主要电特性的典型值如下:
型号
fm
Pn
54/74164
36MHz
185mW
54/74LS164
80mW
当清除(CLEAR)为低电平时,输出端(QA~QH)均为低电平。
串行数据输入端(A,B)可控制数据。
当A、B任意一个为低电平,则禁止新数据输入,在时钟端(CLOCK)脉冲上升沿作用下Q0为低电平。
当A、B有一个为高电平,则另一个就允许输入数据,并在CLOCK上升沿作用下决定Q0的状态。
引出端符号:
CLOCK时钟输入端
CLEAR同步清楚输入端(低电平有效)
A,B串行数据输入端
QA~QH输出端
其管脚图如图2.3:
图2.374LS164管脚图
2.4.274LS164逻辑介绍:
1.极限值:
电源电压………………………7V
输入电压………………………5.5V
工作环境温度:
54164………………………-55~125°
C
74164………………………-0~70°
储存温度………………………-65~150°
2.其真值表如表2.3
操作模式
输入
输出
复位
MR
A
B
Q0
Q1~Q7
移位
L
×
Q0~Q6
H
表2.374LS164特性表
H—高电平L—低电平×
—任意电平
3.时序图:
时序图如图2.4
图2.474LS164时序图
3硬件电路
3.1线路的设计
根据本课题的要求:
数字钟要显示现在的日历时间包括年、月、日、星期、时、分、秒和是否为闰年。
所以,需要选用19个共阳极数码管,且选用3片74LS164。
数码管要通过74LS164送显,所以19个数码管必须排成3排。
设计思想:
按照系统设计功能的要求,初步确定设计系统由电源转换模块、主控制模块、时钟模块、显示模块、键盘接口模块共5个模块组成,电路系统构成框图如图3.1所示:
(89C52)
主控制模块
电源模块
键扫描电路
DS1302
时钟电路
显示电路
图3.1电路系统构成框图
3.1.1电源转换模块
日常用到的都是220V的交流电源,所以,需要用变压器将其转换为线路设计中所用到的直流电源。
此转换后的直流电源为+12V,而线路设计中许多芯片所用到的电压为+5V,因此,还需有12V到5V的转换电路。
此转换采用7805(三端稳压器)来完成,转换图如下:
7805
Vin=12V
Vout=5V
470uF470uF104pF
图3-17805电压转换电路
当Vin>
5V时,Vout端可得到稳定的5V电压。
图中,104pF电容的作用是去高频干扰;
3.1.2主控制模块
此模块由实时时钟芯片DS1302和AT89C52组成。
DS1302只有3个管脚SCLK,I/O,RST分别接AT89C52的P3.2,P3.3,P3.4。
通过串行输入并行输出来送显示模块。
3.1.3显示模块
显示部分采用普通的共阳数码管显示,采用动态扫描,以减少硬件电路。
考虑到一次扫描19位数码管显示时会出现闪烁情况,设计时19个数码管分为3排同时扫描。
第一排6个数码管分别为千年、百年、十年、年、十月、月,第二排6个数码管分别为十时、时、十分、分、十秒、秒,第三排7个数码管分别为星期、阴历十月、阴历月、阴历十日、阴历日、十日、日。
显示时采用串行口输出段码,用3片74LS164来驱动3排数码管,这样扫描一次只需7ms。
74LS164内部为8个D触发器,用以实现数据的串行移位。
单片机一串行口方式0(移位寄存器方式)输出数据,3片74LS164作为3排共阳数码管的串/并转换显示借口。
74LS164为TTL单向8位移位寄存器,可以实现串行输入,并行输出。
其中A、B(第1、2管脚)为串行数据输入端,2个引脚按逻辑“与”运算规律输入信号,共一个输入信号时可以并接,共同作为输入脚。
CP(第8脚)为时钟输入端,可连接到串行口的TXD端。
每一个时钟信号的上升沿加到CP端时,移位寄存器移一位。
8个时钟脉冲过后,8位二进制数全部移入74LS164中。
MR(第9脚)为复位端,当该脚为低电平时,移位寄存器各位复0;
只有当它为高电平时,时钟脉冲才起作用。
Q1~Q8(第3~6和10~13引脚)并行输出端分别数码管的h~a(因为串行口从低
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 单片机 万年历 设计 毕业设计