2) Recopie d'un port en entrée sur sortie.


;*********************************
;*Recopier le portA sur le PortB *
;*********************************

; fichier 2_recop.asm

;
; Device = 16F84		; Utilisation du circuit 16F84
; Horloge =  XT			; Déclaration et config du Circuit

; Equivalence registres
;***********************
 
PORTA		equ		0x0005	; Adresse du porta
PORTB		equ		0x0006	; Adresse du portb
TRISA		equ		0x0085	; Adresse du registre de direction du portb
TRISB		equ		0x0086	; Adresse du registre de direction du porta
STATUS		equ		0x0003	; Le bit 5 permet d'acceder à la Banque 1 ou 0 
					; ce qui donne acces au TRIS ou au PORT 

;***************
;Initialisation*
;***************

		org		00h		; Apres le reset le PC pointe l'adresse 00


		goto		debut		; On saute les 5 premiers octets car à l'adresse
						; 04 on a l'adresse d'interruption
						; On prend l'habitude de ne pas ecrire sur ce segment
						; en sautant simplement jusqu'apres ce segment


		org		05h


debut		
		clrf		PORTB		; Mise a zero des latches de sorties
		clrf		PORTA		; Mise a zero des latches de sorties
		bsf		STATUS,05	; Selection de Bank 1 pour l'accès au TRIS
		movlw		00h		;
		movwf		TRISB		; Declaration du portb en sortie

		movlw		1fh		;
		movwf		TRISA		; Declaration du porta en entree
		bcf		STATUS,05	; Selection de Bank 0 pour l'accès au PORT

;*********************
;Programme principal *
;*********************

boucle	
		movf		PORTA,0	; chargement dans le registre Work du porta
		movwf		PORTB		; chargement du contenu de w dans le fichier PORTB
		goto		boucle	; recopie permanente
		end

DEBUT DE PAGE

1-3) Clignotement de toutes les LED sur un port en sortie à l'aide d'une tempo par boucle.

SOMMAIRE


Giampiero D'AQUINO
Enseignant en Genie Electronique