欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136
標題:
用單片機外部中斷記次數,用在一定時間次數如果外部中斷沒有觸發,次數清0
[打印本頁]
作者:
林森
時間:
2019-8-11 11:59
標題:
用單片機外部中斷記次數,用在一定時間次數如果外部中斷沒有觸發,次數清0
沒有實現清0的功能
#include <reg52.h>
#define uchar unsigned char
#define uint unsigned int
sbit k3 = P3^4;
sbit k4 = P3^5;
uint i;
uint Count_A=0;
void InitTimer0() //定時器0,方式1,10微妙 10*100=1s
{
TMOD = 0x01;
TH0 = 0xFF;
TL0 = 0xF6;
EA = 1; //總中斷
ET0 = 1; //定時器中斷
TR0=1; //開定時器
}
void Show_Counts()
{
if(Count_A==0)
{
P2=0xff;
}
else if(Count_A>0&&Count_A<2)
{
P2=0xfc;
}
else if(Count_A>2&&Count_A<4)
{
P2=0xfe;
}
}
void Timer0Interrupt() interrupt 1 // interrupt 1是定時器中斷
{
TH0 = 0xFF;
TL0 = 0xF6;
i++;
if(i==10)
{
i=0;
P1=0XF8;
}
}
void main()
{
InitTimer0();
IT0 = 1; //IT0=0 是低電平觸發 1是下降沿 TCON
IT1 = 1; //IT1=0 是低電平觸發 1是下降沿
PX0 = 1; //允許外部中斷
EX0 = 1; //INT0的中斷允許位
TR0=1;
while(1)
{
if(k3 == 0) Count_A = 0;
if (Count_A==5) Count_A = 0;
Show_Counts();
}
}
void EX_INT0() interrupt 0
{
Count_A++;
TR0=1;
i=0;
}
作者:
wulin
時間:
2019-8-11 20:57
10us中斷周期太短,CPU執行中斷任務后幾乎沒有時間執行主程序。
作者:
林森
時間:
2019-8-11 23:00
wulin 發表于 2019-8-11 20:57
10us中斷周期太短,CPU執行中斷任務后幾乎沒有時間執行主程序。
我忘記改回去了,如果i=10的話 一直會輸出p1=0xf8, 外部中斷改變后,P1停留改變后,不會變回0xf8
歡迎光臨 (http://m.raoushi.com/bbs/)
Powered by Discuz! X3.1