打印

51定时器初值不可以用变量么?

[复制链接]
2368|6
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
sankyo_feng|  楼主 | 2011-9-8 08:18 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
#include<reg52.h>
sbit pp20=P2^0;
int a;
void main(void)
{
   a=250;
   TH0=(65536-250)/256;
   TL0=(65536-250)%256;
   TMOD=0X01;
   ET0=1;
   EA=1;
   TR0=1;
      while(1)
   {
    ;
    }
}
void time(void) interrupt 1
{
   TH0=(65536-a)/256;
   TL0=(65536-a)%256;
      a=a-10;
      if(a<5)
       {a=5;}
   pp20=~pp20;

}
初值用了变量a,可以P20的脉冲输出没有变化?为何?

相关帖子

沙发
dengm| | 2011-9-8 14:07 | 只看该作者
应该变一点点,  很难测量出来的!!!

使用特权

评论回复
板凳
sankyo_feng|  楼主 | 2011-9-8 14:22 | 只看该作者
为什么?变化挺大啊!

使用特权

评论回复
地板
yumpie| | 2011-9-8 19:45 | 只看该作者
可以,不过250 时间太短了吧,应该用个大点的值,步长也应该大点

使用特权

评论回复
5
sankyo_feng|  楼主 | 2011-9-9 08:09 | 只看该作者
知道问题出在哪了,谢谢!

使用特权

评论回复
6
谢谢分享| | 2011-9-9 08:57 | 只看该作者
分享出来、、

使用特权

评论回复
7
日暮惜乔| | 2013-1-14 20:09 | 只看该作者
能告诉我解决方法吗???我也遇到了相同的问题

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

21

主题

203

帖子

1

粉丝