基于某51单片机的万年历的设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
单片机课程实训SCM PRACTICAL TRAINING
目录
第一部分课程设计任务书 (1)
一、课程设计题目 (1)
二、课程设计时间 (1)
三、实训提交方式 (1)
四、设计要求 (1)
第二部分课程设计报告 (2)
一、单片机发展概况 (2)
二、MCS-51单片机系统简介 (2)
三、设计思想 (3)
四、硬件电路设计 (3)
1. 总体设计 (3)
2. 晶振电路 (4)
3. 复位电路 (4)
4. DS1302时钟电路 (5)
5. 温度采集系统电路 (5)
6. 按键调整电路 (6)
7. 闹钟提示电路 (6)
五、软件设计框图 (7)
六、程序源代码 (8)
1. 主程序 (8)
2. 温度控制程序 (11)
3. 日历设置程序 (13)
4. 时钟控制程序 (18)
5. 显示设置程序 (20)
七、结束语 (23)
八、课程设计小组分工 (23)
九、参考文献 (23)
第一部分课程设计任务书
一、课程设计题目
用中小规模集成芯片设计制作万年历。
二、课程设计时间
五天
三、实训提交方式
提交实训设计报告电子版与纸质版
四、设计要求
(1)显示年、月、日、时、分、秒和星期,并有相应的农历显示。(2)可通过键盘自动调整时间。
(3)具有闹钟功能。
(4)能够显示环境温度,误差小于±1℃
(5)计时精度:月误差小于20秒。
第二部分课程设计报告
一、单片机发展概况
单片机诞生于20世纪70年代末,它的发展史大致可分为三个阶段:
第一阶段(1976-1978):初级单片机微处理阶段。该时期的单片机具有 8 位CPU,并行 I/O 端口、8 位时序同步计数器,寻址范围 4KB,但是没有串行口。
第二阶段(1978-1982):高性能单片机微机处理阶段,该时期的单片机具有I/O 串行端口,有多级中断处理系统,15 位时序同步技术器,RAM、ROM 容量加大,寻址范围可达 64KB。
第三阶段(1982-至今)位单片机微处理改良型及 16 位单片机微处理阶段民用电子产品、计算机系统中的部件控制器、智能仪器仪表、工业测控、网络与通信的职能接口、军工领域、办公自动化、集散控制系统、并行多机处理系统和局域网络系统。
二、MCS-51单片机系统简介
MCS-51系列单片机产品都是以Intel公司最早的典型产品8051为核心构成的。MCS-51单片机由CPU 、RAM 、ROM 、I/O接口、定时器/计数器、中断系统、内部总线等部件组成。8051单片机的基本性能有:
◆8位CPU;
◆布尔代数处理器,具有位寻址能力;
◆128B内部RAM,21个专用寄存器;
◆4KB内部掩膜ROM;
◆2个16位可编程二进制加1定时器/计数器;
◆32个(4×8位)双向可独立寻址的I/O口;
◆1个全双工UART(异步串行通信口);
◆5个中断源,两级中断结构;
◆片内振荡器及时钟电路,晶振频率为1.2MHz~12MHz;
◆外部程序/数据存储器寻址空间均为64KB;
◆111条指令,大部分为单字节指令;
◆单一+5V电源供电,双列直插40引脚DIP封装。
三、设计思想
整体设计以单片机技术为核心,采用C语言进行软件设计,增加了程序的可读性和可移植性,为了便于扩展和更改,软件的设计采用模块化结构。程序先向LCD更新时钟芯片的时间与温度传感器的时间,然后进行初始化工作。程序由一个主函数,两个定时器中断程序,一个时钟设置子程序,一个农历设置子程序,一个温度设置子程序,一个延时子程序,一个调时子程序,一个显示子程序构成。程序通过按键扫描程序来确定是否调用中断程序来对时间进行调整。用一子程序完成时分的调整,通过循环扫描四个按键的电平变化来判断对应按键是否按下,并带有去抖动功能,四个按键分别有增加,减小,退出与功能选择的作用。通过功能选择时钟设置与闹钟设置,使用加或减按键进行预置,完成后可点退出键完成操作。
可分为以下几个功能模块:
1)主程序:定时器中断初始化、时钟与温度更新程序与键盘监控。
2)计时:为定时器中断服务子程序,完成刷新计时缓冲区的功能。
3)农历:由阴历换算对照表得出阳历并显示。
4)闹钟:采用定时器中断方式实现闹钟与整点报时。
5) 温度:由温度传感器将温度传送到LCD显示。
6)设置:由按键设置闹钟时间或时钟时间。
7)键盘扫描:判断是否有键按下,并确定键号。
8)LCD显示:完成8位动态显示。
四、硬件电路设计
1. 总体设计
系统包括单片机主控模块,温度传感器采集模块,日历时钟模块,按键调整模块,蜂鸣器模块,闹钟模块。如图1所示为系统设计图。
图1 系统设计图
如图2所示为系统仿真图。
图2 系统仿真图
2. 晶振电路
如图3所示,51单片机的内部有一个用于构成振荡器的高增益反相放大器,它的输入端为XTAL1引脚,输出端为XTAL2引脚,两个跨接石英晶体及两个电容就可以构成稳定的自激振荡器。电容器通常取30pF左右。
图3 晶振电路图4 复位电路
3. 复位电路
往单片机的复位引脚上输入24个时钟周期以上的高电平,即执行复位操作。按键复位是指系统在运行时,按下一个开关,就能在RST引脚产生一段时间的高电平,使系统复位,常见的按键复位电路如图4所示。对12MHz晶振频率而言,电路中C取10pF,R取1KΩ。