Tutorials - PIC - Corso A&C

 

Esercitazioni PIC - Assembly


Ecco un esempio semplice di file sorgente Assembly:

;********************************************************
;--------------------------------------------------------
;
; Titolo : Corso Assembly & C - Esercitazione 1A_519
;          Accendere un LED collegato al pin GP5.
;          Il LED si accende all' arrivo della tensione
;          di alimentazione e rimane acceso finchè questa
;          è presente.

; PIC           : 12F519
; Supporto      : MPASM
; Versione      : 1.0
; Data          : 01-05-2013
; Ref. hardware : 1A_519-sch
; Autore        : afg
;
;--------------------------------------------------------
;
; Impiego pin :
; ----------------
; 12F519 @ 8 pin
;
;           |¯¯\/¯¯|
;      Vdd -|1    8|- Vss
;      GP5 -|2    7|- GP0
;      GP4 -|3    6|- GP1
; GP3/MCLR -|4    5|- GP2
;           |______|
;
; Vdd            1: +
; GP5/OSC1/CLKIN 2: Out - LED alla Vss (R in serie)
; GP4/OSC2       3:
; GP3/!MCLR/VPP  4:
; GP2/T0CKI      5:
; GP1/ICSPCLK    6:
; GP0/ICSPDAT    7:
; Vss            8: -
;
;********************************************************************
    
LIST p=12F519            ; Definizione del processore
    
#include <p12F519.inc>

    
radix dec

;####################################################################
;====================================================================
;=                             CONFIGURAZIONE                       =
;====================================================================
; Oscillatore interno, no WDT, no CP, pin4=GP3

 
__config _IntRC_OSC & _IOSCFS_4MHz & _WDTE_OFF & _CP_OFF & _CPDF_OFF & _MCLRE_OFF

;####################################################################
;====================================================================
;=                             MAIN PROGRAM                         =
;====================================================================
; movlw valore_calibrazione prima istruzione intrinseca

; Reset Vector
RES_VEC     ORG 0x00

; calibrazione oscillatore interno 
  
movwf OSCCAL

; inizializzazioni dell' I/O al reset
  
clrf  GPIO        ; preset GPIO latch a 0

; Assegna a GP5 la funzione di uscita digitale
; TRISGPIO xx011111 GP5 out
  
movlw b'11011111'  
  
tris  GPIO        ; al registro direzione

; accende LED portando a livello 1 il pin GP5
  
bsf   GPIO,GP5

; blocco - loop chiuso
  
goto  $

;********************************************************************
; fine sorgente
  
END


Vediamo di capire qualcosa di più.


 

 

Copyright © afg. Tutti i diritti riservati.
Aggiornato il 17/09/14.