View Single Post
Old 01-07-2010, 10:09 PM   #3
tdm
Đệ tử 7 túi
 
Tham gia ngày: May 2005
Bài gửi: 258
:
Trích:
Nguyên văn bởi mashimaro View Post
Chào các bác , em là newbie mới học pic . Hôm nay thầy giáo có cho 2 bài tập sau ma em đọc mãi ko hiểu , mong các bác chỉ dạy giúp em

Bài 1 : Cho đoạn code PIC như sau : ( Fosc = 4Mhz)

#include p16F876.inc
org 0
goto deb
org 4
retfie

deb
bsf STATUS,RP0
clrf TRISB
bcf STATUS,RP0
movlw 0x30
movwf T1CON

sig
clrf TMR1L
movlw 0xf0
movwf TMR1H
bsf T1CON,0


b1
btfss PIR1,0
goto b1
bcf PIR1,0
bcf T1CON,0
comf PORTB
goto sig
end

Hỏi : 1.Tính chu kì ( period ) của tín hiệu (signal) trên bit thứ 4 của portB .
2. Thay đổi chương trình (giữ nguyên kq ) bằng cách sử dụng Interrupt.

Bài 2 : Viết 1 đoạn code sử dụng timer để tạo 1 interrupt sau 50 000 chu kì máy.

Mong các bác chỉ dạy giúp em , thanks các bac nhiều
**********************************
clrf TMR1L
movlw 0xf0
movwf TMR1H
sau lệnh này giá tri trong timer1 là 0xf000 đổi sang dec là (61440)
timer1 là time 16bit có giá trị là 0xffff(dec=65535)
chu kì=65535-61440=4095
movlw 0x30
movwf T1CON (xem data sheet)
lệnh này sau 8 chu kì máy timer1 sẽ tăng thêm 1
chu kì trên portb=4095*8
__________________
viết chương trình cho vdk chạy ổn định là cả một vấn đề.
tdm vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn