簡體   English   中英

如何在PIC​​18上使能定時器2?

[英]How to enable Timer 2 on PIC18?

我想使Timer2能夠使用脈沖寬度調制。 我正在使用帶有內部8MHz振盪器的PIC18F87J11 我對PIC編程知之甚少,所以我想知道在啟用計時器的代碼中還缺少什么。

#define TMR2_IF          PIR1bits.TMR2IF 
#define TMR2_IE          PIE1bits.TMR2IE
#define TMR2_IP          IPR1bits.TMR2IP
#define TMR2_CON         T2CON

假設這是我目前的主要代碼

void main()
{
     TMR2_CON = 0b00000100 | CLOCK_DIVIDER_SETTING; // CLOCK_DIVIDER_SETTING = 4

     TMR2_IF = 0;
     TMR2_IE = 1;
     TMR2_IP = 1;

 while(1);

}

我尚不知道將其余代碼放在哪里。

if(TMR2_IF)
    {

        printf("\r\nHello");

        if(TMR2_IE)

         {
            TMR2_IF = 0;
         }

   }

我需要中斷服務程序嗎? 如果是,該如何添加? 請記住,我的目標是使用仍未到達那里的PWM,但是現在我要確保timer2的設置正確。

還缺少什么?

提前致謝!

更改while(1);

while(1)
{

if(TMR2_IF)
    {

        printf("\r\nHello");

        if(TMR2_IE)

         {
            TMR2_IF = 0;
         }

   }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM