標(biāo)題: 單片機(jī)中斷函數(shù)不進(jìn)入中斷,求解 [打印本頁]

作者: Yubug    時間: 2018-4-16 22:28
標(biāo)題: 單片機(jī)中斷函數(shù)不進(jìn)入中斷,求解


單片機(jī)源程序如下:

void main()
{
        T3H=0xfc;
        T3L=0x66;
        IE2|=0x20;
        T4T3M|=0x08;
        EA=1;
        while(1);
}
void Timer3_Isr() interrupt 19
{
        static unsigned int i;
        i++;
        if(i==1000)
        {
                i=0;
                P55=!P55;
        }
}


程序應(yīng)該是沒有進(jìn)入中斷,用串口發(fā)送數(shù)據(jù)測試了。這是為什么啊,真讓人著急~~~圖片是我寫的,下面的時別人告訴我的,但是也不行,難道是我測試有問題?我用keil debug測沒有波形,程序好像直接就不走。那個細(xì)節(jié)出了問題啊,求解,多謝~~~

作者: wulin    時間: 2018-4-17 08:16
你的定時器設(shè)置不當(dāng)
#include <STC15F2K60S2.H>
//#include "stc15w4k60s4.h"
void main()
{
        T4T3M &= 0xFD;                //設(shè)置定時器時鐘12T模式
        T3H = 0xFC;                        //設(shè)置定時初值,1毫秒@11.0592MHz
        T3L = 0x66;                        //設(shè)置定時初值,1毫秒@11.0592MHz
        T4T3M |= 0x08;                //定時器3開始計(jì)時
        IE2 |= 0x20;                //開定時器3中斷
        EA=1;                                        //開總中斷

        while(1);
}
void Timer3_Isr() interrupt 19
{
        static unsigned int i;
        i++;
        if(i>=1000)
        {
                i=0;
                P55=!P55;
        }
}
作者: Yubug    時間: 2018-4-17 10:12
真是敲他碼!我把源程序的串口關(guān)閉竟然行了,提取出來的這個程序竟然也沒問題,但是問為什么用keil不出波形?
定時器0可以出波形,T3/T4 卻不行,是不是還需要什么設(shè)置,有大神幫忙指點(diǎn)下沒?多謝~
作者: Yubug    時間: 2018-4-17 10:24
wulin 發(fā)表于 2018-4-17 08:16
你的定時器設(shè)置不當(dāng)
#include
//#include "stc15w4k60s4.h"

謝謝~程序雖然不是很規(guī)范但是沒問題的,用keil的debug檢測P55口不產(chǎn)生波形。你知道什么問題嗎,或者給我說說怎么設(shè)置才可以產(chǎn)生波形,我用T0可以產(chǎn)生波形。
作者: dpj123321    時間: 2018-4-17 17:21
新手冒泡
作者: qq787946324    時間: 2018-6-14 18:21
新手
      




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1