![]() |
|
Tài trợ cho PIC Vietnam |
MPASM Lập trình bằng hợp ngữ là một việc làm vô cùng vất vả, tuy nhiên, để hiểu và làm việc với vi điều khiển, hợp ngữ trở thành một công cụ khá đắc lực ... |
|
Ðiều Chỉnh | Xếp Bài |
![]() |
#6 |
...Damned...
Tham gia ngày: Apr 2006
Nơi Cư Ngụ: Hồ Chí Minh
Bài gửi: 522
: |
Mình đoán bạn copy code của 16F đổi sang 18F, tổ chức bộ nhớ chương trình hai dòng này khác nhau. Với 16F vector 0x04 là vector ngắt, còn 2 vector ngắt của 18F ở 0x08 và 0x18, do đó code thường bắt đầu ở 0x2a.
Bạn thử đoạn code này xem sao. Code:
; Include file, change directory if needed include "p18f4550.inc" config FOSC=HSPLL_HS, PLLDIV=5, CPUDIV=OSC1_PLL2, WDT=OFF, PWRT=ON, LVP=OFF, MCLRE=ON, PBADEN=OFF c1 equ 0x01 c2 equ 0x02 ; Start at the reset vector Reset_Vector code 0x000 goto Start ; Start application beyond vector area code 0x002A Start clrf TRISB, a loop movlw 0xff movwf LATB, a call delay clrf LATB, a call delay bra loop delay movlw 0xff movwf c1, a loop1 movlw 0xff movwf c2, a loop2 decfsz c2 bra loop2 decfsz c1 bra loop1 return end thay đổi nội dung bởi: bien_van_khat, 23-07-2007 lúc 02:38 PM. |
![]() |
![]() |
|
|