Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Pag. -1-
10Ω
MATRIZ DE LED:
KINBRIGHT TC12
12=5
F4 5
RD5 g DISPLAYS:
F5 1
c3 KINBRIGHT
RD4 F6 7 e c SC08-11HWA
c4 F7 2 d
RD3 c1 c2 c3 c4 c5 dp dp
39Ω
c5 13 3 4 10 6 3 8 5 3 8 5
RD2
D.dec. 16 15 14 13 12 11 10
RD1
RD0 D.un. ULN2003A
gnd
Conector Horizontal
en la Placa
1
2 3 4 5 6 7 8
dp
f/F6
c/F3
a/F1
d/F4
b/F2
e/F5
g/F7
Ejemplos de Programas con Microcontroladores PIC
Pag. -2-
RB5
RB4
RB3
RB1
RB0
RB6
RB7
RB2
E.P.S. de Ingeniería de Gijón Ejemplos de Programas con Microcontroladores PIC
Planteamiento:
Despejando:
INICIALIZACIÓN
BARRIDO DE DISPLAYS
INTERRUPCIÓN TMR1
(CADA 0,5S) BARRIDO DE MATRIZ DE LED
EXPLORACIÓN DE RC2
Pag. -3-
E.P.S. de Ingeniería de Gijón Ejemplos de Programas con Microcontroladores PIC
INICIALIZACIÓN
BARRIDO DE DISPLAYS
Pag. -4-
E.P.S. de Ingeniería de Gijón Ejemplos de Programas con Microcontroladores PIC
Pag. -5-
E.P.S. de Ingeniería de Gijón Ejemplos de Programas con Microcontroladores PIC
Pag. -6-
E.P.S. de Ingeniería de Gijón Ejemplos de Programas con Microcontroladores PIC
;*************************************************************************
; Ejemplo de manejo de dos displays de siete segmentos por barrido
; y de una matriz de led que representa los números del 0 al 9
;
; Inicialmente en el fichero dsp&mtz.asm
; Autor: Fernando Nuño García
;
;*************************************************************************
;
; En los displays aparecerá el número de veces que se actuó sobre el
; pulsador conectado a RC2 desde el momento que se hace RESET,
; mientras que en la matriz de led aparecen los números del 0 al 9
; permaneciendo 1 seg cada uno de ellos
;
; Se emplea una placa auxiliar que se conecta a la PICDEM2 y que tiene
; displays y matriz conectados en paralelo al puerto B y con control
; de la habilitacion por medio del CI ULN2003 y el puerto D
;
;*****************************************************************************
;Subprograma que, a partir del dato (en posición TIEMPO) y de la columna que
;toca representar, saca los led a iluminar
;
;Lo situamos al principio porque maneja una tabla grande y así aseguramos
;que no hay problemas con el manejo del PCLATH
;
LEDMTZ movf TIEMPO,W ;Se toma el número a representar
movwf AUX ;y se le pasa a posición AUX
bcf STATUS,C ;Puesto a cero del carry
rlf AUX ;Nos desplazamos en la tabla multiplicando
rlf AUX ;por 5 el dato y sumamos el n£mero de la
addwf AUX,W ;columna a representar
addwf COL,W ;a continuaci¢n
addwf PCL,f ;Sumamos a PC y volvemos con W conteniendo
;la informaci¢n sobre los displays a iluminar
;Tabla para que la fila superior se controle con RB0 y así sucesivamente
;hasta que la fila inferior se controle con RB6
Pag. -7-
E.P.S. de Ingeniería de Gijón Ejemplos de Programas con Microcontroladores PIC
retlw b'01010001'
retlw b'01001001'
retlw b'01000101'
retlw b'01000010'
ELTRES retlw b'00100010'
retlw b'01000001'
retlw b'01001001'
retlw b'01001001'
retlw b'00110110'
ELCUATRO retlw b'00011000'
retlw b'00010100'
retlw b'00010010'
retlw b'01111111'
retlw b'00010000'
ELCINCO retlw b'00100111'
retlw b'01000101'
retlw b'01000101'
retlw b'01000101'
retlw b'00111001'
ELSEIS retlw b'00111100
retlw b'01001010
retlw b'01001001
retlw b'01001001
retlw b'00110010
ELSIETE retlw b'00000001'
retlw b'00000001'
retlw b'01111001'
retlw b'00000101'
retlw b'00000011'
ELOCHO retlw b'00110110'
retlw b'01001001'
retlw b'01001001'
retlw b'01001001'
retlw b'00110110'
ELNUEVE retlw b'00000110'
retlw b'01001001'
retlw b'01001001'
retlw b'00101001'
retlw b'00011110'
;Final de la tabla de números por columnas
movlw 0x01
movwf PIE1 ;Activamos interrupciones de TMR1
Pag. -8-
E.P.S. de Ingeniería de Gijón Ejemplos de Programas con Microcontroladores PIC
;******************************************************************************
;Subprograma de suma con ajuste a dígitos decimales
Pag. -9-
E.P.S. de Ingeniería de Gijón Ejemplos de Programas con Microcontroladores PIC
;Para que la espera sea de 1mseg, se deben contar aprox.3 pulsos, luego la
;precarga ser de 256-3=253 que corresponde a FD
;******************************************************************************
;Programa de tratamiento de la interrupci¢n generada por TMR1,
;se producirá cada 0.5 segundos (MEDIOS)
Pag. -10-
E.P.S. de Ingeniería de Gijón Ejemplos de Programas con Microcontroladores PIC
Pag. -11-