单片机 断与定时器.doc

单片机 断与定时器.doc

ID:56914241

大小:57.00 KB

页数:8页

时间:2020-07-23

单片机 断与定时器.doc_第1页
单片机 断与定时器.doc_第2页
单片机 断与定时器.doc_第3页
单片机 断与定时器.doc_第4页
单片机 断与定时器.doc_第5页
资源描述:

《单片机 断与定时器.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、评阅单片机实验报告三姓名学号时间2015.05.07地点B526实验题目中断、定时器实验一.实验目的与要求1.学习外部中断和定时器的工作原理及使用方法。2.学习外部中断和定时器的初始化程序、应用程序的编写和调试。二.实验主要仪器及环境PC机、WAVE软件、仿真器+仿真头、实验板、电源等。三.实验说明本实验1通过开关向单片机提出中断请求,单片机响应中断进行计数,并通过LED数码管指示出计数值,从而观察中断的请求、响应的过程。实验2通过单片机的定时器产生延时,模拟交通灯控制的方法。通过本实验学生可以掌握单片机中断和定时器的工作原理及使

2、用方法以及中断和定时器的初始化程序、应用程序的编写和调试。四.实验内容及步骤1、开关S2—S3连接P3口做输入,P0输出接LED数码管,通过K2产生外部中断请求(/INT0)信号,在中断服务程序中完成十进制递增计数,并将计数值显示在LED数码管上,要求分别采用电平触发和边沿触发。按上述要求完成K3产生外部中断请求。编写初始化程序和中断服务程序。(注意开关抖动处理)2、P1.0--P1.7作输入口接拨动开关S0--S7;P0.0--P0.7作输出口,接发光二极管L1—L8,编写程序读取开关状态,将此状态在对应的发光二极管上显示出来,

3、要求发光二极管(LED)按亮0.5秒、暗0.5秒闪烁,LED亮的同时,从P2.0送出1kHz的音频信号到音频驱动电路发声(持续0.5秒),将开关编号(0—7)显示在LED数码管上。要求延时采用内部定时器T0,音频的产生采用内部定时器T1。编写初始化程序和中断服务程序。五.实验电路连线P0.0----L1P3.2(/INT0)-----S2P0.1----L2P3.3(/INT1)-----S3P0.2----L3P0.3----L4P0.4----L5P0.5----L6P0.6----L7P0.7----L8LED连接外部中断请

4、求输入abcdefgh(dp)abcdefgh(dp)P2.0P2.1P2.2P2.3P2.4P2.5P2.6P2.7LED数码管各段与I/O的连接实验3:LED数码管各段与I/O的连接一.实验流程框图、实验程序开始开始各寄存器及中断初始化各寄存器及中断初始化NP3.3所接开关是否为负电平跳变P3.2所接开关是否为0N主程序等待中断主程序等待中断YY中断来临,执行中断服务程序,按键消抖动处理中断来临,执行中断服务程序,按键消抖动处理10进制递增并数码管显示、每当显示一个数字有300ms延时10进制递增并数码管显示、每当显示一个数字

5、有300ms延时中断返回中断返回电平触发中断跳沿触发中断1、电平触发中断程序;;;;电平触发中断;;;;ORG0000HAJMPSTART;跳到初始化程序ORG0003H;外部中断0的中断入口AJMPINT;跳到中断服务程序INTORG0100H;主程序入口START:MOVR0,#00H;各寄存器初始化,将立即数00H送到寄存器R0MOVSP,#60H;设堆栈指针CLRIT0;设置外部中断请求0为电平触发SETBEX0;允许外部中断0中断SETBEA;总中断开关位开放MAIN:SJMP$;等待中断INT:ACALLDELAY_1

6、0_MS;消除抖动处理JBP3.2,MAINCJNER0,#0AH,FIND;R0不等于10时跳转到FINDMOVR0,#00HFIND:MOVA,R0MOVDPTR,#TABMOVCA,@A+DPTRMOVP0,A;将A值给P0,用于显示数码管显示INCR0;循环实现连续显示0~9ACALLDELAY_300_MSRETI;返回断点处,重新执行被中断的主程序TAB:DB3FH,06H,5BH,4FH,66HDB6DH,7DH,07H,7FH,6FHDELAY_10_MS:;10MS延时程序MOVR7,#20;1+(1+250*2

7、+2)*20+2=10063usD1:MOVR6,#250D21:DJNZR6,D21DJNZR7,D1RET;返回主程序DELAY_300_MS:MOVR5,#03H;300MS延时程序D2:MOVR4,#200;1+(1+(1+2*249+2)*200+2)*3+2=300612usD3:MOVR3,#249DJNZR3,$DJNZR4,D3DJNZR5,D2RET2、跳沿触发中断程序;;;;跳沿触发中断;;;;ORG0000HAJMPSTARTORG0003HAJMPINTORG0100HSTART:MOVR0,#00H;初

8、始化MOVSP,#60H;设堆栈指针SETBIT0;设置外部中断请求0为跳沿触发SETBEX0;开外部中断0SETBEA;开总中断MAIN:SJMP$;等待中断INT:ACALLDELAY_10_MS;消除抖动处理JBP3.3,OVERCJNER0

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。