嵌入式定时器试验_第1页
嵌入式定时器试验_第2页
嵌入式定时器试验_第3页
嵌入式定时器试验_第4页
嵌入式定时器试验_第5页
已阅读5页,还剩5页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、理工大学您息工程与1动化学咙学生卖殓援告(2013 2014 学年第2学期)镌税名称:抿入式枚术及应用开谣实按*:信令揍504 2014年5月9 Q年假、专业、班2011 <计科111*201110405138成蛛定对春矣捡(十进JH计救星丿指导救师江虹敘 ff 评该同学是去了解实睑虑理:A了解口B墓本了鮮DC.不了鮮口该同学的卖睑能力:A 强 口B.中等DC.差口该同学的卖脸是否达刊要求:A.达列口B.墓本达fJOC.未达刊口卖睑报告是丢规:A.规口B.墓本规口 C.不规口卖睑过程是丢详细诃录:A详细口B.般 C没有敘师签老:年月目卖踐目的拿握定肘器TO. T1的方式选择和輪程方比,了

2、解中断服务程序的役计方法,学会实肘程序的调认枝巧。二.实絵原理89C51单片机有五个中靳源(89C52有夫个),分别是外部中断请求0、外部 中斯请求X走肘器/计数翠0溢出中靳请求、定肘器/计数器0溢出中新请求及 串行D中断请求。每个中靳源都对应一个中靳请求伐.,它们设置在特球功能寺存 器TCON和SCON中。当中靳源请求中靳肘,柑应标志分别由TCON和SCON的 相应住来铁寺。五个中靳源有二个中断优先级,毎个中新源可以编程为需优先级 或低优丸级中斯,可以卖现二级中斯服务程尊嵌套。在同一优先级别中,靠部的 奋询逻辑来确主响应顺序。不同的中斯源有不同的中斯矣量地址。 中断的控制用四个特缘功能寺存器

3、IE、IP、TCON (用并住)和SCON(用二佞),分 别用于控制中新的类熨.中断的开/关和各种中断源的优先级别。中断程序由中新控制程序(主程序丿和中断服务程序两部分组成:1J中断控制程序用于实现对中新的桂制;2)中斯服务程序用于兜成中斯谏所耍求的中新处理的各种操作。C51的中断函数必须通过interrupt m进行修饰。A C51程序设计中,当函数定 义肘用了 interrupt m修饰符,糸统编泽肘把对应函数转化为中靳函数,勺动加 上程序头段和尾段,并按MCS-51糸统中断的处理方无勺动把它安排在程序存赭 器中的相应伐置。三、卖脸汆在卖脸板上免成如下功能:用定肘容TO的方式J,实现弟一个

4、发光二极管以200ms的间隅诃烁;用定肘器T1的方式1,卖现数码管前两仕59s循环计肘。卖验板数码管电路原理如图1所示。计算初值衣无定肘栈式J th0=(216-定肘肘间)/ 256tl0=(216-定肘肘间) 256图1 LED数码管色路原理图1, 换实殓要求在KeilC中创建项目,编辑、编译程序。2、将编译生成的目标码丈件(后缎为.Hex丿下我列实脍扱电路中。3. 在实睑板中运行程序,观疼卖验运行结果并诃录。1实验斥理补充:学习资料.89C51的定肘计数器的结构及工作方式2 .工作方式走肘器方式:役置为主肘工作方式肘,主肘器计数89C51片振荡麥输岀经12分频后的 脉冲,印每个机器周期使定

5、肘怎仃0或I)的数值加1直至计满溢出。£ 89C51 采用12MHz岛体肘,一个机器周期为1 rs,计数频率为1MHzo计数器方式:设置计数工作方式肘,通过引脚T0(P3.4)T1(P3.5)对外部脉冲信号 计数。当输入脉冲信号庐生由1至0的下障沿肘,计数丢的值加1o A每个机器 周期的S5P2期间采样TO或巧引脚的输入电平,若前一个机器周期采样值为1, 下一个机器周期采样值为0,则计数翠加1。此后的机器周期S3P1期间,新的 数值装入计数器。所以,检测一个1至0的跳炙需要二个机器周期,故最爲计救 频率为振荡频率的二十四分之一。除了可以选择主肘器无计数器工作方式外,每个龙肘器/计数器

6、还有四种工 作栈无,也就是每个定肘器可构成四种电路结构栈无。其中,02棋无对T0和 I都是一样的,栈式3对两者是不同的。方式位数计数范围其它功能Mode 013位0 8191Mode 116位065535Mode 28位0 255具有自动加载功能Mode 3|8位0 255龙肘器共有两个控制字,由软件写入TMOD和TCON两个8住孑存器,用来设置TO或I的棵作核式和控制功能。89C51糸统复佞肘,两个寺存器所有住都彼请OoET0=1;ET1=1;TR0=1;TR1=1;void display(uchar aa,uchar bb) U2=1;PO 二 Oxfe;/111T"1OU2=

7、0;U1=1; PO=tableaa;U1=0;delay ;U2=1;P0=0xfd;/1111*1101U2=0;U1=1;PO=tablebb;delay ;void main()MODE 0工作方式(Timer 0为例)3实验代码:#in clude<reg52 h>define uint unsigned int#define uchar unsigned charsbit U1 = P2A6;sbit U2 = P2A7;sbit LED = P1A0;uchar count,countl ,second,shi,ge; uchar code table= 0x3f,0

8、x06,0x5B,0x4F, 0x66,0x6 D, 0x7 D, 0x07,0x7F,0x6F,0x77,0x7C,0x39,0x51,0x79,0x71; void delay(uint z)uint x,y;for(x=z;x>0;x-) for(y=110;y>0;y-);void init()TMOD 二 Ox" ;/000*0001THO 二(6553650000)/256;TL0=(65536-50000)%256;TH 仁(65536-50000)/256;TL1 =(65536-50000)96256;EA=1;LEDLED;while shi=seco

9、nd/10;ge=second%10;display(shi,ge);void timerO() interrupt 1TH0=(65536 50000)/256;TL0=(6553650000)%256; count+;if(co un t=4)count=0;void timer1() interrupt 3TH1 =(65536-50000)/256;TL1 =(65536-50000)96256; count1+;if (count 仁二 20)count1=0;second+;if(second=60)second=0; .学习资料.4 卖验札图1.若用岌肘器1方式2,程序如何修敌?

10、由于使用定肘甕1的方式2的话.tmax=256uSo而且由于方式2的机彖特性不用进行重新赋值。所以更改代码21 行:TMOD=Ox21;/70002*0001刪除 24. 25 鬲行。TH1 =(65536-50000)/256; (24 行丿TL1 =(65536-50000)96256; (25 行丿 刪除 75. 76 鬲行。TH1=(65536-50000)/256;TL1 =(65536-50000)96256;5.农=256us2.若显示从 T9”开始逐减,程序如何修改?由于要从99倒计肘,所以修改翅始值,然后修改區减状态,修敌循环回复状态。修改笫 9 行 second=99:修改 81、82、83 行 second-; if(second=0) second

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论