欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136
標題:
為什么單片機T0的中斷無法執(zhí)行,只可執(zhí)行T1的中斷
[打印本頁]
作者:
syh112
時間:
2023-6-13 03:19
標題:
為什么單片機T0的中斷無法執(zhí)行,只可執(zhí)行T1的中斷
#include "reg52.h"
#include<intrins.h>
typedef unsigned int uint;
typedef unsigned char uchar;
sbit moto=P1^0;
sbit k2=P3^0;
sbit k3=P3^2;
//sbit k00=P2^2;
unsigned char timer1;
unsigned char timer0;
uint n=1;
uint m=2;
uint sunumber;
uint worksign;
void TimeConfig();
void delay1ms(uint t);
void sudu();
void moshi();
void ziran();
void main(void)
{
TimeConfig();
while(1)
{
moshi();
}
}
void delay1ms(uint t){
char i;
while(t--)
{
for(i=0;i<50;i++);
}
}
void TimeConfig()
{
TMOD|= 0x11;
TH1 = 0xFE;
TL1 = 0x0C;
ET1 = 1;
EA = 1;
TR1 = 1;
TH0=0xD8;//(65536-10000)/256;
TL0=0xF0;//(65536-10000)%256;//10ms
ET0=1;
TR0=1;
}
void Time1(void) interrupt 3
{
TR0=0;
TH1 = 0xFE;
TL1 = 0x0C;
TR0=1;
timer1++;
}
void Time0(void) interrupt 1
{
TR1=0;
TH0=0xD8;
TL0=0xF0;
TR1=1;
timer0++;
if(timer0>1200)
{
timer0=0;
}
}
void sudu()
{
if(k2==0)
{
delay1ms(10);
if(k2==0)
{
n+=1;
if(n>3)
{n=1;
}
while(!k2);
}
}
switch(n)
{
case 1:sunumber=15;break;
case 2:sunumber=50;break;
case 3:sunumber=90;break;
}
if(timer1>100)
{
timer1=0;
}
if(timer1<sunumber)
{
moto=1;
}
else
{
moto=0;
}
}
void moshi()
{
if(k3==0)
{
delay1ms(10);
if(k3==0)
{
m+=1;
if(m>2)
{m=1;
}
while(!k3);
}
}
switch(m)
{
case 1:sudu();break;
case 2:ziran();break;
// case 3:sunumber=90;break;
}
}
void ziran()
{
ET0=1;
TR0=1;
if(timer0<400)
{
sudu();
}
else
{
moto=0;
}
}
作者:
wys91203
時間:
2023-6-13 05:35
兩個定時器都用方式1,16位,自然優(yōu)先級是T0高于T1, 但在中斷程序中,有錯誤,T0中斷 INTERRUPT1
子程序里,停止了T0空斷.
void Time1(void) interrupt 3
{
TR0=0; //應(yīng)是TR1=0
TH1 = 0xFE;
TL1 = 0x0C;
TR0=1;
timer1++;
}
作者:
xuyaqi
時間:
2023-6-13 09:33
你定義:unsigned char timer0;
判斷要求,if(timer0>1200),后邊程序不能執(zhí)行。
歡迎光臨 (http://m.raoushi.com/bbs/)
Powered by Discuz! X3.1