pic Jul. 2016 | Page 64

En la siguiente tabla podrás comparar el código hexagesimal y su equivalente en 7 segmentos: HEXAGESIMAL 7-SEGMENTOS $00 $01 $02 $03 $04 $05 $06 $07 $08 $09 LIST P = 16F84 $3F $06 $5B $4F $66 $6D $7D $07 $7F $6F ;Indicamos el modelo de PIC a utilizar ; Definición de registros portb EQU 0x06 TRISB Estado pc EQU EQU EQU 0X06 0X03 0x02 ;Hemos conectado el display al puerto B ;La dirección 0x06 corresponde al registro PORTB ;(puerto B) en el banco1 ; y TRISB en banco 1 ; La dirección del registro de estado es la 0x03 ; Contador de Programa, es decir, ;dirección de memoria actual de programa ; Definición de bits banco EQU 0X05 Z EQU 0X02 ; Bit del registro de estado correspondiente ; al banco de datos ; Bit indicador de que el registro W está a cero ; Definición de constantes w f EQU EQU 0 1 ; Destino de operación = w ; Destino de operación = registro ; Definición de variables contador EQU digito EQU 0X0C 0X0D ; Contador ; Para almacenar el dígito ; Comienzo del programa. ORG 0X00 ; Cubrimos el vector de reset GOTO inicio ; Saltamos a la primera dirección tras el vector de interrupción ; ************************ Inicialización de variables ************************* ORG 0X05 inicio BSF estado,banco CLRF TRISB BCF estado,banco CLRF portb CLRF contador CLRW ; ; ; ; ; ; Cambiamos a la segunda página de memoria Programa la puerta B como de todo salidas Volvemos a la página 0. Apaga el display, por si había residuos Borra el contador (dirección 0x0C) Borramos el registro W 62