PIC Vietnam

PIC Vietnam (http://www.picvietnam.com/forum/index.php)
-   Cơ bản về vi điều khiển và PIC (http://www.picvietnam.com/forum/forumdisplay.php?f=8)
-   -   Xin giÚp ĐỞ thỜi gian trỄ bẰng timer0 (http://www.picvietnam.com/forum/showthread.php?t=6711)

lengocchau06d2 21-07-2010 12:20 AM

Xin giÚp ĐỞ thỜi gian trỄ bẰng timer0
 
ANH EM TRÊN DIỄN ĐÀN XEM CHƯƠNG TRÌNH MÌNH VIẾT TẠO THỜI GIAN TRỄ BẰNG TIMER0 NHUNG KHONG CHẠY
;TAO CHU KY BAT LED 200US O CHAN RBO
processor 16f877a
include <p16f877a.inc>
org 0x00
goto start
start
;cai dat portB la dau ra
;==============
banksel TRISB
clrf TRISB
;cai dat timer0
;==============
movlw b'00000000'
movwf OPTION_REG
banksel PORTB
lap
bsf PORTB,0
movlw d'156'
movwf TMRO
banksel INTCON
kt
btfss INTCON,2
goto kt
bcf PORTB,0
bcf INTCON,2
goto lap
goto$
end

phamminhtuan 21-07-2010 09:24 AM

Chưa dịch được hay chưa chạy được
Với code trên thì "movwf TMRO" là chữ O chứ không phải số 0
Cần chú ý tính năng Analog trên mỗi PIN của PIC

pqthai89 21-07-2010 10:27 AM

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.

lengocchau06d2 22-07-2010 08:32 AM

cám ơn anh nhiều nhé,em lam chạy rồi.anh cho em hỏi.nếu mình muốn dùng timer0 làm counter thí sao

QED 23-07-2010 10:18 PM

Mình đang thiết kế một cái đồng hồ nhưng gặp răc rối trong việc sử lý timer. Làm thế nào có thể tạo chính xác thời gian 1s. Mình sử dụng thạch anh 12MHz.
Rất mong sự giúp đỡ của mọi người!
Thanks!


Múi giờ GMT. Hiện tại là 06:55 PM.

Tên diễn đàn: vBulletin Version 3.8.11
Được sáng lập bởi Đoàn Hiệp.
Copyright © PIC Vietnam