PIC Vietnam

Go Back   PIC Vietnam > Microchip PIC > Cơ bản về vi điều khiển và PIC

Tài trợ cho PIC Vietnam
Trang chủ Đăng Kí Hỏi/Ðáp Thành Viên Lịch Bài Trong Ngày Vi điều khiển

Cơ bản về vi điều khiển và PIC Những bài hướng dẫn cơ bản nhất để làm quen với vi điều khiển PIC

Trả lời
 
Ðiều Chỉnh Xếp Bài
Old 21-07-2010, 12:20 AM   #1
lengocchau06d2
Đệ tử 1 túi
 
Tham gia ngày: May 2010
Bài gửi: 14
:
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
lengocchau06d2 vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 21-07-2010, 09:24 AM   #2
phamminhtuan
Super Moderator
 
phamminhtuan's Avatar
 
Tham gia ngày: Feb 2006
Bài gửi: 150
:
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
phamminhtuan vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
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
Old 22-07-2010, 08:32 AM   #4
lengocchau06d2
Đệ tử 1 túi
 
Tham gia ngày: May 2010
Bài gửi: 14
:
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
lengocchau06d2 vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 23-07-2010, 10:18 PM   #5
QED
Nhập môn đệ tử
 
Tham gia ngày: Jun 2009
Bài gửi: 5
:
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!
QED vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Trả lời


Quyền Sử Dụng Ở Diễn Ðàn
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is Mở
Smilies đang Mở
[IMG] đang Mở
HTML đang Tắt

Chuyển đến


Múi giờ GMT. Hiện tại là 02:48 AM.


Được sáng lập bởi Đoàn Hiệp
Powered by vBulletin®
Page copy protected against web site content infringement by Copyscape
Copyright © PIC Vietnam