標(biāo)題: 請教大家合泰觸摸單片機定時器設(shè)置問題 [打印本頁]

作者: 飛云    時間: 2019-8-9 14:47
標(biāo)題: 請教大家合泰觸摸單片機定時器設(shè)置問題
程序如下,請問這個初始化函數(shù)哪里出了問題?我是想設(shè)置1us中斷的,結(jié)果變成20us才中斷一次

單片機用的是BS66F360


void ctm0_Init(unsigned int us)                /ctm0初始化
{        
        /***********************設(shè)定定時器0的自加計數(shù)器每2us加1***************************/
        _ctm0c0=0b00100000;        //設(shè)置定時器的時鐘源【fH16分頻,即1MHz】 //系統(tǒng)時鐘選擇16MHz
        _ctm0c1=0b11000001;              //設(shè)定定時器0工作模式為:定時/計數(shù)模式,比較器A匹配產(chǎn)生中斷
        
        /*************************定時器0每1us產(chǎn)生一次中斷*****************************/
        _ctm0al=0x01;          //設(shè)置定時器0計數(shù)匹配值,數(shù)據(jù)手冊中說明:寫寄存器先寫低位,讀寄存器先讀高位
        _ctm0ah=0x00;
         
        _ctm0af=0;                  //清零tm0中斷標(biāo)志位
        _ctm0ae=1;                  //使能tm0中斷
        
        _mf0f=0;                  
        _mf0e=1;                                 //定時器0中斷屬于MFO中斷
        
        _ct0on=1;
//        _t0on=1;                 //定時器0開始計時
}

void isr_tm0()
{
        _ctm0af=0;
        CLR_WDT();
        
        led_cnt++;
        if(led_cnt==50000)
        {
                led_cnt=0;
                led=~led;        
        }        
}



作者: Y_G_G    時間: 2019-8-9 17:28
在這,你要是問8051的話,會有很多人幫你的,你問合泰,估計用過的都沒有幾個,燒錄器就四百多塊錢,相比11塊的STC燒錄器,沒的比呀
1,在燒錄的界面看一下有沒有系統(tǒng)時鐘的選擇
2,合泰的指令是4周期的,8051的是12周期的,注意區(qū)別一下
3,不要用50000那么大的數(shù),用char型,代碼會多幾行,但效率會好很多
4,臺系的單片機,能用匯編就用匯編,它們不比8051或者AVR之類,編譯出錯可能性會高很多


5,最重要的,我的話只能當(dāng)個參考而已,很久沒有用合泰了

作者: TTT96    時間: 2019-8-9 18:45
不會,不好意思

作者: ccdmcu    時間: 2019-8-9 20:08
不知道你這型號的單片機怎么規(guī)定的,仔細(xì)看看規(guī)格書,總中斷打開沒?0185之類的我記得中斷函數(shù)要打開比較器a,或p使能位,開定時器,開總中斷,中斷函數(shù)是寫地址的。
作者: 葉櫻楓    時間: 2019-9-27 16:05
        _ctmc0 = 0b00100000;  //總線時鐘16M,16分頻,定時器停止
        _ctmc1 = 0b11000001; //定時/計數(shù)器模式,ctm比較器A匹配清除計數(shù)器
       
        _ctmal = 0xe8;//1000,定0.001S進(jìn)一次中斷,先寫低再寫高
        _ctmah = 0x03;
       
        _cton = 1;    //啟動定時器
        _ctmae = 1;   //定時器ctm比較器A匹配中斷請求
        _mf1e = 1;          //允許多功能中斷1
樓主這是我寫的HT66F019定時器初始化,你可以參考一下




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