基于单片机的万年历

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

单片机课程设计

题目基于单片机的万年历

目录

1 绪论 (1)

1.1设计目的 (1)

1.2 发展现状 (1)

1.3 解决问题 (1)

2基于单片机的万年历主要元器件介绍 (2)

2.1本设计所需的主要元器件 (2)

2.2 STC89C52RC单片机 (2)

2.2.1单片机主要特性 (2)

2.2.2单片机引脚说明 (4)

2.3 DS1302时钟芯片 (4)

2.4 LCD1602 (6)

2.5独立按键 (7)

3基于单片机的万年历的软件设计 (7)

3.1 DS1302时钟芯片程序设计 (8)

4 总结 (9)

参考文献 (11)

附录1:总体电路原理图 (12)

附录2:总程序 (13)

附录3:实物图 (25)

1 绪论

1.1设计目的

培养和锻炼在学习完本课后综合运用所学理论知识,解决实际工程设计和应用问题的能力。通过课程设计,要求熟悉和掌握仿真系统的软件设计方法、设计步骤,以及硬件的设计方法、设计步骤,得到仿真系统应用方面的初步练习。

本设计主要是采用51单片机来实现。自己动手设计与制作可以对硬件的结构和功能有更深的认识,并与软件结合,以达到理论与实践更好的结合,进一步提高综合运用所学知识进行设计的能力。这是对自己大学四年的学习的检验,具有重要的意义。

1.2 发展现状

目前市场上的电子万年历并不是采用51单片机作为主控制器的,基于单片机的万年历一般是学生和单片机爱好者在进行设计,谈不上占有市场。也许就是这样,研究单片机万年历的人不在少数,并且都在努力。努力不是单方面的,单片机的功能也应该要提高,STC89C52单片机就是这样的例子,其功能虽然没有大幅度提高,但使用起来更方便了。我相信,在不久的将来肯定会有功能更强大成本更低的单片机出现,给我们的设计带来更多的便利。

1.3 解决问题

本课题主要通过单片机的功能和应用,利用Keil[1]编程软件和Proteus仿真软件进行设计,并制作实物。设计要达到预期的效果要解决以下问题:

(1)认真设计好万年历的逻辑原理图;

(2) 熟练使用C语言,运用Keil编程软件进行软件设计;

(3) 在Proteus仿真平台上,对程序进行编译仿真;

(4) 认真仔细地对万年历进行组装焊接;

2基于单片机的万年历主要元器件介绍

2.1本设计所需的主要元器件

(1)单片机:STC89C52RC;

(2)时钟芯片:DS1302;

(3)液晶:LCD1602;

(4)按钮开关。

2.2 STC89C52RC单片机

本设计采用STC89C52RC单片机,8K字节可编程闪烁存储器。STC89系列单片机是MCS-51系列单片机的派生产品,它们在指令系统、硬件结构和片内资源上与标准8052单片机完全兼容。STC89系列是以8051为基核开发出的CMOS工艺单片机,DIP封装系列与8051为pin-to-pin(引脚对引脚)兼容。STC89系列单片机高速,低功耗,其程序写入时可通过串口采用STC-ISP.exe软件下载,不占用用户资源,学习单片机时较好的选择。

2.2.1单片机主要特性

(1) CPU:由运算和控制逻辑组成,同时还包括中断系统和部分外部特殊功能寄存器。中央处理器(CPU)是整个单片机的核心部件,是8位数据宽度的处理器,能处理8位二进制数据或代码,

CPU负责控制、指挥和调度整个单元系统协调的工作,完成运算和控制输入输出功能等操作。

(2) RAM:用于存放要读写的数据,如运算的中间结果、最终结果以及欲显示的数据。8051内部有128个8位用户数据存储单元和128个专用寄存器单元,它们是统一编址的,专用寄存器只能用于存放控制指令数据,用户只能访问,而不能用于存放用户数据,所以,用户能使用的RAM只有128个,可存放读写的数据,运算的中间结果或用户定义的字型表。

(3) ROM:8051共有4096个8位掩膜ROM,用于存放用户程序,原始数据或表格。

(4) I/O口:四组8位并行I/O口(P0、P1、P2和P3),既可用作输入,也可用作输出。

(5) T/C定时/计数器:两个16位的可编程定时/计数器,既可以工作在定时模式,也可以工作在计数模式。

(6) 5个中断源的中断控制系统:8051具备较完善的中断功能,有两个外中断、两个定时/计数器中断和一个串行中断,可满足不同的控制要求,并具有2级的优先级别选择。

(7) 全双工串行口:一个全双工UART(通用异步接收发送器)的串行I/O口,用于实现单片机之间或单片机与微机之间的串行通信;

(8) 片内振荡器和时钟产生电路,石英晶体和微调电容需要外接。最高振荡频率取决于单片机型号及性能。

2.2.2单片机引脚说明

图2-1 STC89C52RC封装引脚图

STC89C52RC的引脚封装和8051的引脚封装是一样的,均采用40Pin封装的双列直插DIP结构。下图是它们的引脚配置,40个引脚中,Pin40为正电源,Pin20为地线;外置石英振荡器的时钟线Pin18和Pin19两根;4组8位共32个I/O口(P0、P1、P2和P3),中断口线与P3口线复用。本设计只是实现简单的读写功能,不需要用到I/O口的第二功能。单片机引脚封装如图2.1所示。

2.3 DS1302时钟芯片

市场上可以选择的时钟芯片很多,功能也不尽相同,价格各异。DS1302是美国DALLAS公司推出的一种串行接口实时时钟芯片。芯片内部具有可编程日历时钟和31个字节的静态RAM,它可以对年、月、日、星期、时、分、秒进行计时。DS1302引

相关文档
最新文档