View Single Post
Old 21-07-2010, 10:27 AM   #3
pqthai89
Nhập môn đệ tử
 
Tham gia ngày: Apr 2010
Bài gửi: 1
:
Mình cũng dùng timer1 để tạo trễ nhưng không chạy được như ý:

#include <p30f4011.h>

_FOSC(CSW_FSCM_OFF & FRC_PLL4);
_FWDT(WDT_OFF);
_FBORPOR(MCLR_EN & PBOR_OFF & PWMxL_ACT_HI & PWMxH_ACT_HI);
_FGS(CODE_PROT_OFF);

void init_port(){
TRISB = 0x00;
}

void init_timer1(){
PR1 = 0xff;
TMR1 = 0;
T1CONbits.TCKPS = 1;
T1CONbits.TON = 1;
}

int main(){
init_port();
init_timer1();
while(1){

_LATB1 = 1;
while (!T1CONbits.TSIDL);
T1CONbits.TSIDL = 0;

_LATB1 = 0;
while (!T1CONbits.TSIDL);
T1CONbits.TSIDL = 0;
}
}

Khi chạy thì pinb1 luôn ở mức cao. Mình không hiểu tại sao. Mong các bạn chỉ giúp.
pqthai89 vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn