单片机定时器实验报告.doc
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
【单片机定时器实验报告】 本实验报告主要围绕单片机定时器的使用展开,旨在让学生掌握MCS-51系列单片机中的定时器T0和T1的工作方式和编程方法,以及中断服务程序的设计和调试技巧。实验内容以AT89C51单片机为例,通过定时器T0工作在方式1下产生1秒的定时时间,实现秒计数的功能。 **一、实验原理** MCS-51单片机内置了两个16位的定时器T0和T1,它们可以通过编程设定为定时器或外部计数器。T1还能作为串行口的波特率发生器。定时器T0由TL0和TH0构成,T1由TH1和TL1构成,其工作方式由TMOD寄存器控制,运行状态则由TCON寄存器管理。中断机制方面,中断允许寄存器IE和中断优先权寄存器IP负责控制定时器中断的允许和优先级。定时器T0和T1的中断入口地址分别是000BH和001BH。 定时器的工作方式有四种,每种方式使用的计数位数不同,导致定时计数常数各异。中断响应过程中,CPU会将程序计数器PC的内容保存到堆栈,然后转向中断矢量地址执行中断服务程序。中断服务程序结束后,通过"RETI"指令恢复断点地址,返回原来的程序执行。 **二、实验内容** 实验任务是编写程序,让T0在方式1下工作,产生1秒定时,每当计满1秒,秒计数器加1,计数到60后自动重置为0。实验电路原理图提供了实现这一功能的硬件布局。 **三、实验步骤** 实验步骤包括: 1. 使用Proteus ISIS建立仿真环境,添加所需的元器件,如AT89C51、电容、晶体振荡器、电阻和7段显示器等,并按照实验原理图连接电路。 2. 在KeilC中编写程序,确保编译无误后,将生成的目标码文件导入到Proteus中进行仿真。 **四、定时器编程要点** 1. 设置定时器工作方式:在TMOD寄存器中设定T0或T1的工作模式,例如方式1。 2. 设定计数初值:根据定时模式1的公式计算TH0和TL0的初值。 3. 中断设置:启用或禁止相应的中断,并在IE和IP寄存器中设置中断允许位。 4. 启动定时器:通过修改TCON寄存器中的相关位启动定时器。 **五、中断服务程序注意事项** 1. 在中断矢量地址放置无条件转移指令,方便中断服务程序在64K程序存储器的任意位置执行。 2. 保护现场,避免中断返回时丢失寄存器和累加器信息。 3. 软件控制中断,可以暂时关闭全局中断或特定中断源,防止更高优先级的中断干扰。 实验报告的评估包括对学生的理论知识理解、实验操作能力、实验报告规范性和实验过程记录的详细程度等方面的考察,旨在促进学生全面掌握单片机定时器的运用及其中断处理机制。通过这样的实践,学生能更好地理解和应用单片机的定时和中断功能,提升实际问题解决能力。
剩余63页未读,继续阅读
- 粉丝: 87
- 资源: 2万+
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助