Ðề tài: Pic 18f452
View Single Post
Old 22-03-2006, 02:04 AM   #13
ahchu
Đệ tử 1 túi
 
Tham gia ngày: Mar 2006
Bài gửi: 23
:
Em xin lỗi đã làm lạc chủ đề của luồng này....để tạ lỗi, em xin post cho mọi người xem 1 ct đơn giản: "làm nháy LED" mà em viết cho PIC8F452


LIST P=18F452 ;directive to define processor
#include <P18F452.INC> ;processor specific variable definitions

counta equ 0x20
countb equ 0x21
countc equ 0x22

org 0x0000
goto start

start
clrf PORTB
clrf TRISB
loop
movlw b'11111111'
movwf PORTB
call delay
movlw b'11110101'
movwf PORTB
call delay
goto loop

;delay service
; T=Countc*Countb*Counta *0.5us
; T=0.5, countc=100 countb=100 counta=100
;1 cycle = 1/4 osc, exp: 8MHZ osc -> 1cycle = 2MHZ (=0.5us)
;---------------------------------
delay
movlw d'100'
movwf countc ;Countc*(Countb*(Counta*(2+2)+4)+4) = Countc*Countb*Counta *0.5us
delay_2
movlw d'100'
movwf countb ; Countb*(Counta*(2cycles + 2cycles)+ 4cycles)
delay_1
movlw d'100'
movwf counta ; Counta*(2cycles + 2cycles)
delay_0
decfsz counta,1 ;2 cycles
goto delay_0 ;2 cycles

decfsz countb,1 ;2 cycles
goto delay_1 ;2 cycles

decfsz countc,1 ;2 cycles
goto delay_2 ;2 cycles

return

end

Em cám ơn anh namqn nhé. Con PIC đã hoạt động ổn định khi có một con trở nối từ MCRL đến nguồn. Khi kô có con trở này thì nó chỉ chạy được khoảng 2 phút thôi. Còn khi có con trở này thì nó chạy cho đến thời điểm em viết bài này là được 10 phút rồi . Cám ơn mọi người nhiều nhé.

thay đổi nội dung bởi: ahchu, 22-03-2006 lúc 02:18 AM.
ahchu vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn