1、1 单片机单片机课程设计课程设计报告报告 题目 单片机的电子钟设计 姓 名:0.0 所在学院: 计算机与电气自动化学院 所学专业: 电气工程及其自动化 班 级: 电气工程 1003 学 号: 201002140221 指导教师: 。 。 。 。 。 完成时间: 2013 年 9 月 4 日 2 目录目录 一 设计任务与要求. 3 1.1 设计目的 3 1.2 设计指标 3 1.3 设计要求 3 二 总体设计方案. 4 2.1 系统总体设计 4 2.2 各模块的选择 4 2.3 软件系统功能模块及功能介绍 5 三 单元电路分析与软件设计. 6 3.1 使用单片机资源情况 6 3.2 电子钟软件系
2、统程序流程图 6 3.3 电子钟软件系统程序 8 四 总原理图与元器件清单 11 4.1 电子钟总原理图 . 11 4.2 元器件清单 . 12 五 仿真 12 六 心得体会 13 七 参考文献 14 3 基于单片机的电子钟课程设计 一一 设计任务与要求设计任务与要求 1.1 设计目的 本电路应用了AT89C51芯片作为译码器实现了LED动静态显示的基本原理,电 路原理简单,价格低廉,可用于多位LED显示,从而提高设计能力和实践动手能 力,为以后从事电子电路设计、研发电子产品打下良好的基础。 1.2 设计指标 设计一个具有特定功能的电子钟。 该电子钟上电或按键复位后能自动显示系 统提示符“P.
3、” , 进入时钟准备状态;第一次按电子钟启动/调整键,电子钟从 0 时 0 分 0 秒开始运行,进入时钟运行状态;再次按电子钟启动/调整键,则电 子钟进入时钟调整状态,此时可利用各调整键调整时间,调整结束后可按启动/ 调整键再次进入时钟运行状态。 1.3 设计要求 采用单片机内部定时器,用软件对其进行秒、分、时的计数,单片机无法产 生 1s 的定时时间,但是可以用硬件定时和软件计数相结合的方法实现,采用中 断方式,即通过中断服务程序进行计数器溢出次数的累计,把定时器/计数器设 定为 62.5ms,计数溢出 16 次就可以得到 1s,计 60 次为 1 分,60 分计 60 次则 为 1 小时,
4、然后通过数码管动态刷新显示出来,再设四个按键进行时间的调整, 一个键用作启动/调整键,其余三个分别用于时、分、秒的调整。方案二不需要 外部扩展芯片,电路较简单,成本较低。 4 二二 总体设计方案总体设计方案 2.1 系统总体设计 1. 用 AT89C51单片机及接口电路设计一个电子计时器。 (1) 系统硬件设计:根据任务要求,完成单片机最小系统及其扩展设计,组成 功能完整的系统。 (2) 系统软件设计:根据数字电子计时器功能,完成控制软件的编写与调试, 并对数码显示进行控制。 2.2 各模块的选择 2.2.1 主模块的选择 AT89C2051 单片机,带有 2KB Flash 可编程、可擦除只
5、读存储器(E2PROM) 的低压、高性能 8 位 CMOS 微型计算机。拥有 15 条可编程 I/O 引脚,2 个 16 位 定时器/计数器,6 个中断源,可编程串行 UART 通道,并能直接驱动 LED 输出。 为了完成时钟设计,应用 AT89C2051 单片机完全可以实现。 2.2.2 时钟芯片的选择 5 DS12887 与 DS1216 芯片都有内嵌式锂电池作为备用电池;X1203 引脚少, 没有嵌入式锂电池,跟 DS1302 芯片功能相似,只是相比较之下,X1203 与 STC89C52 搭配使用时占用 I/O 口较多。 DS1643 为带有全功能实时时钟的 8K8 非易失性 SRAM
6、,集成了非易失性 SRAM、实时时钟、晶振、电源掉电控制电路 和锂电池电源,BCD 码表示的年、月、日、星期、时、分、秒,带闰年补偿。 同样,DS1643 拥有 28 只管脚,硬件连接起来占用微处理器 I/O 口较多,不方 便系统功能拓展和维护。故而从性价比和货源上考虑,本设计采用实时时钟日 历芯片 DS1302。 2.2.3 显示模块的选择 本实验中要显示的信息比较多, 选择数码管显示的话需要的数码管数量将会 很多,将是线路复杂,PCB 布线混乱,因此选择 7SE-MPX4-CA 作为显示模块。 XTAL2 18 XTAL1 19 ALE 30 EA 31 PSEN 29 RST 9 P0.0/AD0 39 P0.1/AD1 38 P0.2/AD2 37 P0.3/AD3 36 P0.4/AD4 35 P0.5/AD5 34 P0.6/AD6 33 P0.7/AD7 32 P1.0 1 P1.1 2 P1.2 3 P1.3 4 P1.4 5 P1.5 6 P1.6