单片机课程设计报告基于MCS-51单片机的时钟设计.doc
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
单片机课程设计报告 设计课题:基于MCS-51单片机的时钟设计 专业班级: 小组成员: 指导教师: 设计时间: 目录 设计任务与要求 3 1.基本设计要求 3 2.选作项目 4 相关硬件结构概述 4 1.硬件结构原理 4 2.相关电路图: 7 软件结构概述 8 程序清单 10 程序调试 17 课程总结 17 参考文献 19 设计任务与要求 1.基本设计要求 (1)在ZY15MCU12BD型综合单片机实验箱的硬件结构上编写软件完成设计。也可以在其它 MCS—51单片机硬件板上完成,或自行设计硬件并制做完成。 (2)程序的首地址应使目标机可以直接运行,即从0000H开始。在主程序的开始部分必须 设置一个合适的栈底。程序放置的地址须连续且靠前,不要在中间留下大量的空闲地址 ,以使目标机可以使用较少的硬件资源。 (3)6位LED数码管从左到右分别显示时、分、秒(各占用2位),采用24小时标准计时制 。开始计时时为000000,到235959后又变成000000。 (4)在键盘上选定3个键分别作为小时、分、秒的调校键。每按一次键,对应的显示值便 加1。 分、秒加到59后再按键即变为00;小时加到23后再按键即变为00。在调校时均不向上一 单位进位 (例如分加到59后变为00,但小时不发生改变)。 (5) 软件设计必须使用MCS- 51片内定时器,采用定时中断结构,不得使用软件延时法。 (6)上机调试通过。 2.选作项目 有能力的同学,在做完以上设计后,可选作此项设计内容。 (1)另设三个键,分别作小时、分、秒的减1调校。 (2)在以上设计的基础上,修改程序制作一个电子秒表。分、秒各占用2位显示,1/10秒 、1/100秒各占用1位显示。设定二个键分别作启动/停止、清零。 (3)在做完(2)后,将时钟与秒表合二为一,并且在同时使用时互不影响。即可在时钟与 秒表之间任意切换,而不影响走时、计秒。 相关硬件结构概述 硬件结构原理 该课程设计基于STC89C52单片机为核心完成的,外加少量其他辅助器件,硬件结构比 较简单。 由于本电路结构比较简单,单片机I/O口完全够用,故我们将6位8段LED直接和单片机 相连。硬件结构中的6位8段LED显示器,采用动态方式驱动。我们采用的是共阳电路,一 位LED显示器显示内容一段时间,然后下一位LED显示器显示内容一段时间……,周而复始 。只要刷新频率不小于50Hz,就可以获得清晰稳定的显示效果。 为了增加和位选相连接的I/O口的驱动能力,直接接上上拉电阻。在本设计中,只使用了 6个按键。复位键,模式设定键、2个上下调节键。 1、定时器/计数器 定时器/计数器简称定时器,其作用主要用于生产各种时间间隔、记录外部脉冲与事件的 数量等,是微机中最常用、最基本的部件之一。89C52单片机有2个16位的定时器/计数器 0(T0)和定时器1(T1).T0由2个定时寄存器TH0和Th0构成,T1则由Th1和TL1构成,他 们分别映射在特殊功能寄存器中,从而可以通过对特殊功能寄存器的读写来实现对这两 个定时器的操作。作为定时器时,每个机器周期定时寄存器自动加1,所以定时器也可以 看做是计量机器周期的计数器。由于每个机器周期为12个时钟震荡周期,所以定时器的 分辨率是时钟震荡频率的1/12.作为计数器时,只要在单片机外部引脚T0(T1)有从1到 0电平的负跳变,计数器自动加1.计数的最高频率一般为振荡频率的1/24,例如,选用1 2MHz晶振,则最高计数频率为0.5MHz。 2、中断系统 当中央处理器CPU正在执行某程序时,由于某种原因,外界向CPU发出暂停目前工作去 处理更重要的事情的请求,程序被打断;CPU响应该请求并转入相应的处理程序,处理程 序完成以后,再返回原来程序被打断的位置,继续原来的工作,这一过程称为中断。实 现中断功能的部件称为中断系统,或称为中断控制逻辑系统。 89C52单片机的中断系统简单实用。其基本特点是:有6个固定的可屏蔽的中断源,4 个在片内,2个在片外,他们在程序存储器中各有固定的中断入口地址,由此进入中断服 务程序;6个中断源由两级有先级,可形成中断嵌套;2个特殊功能寄存器用于中断控制 和条件设置的编程。 若某个中断源通过编程设置,处于被打开的状态,并满足中断响应的条件,而且满足如 下3个条件时,单片机响应此中断: 1)当前正在执行的那条指令已被执行完。 2)当前未响应同级或高级中断。 3不在操作IE、IP中断控制寄存器或执行RETI中断指令。 在正常情况下,从中断请求信号有效开始,到中断得到响应,通常需要3个机器周期到8 个机器周期。 中断得到响应后,自动清除中断请求标志(对串行I\O端口的中断标志,要用软件清除) ,将断点即程序计数器之值(PC)压入堆栈(以备恢复用);然后把相应的中断入口 单片机课程设计报告主要围绕基于MCS-51单片机的时钟设计展开,旨在让学生掌握单片机的基本应用和系统设计能力。MCS-51系列单片机是一种广泛应用的8位微控制器,具有丰富的I/O资源和内部定时器功能,适合于简单的实时控制系统,如本设计中的时钟。 设计任务要求使用MCS-51单片机(如STC89C52)构建一个6位LED数码管显示的24小时制时钟,其中数码管从左到右依次显示小时、分钟和秒。设计中需要3个按键用于调整时间,每次按键对应的时间值加1,当达到最大值后自动回零。同时,设计要求利用片内定时器进行定时中断,避免使用软件延时方法,以提高效率。 硬件结构方面,设计基于STC89C52单片机,采用动态驱动方式控制6位8段LED显示器,共阳极电路设计使得LED轮流显示,通过快速刷新实现稳定显示。此外,使用上拉电阻增强I/O口驱动能力,配置6个按键,包括复位键、模式选择键以及两个上下调节键。MCS-51单片机内置两个16位定时器/计数器(T0和T1),用于生成时间间隔和处理外部脉冲,定时器T0和T1由TH0、TH1、TL0和TL1寄存器组成,可以作为定时器或计数器使用。 中断系统在单片机中扮演重要角色,它允许CPU在处理紧急任务时中断当前工作。89C52单片机有6个可屏蔽中断源,4个片内,2个片外,中断响应需满足特定条件,如执行完当前指令、未响应同等或更高优先级中断,且不处于中断控制寄存器操作中。中断响应后,会保存程序状态,执行中断服务程序,完成后返回原程序继续执行。 课程设计还提供了选作项目,包括增加减1调校键、创建电子秒表功能以及实现时钟和秒表之间的自由切换,这些都要求学生深入理解和应用单片机的中断系统和定时器功能。 整个设计过程涉及到单片机的硬件连接、软件编程(程序的首地址、栈底设置、连续内存分配)、定时器中断编程、中断处理以及系统调试。通过这样的设计,学生能全面理解单片机的系统集成、控制逻辑和实时处理能力。
剩余22页未读,继续阅读
- 粉丝: 192
- 资源: 3万+
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 面向儿童和青少年的编程学习平台-Scratch图形化编程语言
- sm32单片机控制电机旋转
- 基于Delphi的Windows应用开发详细教程
- 【重磅,更新!】全国省级绿色金融指数:原始数据与指标解释(2010-2021)
- 基于python开发的多智能体路径规划+电路规划+源码+项目文档(毕业设计&课程设计&项目开发)
- 第8章 视频流媒体直播实践.docx
- 高等教育类项目课题申报书合集(产学合作协同、教学改革、教学成果奖)【重磅,更新!】
- 用QT写的usb摄像头播放器,可以用于linux平台和Windows平台 因为QT配置不同在不同平台下都可以编译,希望对你有所帮助
- Matlab语言教程:覆盖基础知识至高级应用
- 【重磅,更新!】经济管理类期刊发文指南(含SSCI、C刊、C扩、北核等)
- 1
- 2
- 3
前往页