View Single Post
Old 23-07-2007, 01:40 PM   #6
bien_van_khat
...Damned...
 
bien_van_khat's Avatar
 
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
__________________
- Xin đọc trước khi post bài

Xin đặt code trong thẻ [ code ] [ /code ]

thay đổi nội dung bởi: bien_van_khat, 23-07-2007 lúc 02:38 PM.
bien_van_khat vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn