PIC Vietnam

Go Back   PIC Vietnam > Microchip PIC > Cơ bản về vi điều khiển và PIC

Tài trợ cho PIC Vietnam
Trang chủ Đăng Kí Hỏi/Ðáp Thành Viên Lịch Bài Trong Ngày Vi điều khiển

Cơ bản về vi điều khiển và PIC Những bài hướng dẫn cơ bản nhất để làm quen với vi điều khiển PIC

 
 
Ðiều Chỉnh Xếp Bài
Prev Previous Post   Next Post Next
Old 22-08-2008, 12:22 AM   #3
tallht
Đệ tử 5 túi
 
tallht's Avatar
 
Tham gia ngày: Mar 2008
Nơi Cư Ngụ: Bình Thạnh, TPHCM
Bài gửi: 98
:
Smile Code đây ah!

Code:
	processor pic16f877a
				include <p16f877a.inc>
		__config _xt_osc & _wdt_off & _cp_off & _boden_off & _lvp_off
;***********************************************************************
		#define read 	porte,0
		#define write	porte,1
		#define cs		porte,2
dataout		equ		0x20		;chua du lieu can doc boi master
w_save		equ		0x21
pc_lath		equ		0x22
status_save	equ		0x23
fsr_save	equ		0x24
;*********************chuong trinh ngat
		org 0x0004
		goto isr
;*********************
isr
;luu cac gia tri thanh ghi giong tac vu push
		movwf w_save
		swapf status,w
		movwf status_save
		movf pclath,w
		movwf pc_lath
		clrf pclath
		movf fsr,w
		movwf fsr_save

		btfss pir1,pspif		;kiem tra co ngat cua psp
		goto exit				;bang 0 thi thoat
		bcf pir1,pspif			;bang 1 thi xoa co ngat nay
		
		banksel trise			;quay ve thanh ghi trise	
		btfsc trise,obf			;kiem tra du lieu da duoc doc chua?
		Goto exit				;neu chua doc thi thoat ngat
		
		bcf status,rp0
		movf dataout,w			;chuyen du lieu tra portd
		movwf portd
exit							;phuc hoi gia tri ban dau cua cac thanh ghi
		bcf status,rp0
		movf fsr_save,w
		movwf fsr
		movf pc_lath,w
		movwf pclath
		swapf status_save,w
		movwf status
		swapf w_save,f			;swap 2 lan de khong thay doi cac co trong thanh ghi status
		swapf w_save,w
retfie
;*************************************************************************************
;chuong trinh chinh
		org 0x0000
		clrf status
		movlw 0x00
		movwf pclath
		goto main
;*************************************************************************************
main
		org 0x050
		banksel portd
		clrf portd
		banksel trise
		movlw b'00010111'
		movwf trise				;3 chan input,cho phep psp
		movlw 0x06
		movwf adcon1			;cac chan vao la digital
;***khoi tao ngat psp
		bsf pie1,pspie
		banksel intcon
		bsf intcon,gie			;cho phep ngat toan cuc
		bsf intcon,peie			;cho phep ngat psp
;khoi tao gia tri can doc boi master
		movlw b'01010101'
		movwf dataout
		movwf portd
;**************************************************************************************
		goto $
		end
đoạn code này dùng cho con slave trong chế độ psp
__________________
-------------------------------------------------------------------
Cung cấp bo mạch thực hành Arduino và các mạch sáng tạo.
Mời tham quan: https://www.facebook.com/eshop1109

Cung cấp dịch vụ order hàng từ Aliexpress
Liên hệ: https://www.facebook.com/Mua-h%E1%BB...5265931515571/
tallht vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
 


Quyền Sử Dụng Ở Diễn Ðàn
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is Mở
Smilies đang Mở
[IMG] đang Mở
HTML đang Tắt

Chuyển đến


Múi giờ GMT. Hiện tại là 02:00 AM.


Được sáng lập bởi Đoàn Hiệp
Powered by vBulletin®
Page copy protected against web site content infringement by Copyscape
Copyright © PIC Vietnam