单片机C51定时器应用实例详解

1.系统时钟为12MHz,编程实现从P1.0引脚输出一个周期为2ms的方波。

注:要想产生一个周期2ms的方波,定时器应产生1ms的周期性的定时,定时对P1.0求反。选择定时器T0,方式1定时,采用中断方式,GATE不起作用。

85717bc6e2d34e588e6dff5164aff70d.png

 注:1.EA=1 所有的中断请求被开放

2.ET0=1  允许T0溢出的请求

3.TR0=1 启动定时/计数器

 

2.51单片机的P1口上接有8只LED。采用定时器T0的方式1的定时中断方式,使P1口外接的8只LED每0.5s闪烁一次。

92e8b97d8c484a4bb4fb46205ae572b3.png

 注:1.(65536-500000/1)<0,即不可直接这样减。 5ms*100次=0.5s 。

2.当i从100减到0时,即0.5s时P1接口取反,再将i的值置为100。

 

 

附:keil软件的使用方法

1.点击Project,选择New Project

a3c8b1046fc84017a4db8937cbed0aef.png

 2.弹出Crelate New Project窗口,新建一个文件夹保存在一个已经命名好的文件夹中,再点击保存。

f6f59f40b27a459ca95a124031e3e68d.png

 3.选择所需芯片。本篇采用Atmel公司的AT89C52芯片。

d03eb140558c4b869dcbe6743dfa8b1f.png

4.选择“否”,没啥大的影响2d943d746e4b4109949152c9ef74893d.png

 5.新建文件夹,单击即可

79de8804e44b445aa7a831db381cf585.png

 6.在下图所示界面进行编程即可,点击可以使界面放大。

1364a836220f4c59a8a89da87c1f1083.png

7.编程结束,保存文件。

edaf349f968e41c7b54b68411e6ef39d.png

 8.对文件命名,注意在命名时候,加上.c的后缀47a6ee952ba143c994c0f2f370770a0a.png

 9.添加

e5e12a200cfd497abb3e17aeb5fecc18.png

双击这个文件夹符号

 f7e325d6ee804ed39b0eaa0abde8c152.png

 10.双击所要选择的程序,单击Add。添加结束后,双击的那个文件夹前面有了+,单击+,即可以看到我们的程序。

0b3a5fde18cc49a7848e20a7ea9f2198.png

11.点击魔术棒

f1e80c5b922f402783433fd3976981ce.png

 12.点击Output,在Create HEX file前点上对号

a39266cfbe974474a1ddc147c392c39b.png

 13.最后一步!!!0错误,0警告就欧拉在keil软件里面。

976382df2d084a199179a868fd404c24.png ccc5092167224d359fbca18608a85387.png

 

物联沃分享整理
物联沃-IOTWORD物联网 » 单片机C51定时器应用实例详解

发表评论