数字钟设计实习报告
![数字钟设计实习报告](https://img.360docs.net/img2e/15gb20et0tlcmmii826jf4mlm84w7dqj-e1.webp)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数字钟设计实习报告
目录
1. 绪论 (2)
2. 课程设计 (2)
2.1 设计目的 (2)
2.2 具体设计要求 (2)
3. 系统功能原理及电路图 (2)
3.1 AT89S52单片机简介 (2)
3.2 74HC595简介 (4)
3.3接线方式 (4)
3.4显示电路的选择与设计 (4)
3.5设计电路原理图 (5)
4. 系统软件设计与编程 (5)
4.1 秒表程序流程图 (5)
4.2 设计程序 (6)
4.3 调试过程 (11)
5.实习心得 (12)
6.附录 (12)
1.绪论
随着单片机技术的不断发展,单片机在日用电子产品中的应用越来越广泛,而本文设计并制作了一款基于AT89S52 的8位数码管显示的数字钟,其电路简单,软硬件结构模块化,易于实现。
2.课程设计
2.1 设计目的
通过课程设计,能够进一步熟悉AT89S52 单片机的结构及工作原理,掌握单片机的接口技术及相关外围芯片的外特性,控制方法,以及以单片机为核心的电路设计的基本方法和技术,了解相关电路参数的计算方法。通过实际程序设计和调试,逐步掌握模块化程序设计方法和调试技术。通过完成一个包括电路设计和程序开发的完整过程,使我们了解开发单片机应用系统的过程,为今后从事的相关工作打下基础。
2.2 具体设计要求
设计一个数字时钟,显示小时,分钟,秒,用8位LED显示,如:17-00-00,并且实现12和24小时之间的转换,可根据个人情况加上其他扩展功能。
3.系统功能原理及硬件电路
3.1 AT89S52单片机简介
AT89S52为ATMEL 所生产的一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flsah存储器。
(一)、AT89S52主要功能列举如下:
1、拥有灵巧的8位CPU和在系统可编程Flash
2、晶片内部具时钟振荡器(传统最高工作频率可至12MHz)
3、内部程序存储器(ROM)为8KB
4、内部数据存储器(RAM)为256字节
5、32 个可编程I/O 口线
6、8 个中断向量源
7、三个16 位定时器/计数器
9、全双工UART串行通道
(二)、AT89S52各引脚功能介绍:
(三)时序
AT89S52典型的指令周期(执行一条指令的时间称为指令周期)为一个机器周期,一个机器周期由六个状态(十二振荡周期)组成。每个状态又被分成两个时相P1和P2。所以,一个机器周期可以依次表示为S1P1,S1P2……,S6P1,S6P2。通常算术逻辑操作在P1时相进行,而内部寄存器传送在P2时相进行。
对于单周期指令,当操作码被送入指令寄存器时,便从S1P2开始执行指令。如果是双字节单机器周期指令,则在同一机器周期的S4期间读入第二个字节,若是单字节单机器周期指令,则在S4期间仍进行读,但所读的这个字节操作码被忽略,程序计数器也不加1,在S6P2结束时完成指令操作。图1.7的(a)和(b)给出了单字节单机器周期和双字节单机器周期指令的时序。89S52指令大部分在一个机器周期完成。乘(MUL)和除(DIV)指令是仅有的需要两个以上机器周期的指令,占用4个机器周期。对于双字节单机器周期指令,通常是在一个机器周期内从程序存储器中读入两个字节,唯有MOVX指令例外。MOVX是访问外部数据存储器的单字节双机器周期指令。在执行MOVX指令期间,外部数据存储器被访问且被选通时跳过两次取指操作。图1.7中(c)给出了一般单字节双机器周期指令的时序[9]。
3.2 74HC595简介
74HC595是硅结构的CMOS器件,兼容低电压TTL电路,遵守JEDEC标准。74HC595是具有8位移位寄存器和一个存储器,三态输出功能。移位寄存器和存储器是分别的时钟。数据在SHcp的上升沿输入到移位寄存器中,在STcp的上升沿输入到存储寄存器中去。如果两个时钟连在一起,则移位寄存器总是比存储寄存器早一个脉冲。移位寄存器有一个串行移位输入(Ds),和一个串行输出(Q7’),和一个异步的低电平复位,存储寄存器有一个并行8位的,具备三态的总线输出,当使能OE时(为低电平),存储寄存器的数据输出到总线。
8位串行输入/输出或者并行输出移位寄存器,具有高阻关断状态。三态。
将串行输入的8位数字,转变为并行输出的8位数字,例如控制一个8位数码管,将不会有闪烁。
3.3接线方式:
74LS138译码器 ENA→P1.0 ENB→P1.1 ENC→P1.2
时钟 CLK→P2.0
数码管输入 DIN→P2.1
3.4显示电路的选择与设计
对于数字显示电路,通常采用液晶显示或数码管显示。对于一般的段式液晶屏,需要专门的驱动电路,而且液晶显示作为一种被动显示,可视性差,不适合远距离观看;对于具有驱动电路和单片机接口的液晶显示模块(字符或点阵),一般多采用并行接口,对单片机的接口要求较高,占用资源多;另外,AT89S52单片机本身无专门的液晶驱动接口。而数码管作
宜、易于购买等优点,而且有远距离视觉效果,很适合夜间或是远距离操作。因此,本设计的显示电路采用8段数码管作为显示介质
本设计采用共阴极数码显示管做显示电路,由于采用的是共阴的数码显示管,所以只要数码管的a、b、c、d、e、f、g、h引脚为高电平,那么其对应的二极管就会发光,使数码显示管显示0~9的编码见表1.1。
表1.1 共阴极数码显示管字型代码
字型共阳极代码字型共阳极代码
00C0H 592H
10F9H 682H
20A4H 70F8H
30B0H 880H
499H990H
3.5 设计电路原理图:见附录
4.系统软件设计与编程
4.1数字钟程序流程图
主程序流程图如下: