久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1248|回復: 7
打印 上一主題 下一主題
收起左側

為什么我的51單片機定時中斷只進入一次?

[復制鏈接]
跳轉到指定樓層
樓主
下面是我的程序,想用按鍵控制定時器和LED的亮滅——按一次LED亮,再按一次LED滅,燈亮的同時開始定時5s,5s到后進入中斷熄滅LED。但是現在程序只可以進入一次中斷,后面就進入不了了
# include <STC8.h>
sbit KEY = P3^5;
sbit LED = P3^4;
unsigned int num=0,second=0,minute=0,hour=0;
bit LED_flag=0;
void Delay10ms()//@24.000MHz
{
unsigned char data i, j, k;
i = 2;
j = 56;
k = 172;
do
{
do
{
while (--k);
} while (--j);
} while (--i);
}
void Init_IO()//
{
    P0M1 = 0x00;   P0M0 = 0x00;   
    P1M1 = 0x00;   P1M0 = 0x00;   
    P2M1 = 0x00;   P2M0 = 0x00;   
    P3M1 = 0x00;   P3M0 = 0x00;   
    P4M1 = 0x00;   P4M0 = 0x00;   
    P5M1 = 0x00;   P5M0 = 0x00;   
    P6M1 = 0x00;   P6M0 = 0x00;   
    P7M1 = 0x00;   P7M0 = 0x00;   
}
void Timer0_Init(void)//20ms@24.000MHz
{
AUXR &= 0x7F;//12T
TMOD &= 0xF0;
TL0 = 0xC0;
TH0 = 0x63;
EA=1;
TF0 = 0;
TR0 = 0;
ET0 = 1;

}
void KeyScan()
{
if(KEY == 0)
{
Delay10ms();
if(KEY == 0)
{
Delay10ms();
LED =~LED;
}
while(!KEY);

}

}

void Timer0_Isr(void) interrupt 1
{
TL0 = 0xC0;
TH0 = 0x63;
num++;

if(num == 50)//1s
{
num=0;
second++;
if(second==5)  //5s
{
LED = 0;
TR0 = 0;  
}
   }
}
void main()
{
  LED = 0;
Init_IO();
Timer0_Init();
while(1)
{
  KeyScan();
if(LED==1)
{
TR0 = 1;
}
else
{
TR0 = 0;
}  
}
}


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

來自 2#
ID:161164 發表于 2024-8-8 15:47 | 只看該作者
你咋知道只能進一次?
你的代碼有幾個問題





回復

使用道具 舉報

來自 4#
ID:1130312 發表于 2024-8-8 16:17 | 只看該作者
lkc8210 發表于 2024-8-8 15:47
你咋知道只能進一次?
你的代碼有幾個問題

因為我只有第一次可以5s后熄滅,后面就不可以了。太感謝你了!問題解決了
回復

使用道具 舉報

板凳
ID:170975 發表于 2024-8-8 16:13 | 只看該作者
中斷執行完了過后要把中斷清了
回復

使用道具 舉報

5#
ID:161164 發表于 2024-8-8 16:34 | 只看該作者
13696229579 發表于 2024-8-8 16:13
中斷執行完了過后要把中斷清了

STC的定時器0/1會自動清

回復

使用道具 舉報

6#
ID:1129414 發表于 2024-8-9 09:47 | 只看該作者
看一下定時器有沒有自帶自動重載的功能,沒有的話每次中斷服務函數要重新賦值
回復

使用道具 舉報

7#
ID:398219 發表于 2024-8-9 16:05 | 只看該作者
lkc8210 發表于 2024-8-8 15:47
你咋知道只能進一次?
你的代碼有幾個問題

你用的是VSCODE軟件嗎?
回復

使用道具 舉報

8#
ID:161164 發表于 2024-8-10 18:18 | 只看該作者
herui2128 發表于 2024-8-9 16:05
你用的是VSCODE軟件嗎?

不是,用Notepad++來修改瀏覽C檔案
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 久久精品久久久久久 | 欧美三级久久久 | 久久四虎 | 亚洲免费一 | 最新av在线播放 | 精品视频一区二区三区在线观看 | 最新中文字幕在线 | 国产91网址| 青青草网站在线观看 | 久久久久久久久久久久久九 | 国产欧美精品一区二区 | 国产精品特级毛片一区二区三区 | 成人免费视频 | 亚洲精品9999 | 国产国拍亚洲精品av | 亚洲天堂一区 | 操操日| 免费看91 | 亚洲一区二区三 | 亚洲成人黄色 | 久久久一区二区 | 亚洲永久 | 97国产一区二区 | 日韩一区二区三区在线 | 色综合视频 | 久久国产精品一区二区三区 | 国产亚洲精品综合一区 | 亚洲一区二区视频 | 国产精品免费小视频 | 在线免费看黄 | 激情av网站 | 亚洲国产精品一区二区第一页 | 国产精品自拍视频 | 亚洲一区二区三区高清 | 请别相信他免费喜剧电影在线观看 | 精品在线一区二区三区 | 在线一区二区三区 | 欧美视频网 | 国产一区二区在线播放视频 | 亚洲国产成人av好男人在线观看 | 在线视频日韩 |