程序中的TF0=0起什么作用,为什么要加这一句。

2019-07-16 05:15发布

#include<reg51.h>
#include<intrins.h>
#define uchar unsigned char
#define uint unsigned int
void main()
{
uchar T_Count=0;
//P3=0xfe;
P2=0xfe;
TMOD=0x01; //定时器0 工作方式1
TH0=(65536-40000)/256; //40ms 定时
TL0=(65536-40000)%256;
TR0=1; //启动定时器
while(1)
{
if(TF0==1)
{
TF0=0;      
TH0=(65536-40000)/256; //恢复初值
TL0=(65536-40000)%256;
if(++T_Count==5)      
{
//P3=_cror_(P0,1);
P2=_crol_(P2,1);
T_Count=0;
}
}
}
}
QQ截图20120711170526.png
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
10条回答
cql673164516
1楼-- · 2019-07-16 23:46
獊韹→狼 发表于 2012-7-12 06:55
它的作用是:当定时器0溢出时,由硬件使TF0置1,并申请中断,进入中断服务程序后,由硬件自动清0.要注意: ...

我把TF0=0删掉后流水灯的运行速度快了好多。大侠,这是为什么?
夜曲cjx
2楼-- · 2019-07-17 05:19
 精彩回答 2  元偷偷看……
liwenbiao
3楼-- · 2019-07-17 07:07
定时器/计数器0的溢出中断标志位,当定时器计数完成后产生溢出中断,置位TF0,程序才能进入if
HDEYYtmd
4楼-- · 2019-07-17 11:05
{:1:}{:1:}{:1:}{:1:}{:1:}{:1:}{:1:}{:1:}{:1:}{:1:}{:1:}{:1:}{:1:}{:12:}{:12:}{:12:}{:12:}{:12:}

一周热门 更多>