Page 24 - Microcontrolere - Indrumator de laborator
P. 24
3. Desfășurarea lucrării
3.1. Cu ajutorul mediului integrat de dezvoltare MPLAB X IDE oferit de către
compania Microcip, se creează un nou proiect care va fi implementat în limbaj de
asamblare. În directorul „header” al proiectului este inclus fișierul xc.inc, fișier care se
găsește în directorul compilatorului XC8. În directorul „surse” este încărcat fișierul
sursă Test_2.s care are conținutul indicat în continuare. Programul conține o rutină de
temporizare necesară generării la un pin de ieșire al microcontrolerului a unui semnal
digital periodic cu o anumită durată a impulsurilor.
TITLE “Aplicația nr. 2”
SUBTITLE “Aplicație de testare a unei semnalizări luminoase”
PROCESSOR 16F887
CONFIGURE WDE = off ; se pot seta și alți biți de configurare
#include “xc.inc”
PSECT udata_bank0 ; se declară o variabilă care va fi memorată
; în memoria de date, bank-ul 0, în zona de
; locații de uz general, variabila ocupă
; un octet
COUNT1: DS 1
COUNT2: DS 1
PSECT code
start: ; semnalul de tact generat intern cu frecvența de 4 MHz
BANKSEL(OSCCON)
MOVLW 67H
MOVWF OSCCON
; se invalidează sistemul de întreruperi al microcontrolerului
BANKSEL(INTCON)
BCF INTCOM, 7
; se aleg pinii RA4 - RA7 pentru comanda sistemului de iluminare
BANKSEL(PORTA)
MOVLW 0
MOVWF PORTA
BANKSEL(TRISA)
MOVLW 0FH
MOVWF TRISA ; pinii RA4-RA7 sunt pini de ieșire
BANKSEL(ANSEL)
CLRF ANSEL ; se anulează celelalte funcții analogice
; ale pinilor RA4-RA7
adr_0: BANKSEL(PORTA)
BSF PORTA, 4 ; la pinul RA4 avem o tensiune de 5V
CALL adr_1 ; se apelează subrutina de temporizare
BANKSEL(PORTA)
BCF PORTA, 4 ; la pinul RA4 avem o tensiune de 0V
21