View Single Post
Old 12-02-2009, 04:39 PM   #314
phandinh
Đệ tử 6 túi
 
Tham gia ngày: Nov 2008
Nơi Cư Ngụ: Di Linh
Bài gửi: 131
:
Từ sáng giờ em đã làm lại. Do vừa tìm hiểu lệnh, các thanh ghi nữa nên
hơi lâu. ct được viết lại như dưới nhưng vẫn chưa được.
Nút nhấn chỉ có tác dụng ở lần đầu tiên. tức là ' nhấn lần thứ NHẤT ---> RA0 = 1 '
nhưng những lần nhấn tiếp theo vẫn chỉ có RA0 = 1 .
Em nghi ngờ ở lần ngắt đầu tiên (trong chương trình ngắt) đã tác động
đến thanh ghi nào đấy , và nó đã không cho phép ngắt nữa.
---------------------------------------------
Code:
;=======================================================
		TITLE 		"Mach test ngat ngoai"
		PROCESSOR	P16F877A
		INCLUDE 	<P16F877A.inc>
		__CONFIG    _CP_OFF	& _PWRTE_ON & _WDT_OFF &_HS_OSC

;chan RB0 noi voi cong tac de dem so lan nhan
;port A noi voi cac led hien de hien thi so binary
;=================================================================
COUNT 	equ 	20H
		ORG		00H
		GOTO	MAIN
		org 	04H	
		goto 	NGAT
;===============CHUONG TRINH CHINH================================
		ORG	0x0005
MAIN		
		BANKSEL		TRISB		; bank select
		movlw 		b'00000001'
		movwf		TRISB		; trisb = #w; rb0 = input
		movlw  		00h
		movwf    	TRISA
		BANKSEL 	PORTA
		bsf 		INTCON,7                         
		bsf 		INTCON,4
		bcf 		INTCON,1
		CLRF 		W
		movwf 		PORTA		
		goto 		$-1			
;==================CHUONG TRINH NGAT=============================
NGAT    
		incf 		COUNT,0	;tang g.tri count len 1 & luu trong 'W'		
		BCF			INTCON,1
		retfie 					; return from interrupt		
END				
;====================================================================

thay đổi nội dung bởi: namqn, 12-02-2009 lúc 05:13 PM.
phandinh vẫn chưa có mặt trong diễn đàn