[ บทความ : ตัวอย่างโปรแกรมของ CP-PIC877 V1/V2 ] ตอนที่ 5 การติดต่อกับ Switch และ LED ด้วย PIC16F877

ตัวอย่างต่อไปนี้เป็น โปรแกรมที่เขียนขึ้นเพื่อใช้งานกับบอร์ด CP-PIC877 V1 หรือ V2 ของบริษัท ETT ตัวอย่าง นี้เป็นการติดต่อ LED และ Switch โดย โปรแกรมจะอ่านค่าจาก Switch (Port D) แล้วทำการกลับบิตของค่าที่รับ แล้ว ส่งออกไปที่ LED (Port C) ก่อนอื่น มาดูวงจรกันก่อนครับ

โค้ดสำหรับภาษาแอสเซมบลีเป็นดังนี้ครับ



	;********************************************			
	; Test Switch with LED  
	; Hardware  : CP-PIC877 V2.0
	; Assembler : mpasm.exe
	; Programmer: Somkiat siha
	; Company   : ETT  CO.,LTD.
	; Date      : 14/2/2000
	;********************************************			

	     LIST P=16f877
	     include 

	temp       EQU       0x70


	LED  EQU       PORTC
	SW   EQU       PORTD
	     ORG       0x0000

	;********* initial port **************

	     bsf       STATUS,RP0     ; select bank 1
	     clrf      TRISC          ; port c is output
	     movlw     0xff
	     movwf     TRISD          ; port d is input
	     bcf       STATUS,RP0     ;select abnk 0
	     clrf      LED            ; clear LED

	;************************************
	ML   movf      SW,w           ; read value from SW			
	     movwf     temp           ; keep to tempolary
	     comf      temp,w         ; Invert data
	     movwf     LED            ; Send to LED
	     goto      ML

	     end


ต่อไปนี้เป็นตัวอย่าง สำหรับภาษา BASIC



	'*********************************************			
	'Test switch X 8
	'Hardware   : CP-PIC877 V2.0
	'file name  : PicBasic Pro compiler (PBP.EXE)
	'Programmer : Somkiat Siha
	'Company    : ETT  CO.,LTD.
	' Date      : 1/2/2000
	'*********************************************			


	TRISD=$FF      'Port d is input
	TRISC=$00      'Port c is output

	loop:
	     portc=portd ^ $FF
	goto loop

LiNK :

CP-PIC877 V1
CP-PIC877 V2

เขียนโดย : อีทีที
Author : ETT
e-mail : sales@etteam.com
วันที่ทำการปรับปรุง : ๔ มี.ค. ๒๕๔๔