51单片机万年历

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

目录

第1章总体方案论证及工作原理 (5)

第2章硬件系统的设计 (6)

第3章软件系统的设计 (12)

第4章系统测试与仿真 (23)

第5章设计总结 (24)

参考文献 (24)

1总体方案论证及工作原理

1.1总体方案选择

1.1.1 单片机芯片选择方案和论证

采用AT89S52作为硬件核心。片内ROM全部采用Flash ROM;以3V的超低压工作,与MCS-51系列单片机完全该芯片内部存储器为8KB ROM 存储空间,同样具有AT89C51的功能。

1.1.2 显示模块的选择和论证

传统的LED数码管具有:低能耗、低损耗、低压、寿命长、耐老化、防晒、防潮、防火、防高(低)温,对外界环境要求低,易于维护,同时其精度比较高,称重轻,精度可靠,操作简单。数码管采用BCD编码显示数字,程序编译容易,资源占用较少。

1.1.3 键盘模块的选择和论证

独立式键盘是指直接用I/O口线构成的单个按键电路。独立式按键电路配置灵活,软件结构简单。

1.1.4 总体方案论证

该万年历电路由单片机AT98S52、键盘接口电路、显示接口电路及时钟电路和复位电路构成,总原理框图如图1.1所示。

图1.1 总原理图

1.2功能要求说明及工作原理

1.2.1 功能要求说明

本次设计所设计的万年历在功能上具有一般万年历的固有功能,即能比较准确显示时间外,还具有温度计的功能。

1.2.2 工作原理

万年历的运行主要是利用单片机定时/计数器的工作和中断服务的作用完成计时功能的。首先时钟电路产生单片机工作时所需要的时钟信号,这是单片机能够正常工作的前提,而单片机有无定时以及定多长的时间,这些还需要我们人为的确定。先要有“秒”的计时,而单片机内部定时器是达不到“秒”数量级的定时的,所以我要多次定时,我们人为在确定工作方式的之后,再计算出定时的初值,这就可以实现所谓的定时了。如果定时时间到了的话,那么单片机会自动地产生中断使程序转向中断服务程序执行,中断服务程序执行完了就会返回原程序,等待下一次定时时间的到来再产生中断。在此基础上,单片机就会按照人为设定的程序执行下去。只完成对秒的计数,才能能完成其他时间量的计数。

当然,单片机如果要执行多种不同的计时功能的话,还需要选择多种不同的工作方式,这样才不会使单片机产生混乱。万年历的基本计时单位是秒,而秒表的基本计时单位却是毫秒了,因而我们把定时器的初始时间设计为50ms,将其乘以20便可得到我们的时间秒单位。本设计是采用复合定时方式,一个定时间一个就去计数,合作完成一秒的定时。

2 硬件系统的设计

2.1硬件系统各模块功能介绍

2.1.1 AT89S52芯片介绍

AT89S52是一种低功耗高性能CHMOS 8位单片机,管脚如图所示。

片内含4Kbytes ISP的可反复擦写1000次Flash只读程序存储器,128bytes的随机存取数据存储器(RAM)。

AT89S52提供了8K字节Flash ,256字节RAM,32线I/O口,3个16位定时器/计数器,6向量两极中断,一个双工串行口,片内根据振荡器和始终电路等标准功能。此外,AT89S52设有静态逻辑,并支持软件选择的两种节电运行方式、空闲方式使CPU停止工作,而允许RAM、定时器/计数器、串行口和中断系统继续工作。掉电方式下,片内振荡器停止工作,由于之中被冻结,一切能都停止,只有片内RAM的内容被保存,直到硬件复位才恢复正常工作。

(1)AT89S52的结构框图

AT89S52结构框图如图2.2所示:

(2)引脚介绍:

/输入/输出口线:

P 0.0~P 0.7 :P0口8位双向口线;P 1.0~P 1.7 :P1口8位双向口线;P 2.0~P 2.7 :P2口8位双向口线;P 3.0~P 3.7 :P3口8位双向口线。

/ALE 地址锁存控制信号:

在系统扩展时,ALE 用于控制把P 0口输出低8位地址送锁存器锁存起

来,以实现低位地址和数据的隔离。此外由于ALE 是以晶振六分之一的固定频率输出的正脉冲,因此可作为外部时钟或外部定时脉冲使用。

/PSEN 外部程序储器读选取通信号:

在读外部ROM 时/PSEN 有效(低电平),以实现外部ROM 单元的读操作。 /EA 访问程序存储器控制信号:

当/EA 信号为低电平时,对ROM 的读操作限定在外部程序存储器;而当/EA 信号为高电平时,则对ROM 的读操作是从内部程序存储器开始,并可延至外部程序存储器。

-RST 复位信号:

当输入的复位信号延续2个机器周期以上高电平时即为有效,用以完成单片机的复位初始化操作。

-XTAL 1和XTAL 2 外接晶体引线端:

当使用芯片内部时钟时,此二引线端用于外接石英晶体和微调电容;当使用外部时钟时,用于拉外部的时钟脉冲信号。

-GND 地线

-VCC +5V 电源

(3)信号引脚的第二功能:

由于工艺及标准化等原因,芯片的引脚数目是有限制的,例如MCS —51系列把芯片引脚数目限定为40条,但单片机为实现其功能所需要的信号数目却远远超过此数,因此就出现了需要与可能的矛盾。因此,给一些信号引脚赋以双重功能。P 3的8条口线都定义有第二功能,如表2.1所示:

表2.1 P3口第二功能图

(4)总线结构

AT89S52的管脚除了电源、复位、时钟接入、用户I/O口部分P

3

外,其余管脚都是为实现系统扩展而设置的。这些管脚构成了三总线形式,即:

1) 地址总线(AB):地址总线宽度为16位,因此,其外部存储器直接

地址外围为64K字节。16位地址总线由P

经地址锁存器提供低8位地址

(A

0~A

7

);P

2

口直接提供高8位地址(A

8

~A

15

)。

2) 数据总线(DB):数据总线宽度为8位,由P

口提供。

3) 控制总线(CB):由部分P

3

口的第二功能状态和4根独立控制线

RESET、EA、ALE、PSEN组成。

2.1.2 时钟电路

时钟电路用来产生单片机工作所需要的时钟信号,单片机本身就是一个复杂的同步时序电路,为了保证同步工作方式的实现,电路应在唯一的时钟信号控制下严格地按时序进行工作。通过在芯片的外部XTAL1和XTAL2两个引脚跨接晶体振荡器和两个微调电容,形成反馈电路,就构成了一个稳定的自激振荡电路。时钟电路为单片机产生时钟脉冲序列,本设计中采用的晶振频率为12MHz。如图2.3所示。

相关文档
最新文档