单片机课程设计(论文)马拉松比赛计时器设计.doc
《单片机课程设计(论文)马拉松比赛计时器设计.doc》由会员分享,可在线阅读,更多相关《单片机课程设计(论文)马拉松比赛计时器设计.doc(11页珍藏版)》请在三一办公上搜索。
1、马拉松比赛计时器设计一. 设计目的 掌握单片机定时器/计数器的使用方法 掌握单片机中断服务程序的应用 熟悉单片机外围数码管显示电路的设计方法二. 相关知识1. 定时器/计数器定时器/计数器简称定时器,其作用主要用于产生各种时间间隔,记录外部脉冲与事件的数量等,是微机中最常用的部件之一。89c51单片机有2个16位的定时器/计数器O(TO)和定时器1(T1)。TO由2个定时寄存器THO和TLO构成,T1则由TH1和TL1构成,他们都分别映射在特殊功能计数器中,从而可以通过对特殊功能寄存器的读/写来实现对这两个定时器的操作。作为定时器。每个机器周期定时寄存器自动加1.,所以定时器也可看成是计量机器
2、周期的计数器。由于每个机器周帏12个时钟振荡周期,所以定时的分辨率是时钟振荡频率的1/12。作为计数器,只要在单片机外部引脚TO(TI)有从1到0电平的负跳变,计数器就自动加1。计数的最高频率一般为振荡频率的1/24,例如,选用12MHz晶振,则最高技术频率为0.5MHz。2. 中端系统 当中央处理器CPU正在执行某程序时,由于某种原因,外界向CPU发出暂停目前工作去处理更重要事情的请求,程序被打断;CPU响应改请求并转入响应的处理程序,处理程序完成以后,再返回原来程序被打断的位置,继续原来的工作,这一过程成为中断。实现中断功能的部件称为中断系统,或者称为中断控制逻辑系统。 89c52单片机的
3、中断系统简单实用。其基本特点是:有6个固定的可屏蔽中断源,4个在片内,2个在片外,他们在程序存储器中各有固定的中断入口地址,由此进入中断服务程序;6个中断源有两个优先级,可形成中断嵌套;2个特殊功能寄存器用于中断控制和条件设置的编程。 若某个中断源通过编程设置,处于被打开的状态,并满足中断响应的条件,而且满足如下3个条件时,单片机响应此中断: 当前正在执行的那条指令已被执行完。 不在操作IE,IP中断控制寄存器或执行RETI中断指令在正常的情况下,从中断请求信号有效开始,到中断得到响应,通常需要3个机器周期到8个机器中期终端的到响应后,自动清除中断请求标志(对串行I/O端口的中断标志,要用软件
4、清除),将断点即计数器之值(PC)压入堆栈(已被灰复用);然后把相应的中断入口地址装入PC,使程序转入相应的中断服务程序中去执行。各个中断源在程序存储器中的中断入口地址如表1-1所示 表1-1 89c52单片机中断入口地址表中断源入口地址INTO(外部中断0)0003HTFO(TO中断)000BHINT1(外部中断1)0013HTF1(T1中断)001BHRI/TI(串行口中断)0023HTF2(T2中断)002BH各个中断入口地址相隔很近,不便于存放各个较长的中断服务程序,故通常将中断服务程序存放在另外方便存放的地方,而在中断入口地址开始的二三个单元中,安排一条转移类指令,以转入中方端服务程
5、序。由于6个中断源各有其中断请求标志IEO,TFO,IE1,RI/TI以及TF2,在中断源满足中断请求的条件下,个标志自动加1,向CPU请求中断。如果某个中断源提出中断请求后,CPU不能立即响应,只要该中断请求标志不被软件人为清除,中断请求的状态就将一直保持,直到CPU响应此中断为止。对串行口中断而言,这一过程与其他五个中断的不同之处在于,及时CPU响应了中断,其中断标志RI/TI也不会自动清零,必须在中断服务程序中设置清除RI/TI的指令后,才有可能再一次提出中断请求。CPU的现场保护和恢复必须有由被响应的中断服务程序去执行,当执行RI/TI中断返回指令后,断点值自动从栈顶2字节弹出并装入P
6、C寄存器,使CPU继续执行被打断的程序。三. 设计任务利用单片机内部定时器TO实现时、分、秒计时且在6个数码管上同时显示时、分、秒计时时间,并能通过按键对时间进行重新设置四. 设计方案 1,.系统硬件电路设计系统硬件电路设计原理图1-1所示 图1-1 计时电路结构框图图1-12系统软件设计(1) 主程序(START) 在主程序中只完成系统的初始化,同时进行时分秒按键的扫描。如果有按键按下,则做相应时分秒计数数据的加1处理。主程序执行流程图按图1-2所示(2)定时器中端服务程序(TIMERO) 定时器TO用于时间计时。定时计数个数为5000,由于采用12MHz晶体振荡器,所以定时溢出中断周期为5
7、000微秒=5毫秒。为了保证计时的准确性,进入中断服务程序时应立即重设计数初始值。在中断程序中还要判断是否计时1s,若是,还应通过调用其他子程序作时分秒值的相应处理。(3) 显示子程序(DISP) 该子程序通过在中断服务程序中被调用而执行。每一次中断程序调用一次,其作用是根据扫描指针循环驱动各个数码管。(4) 时钟调整子程序(CLK_CHANGE) 当中断程序中判断出计时1s时,该程序即被调用执行。其作用为将秒的计数初值加1,同时判断是否应对十分作相应的修改。(5) 数据转换子程序(COVERT) 当中断程序中判断出计时1s时,该程序及被调用执行。由于时分秒的计数值分别保存在一个字节里,而每一
8、个计数值实际是一个2位的十进制数。在驱动显示时必须将这个2位数拆开以分别去扫描个位和十位,该子程序就是完成这个的,并把拆分结果存储在从20H开始的显示寄存器单元里。(6) 延时子程序(DELAY) 用于键盘的延时去斗五. 程序清单 ORG 0000H ;复位起始地址 AJMP START ;跳转至主程序 ORG 000BH ;TIMERO中断矢量地址 AJMP TIMERO ;跳转至TO中断子程序TIMEROSTART: MOV SO,#6FH ;设置堆栈从6FH开始 MOV 30H,#00H ;显示位码寄存器处置为00 MOV 2AH,#00H ;“时” 寄存器初值为00H MOV 2BH,
9、#00H ;“分” 寄存器初值为00H MOV 2CH,#00H ;“秒” 寄存器初值为000H MOV TMOD,#01H ;设TO为工作方式1,即16位定时 ;器 MOV THO,#OECH ;计时器计时中断时间为5000微秒 MOV TLO,78H MOV IE,#82H ;TO中断使能总的中断使能 MOV R4,#200 ;5000微秒中断200次,实现计时 ;1s功能 SETB TRO ;启动定时器TO;LOOP段为主程序中用于循环地扫描按键以检测外界输入对时分秒的设置和修改LOOP: JB P0.0,NEXT2 ;P0.0(秒值修改键)是否被按下? ;不是,则跳至NEXT2检查po
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 课程设计 论文 马拉松 比赛 计时器 设计

链接地址:https://www.31ppt.com/p-2614490.html