Documentos de Académico
Documentos de Profesional
Documentos de Cultura
TIPO RISC.
• FABRICADOS POR MICROCHIP TECHNOLOGY INC.
• EL NOMBRE COMPLETO ES PICMICRO, GENERALMENTE SE
UTILIZA COMO PERIPHERAL INTERFACE CONTROLLER
(CONTROLADOR DE INTERFAZ PERIFÉRICO).
2
INTRODUCCIÓN A LOS MICROCONTROLADORES PIC
• MICROCONTROLADOR PIC: VENTAJAS
– EFICIENCIA DEL CÓDIGO: PERMITEN UNA GRAN COMPACTACIÓN DE LOS PROGRAMAS.
– RAPIDEZ DE EJECUCIÓN: A FRECUENCIA DE 20MHZ -> 5 MILLONES DE INSTR./SEG.
– SEGURIDAD EN ACCESO POR LA SEPARACIÓN DE MEMORIA DE DATOS Y DE
PROGRAMA.
– JUEGO REDUCIDO DE INSTRUCCIONES Y DE FÁCIL APRENDIZAJE.
– COMPATIBILIDAD DE PINES Y CÓDIGO ENTRE DISPOSITIVOS DE LA MISMA FAMILIA O
INCLUSO DE FAMILIAS DISTINTAS.
– GRAN VARIEDAD DE VERSIONES EN DISTINTOS ENCAPSULADOS (DESDE 8 HASTA 84
PINES) SIN REDUCCIÓN DE LAS PRESTACIONES INTERNAS (MUY VERSÁTILES).
– POSIBILIDAD DE PROTECCIÓN DEL CÓDIGO MUY FIABLE.
– HERRAMIENTAS DE DESARROLLO SOFTWARE Y HARDWARE ABUNDANTES Y DE BAJO
COSTE.
3
MICROCONTROLADORES PIC
CPU Program
Data Memory
Memory
8 12
14
16 16
24
X12=PIC10F2XX, PIC12F5XX,PIC16F5XX
X14=PIC12FXXX,PIC16FXXX
X16=PIC18FXXX
X24=dsPIC30F
5
INTRODUCCIÓN A LOS MICROCONTROLADORES PIC
• MICROCONTROLADOR PIC
• ALTA VELOCIDAD DE APLICACIÓN CON BAJO CONSUMO.
• CADA CICLO DE INSTRUCCIÓN DURA 4 DE LA FRECUENCIA DE RELOJ DE ENTRADA
7
INTRODUCCIÓN A LOS MICROCONTROLADORES PIC
• MICROCONTROLADOR PIC ESTRUCTURA PIPE-LINE: DURANTE LA EJECUCIÓN DE UNA
INSTRUCCIÓN, SE ESTÁ ACCEDIENDO A LA MEMORIA DE PROGRAMA PARA TRAER LA
SIGUIENTE INSTRUCCIÓN A EJECUTAR.
•EN CUANTO SE ACABA UNA INSTRUCCIÓN, YA SE DISPONE DE LA SIGUIENTE PARA EJECUTAR
(SALVO QUE SE TRATE DE UN SALTO O LLAMADA A SUBRUTINA QUE OCUPAN 2 CICLOS).
W Register
General Purpose
Registers (RAM)
9
INTRODUCCIÓN A LOS MICROCONTROLADORES PIC
• MICROCONTROLADOR PIC
– AMPLIO RANGO DE MÓDULOS INTERNOS. USART CAP
SPI EEPROM COMP
I2C
• PUERTOS DE ENTRADA/SALIDA. PWM
• COMPARADORES ANALÓGICOS.
• CONVERSIÓN ANALÓGICA / DIGITAL (A/D).
• TRANSMISOR RECEPTOR ASÍNCRONO SÍNCRONO UNIVERSAL (USART Ó SCI).
• PUERTO SERIE SÍNCRONO BÁSICO Ó MAESTRO(BSSP Ó MSSP).
• MEMORIA EEPROM DE DATOS.
• FLASH EEPROM DE PROGRAMA MODIFICABLE DESDE EL CÓDIGO.
• SOPORTE PARA CAN, LIN, IRDA
• SOPORTE PARA CONTROLADOR ETHERNET.
• CONTROLADORES LCD.
10
INTRODUCCIÓN A LOS MICROCONTROLADORES PIC
• MICROCONTROLADOR PIC
– AMPLIO RANGO DE PERIFÉRICOS EXTERNOS. (I²C, DEL INGLÉS INTER-INTEGRATED
CIRCUIT), SPI (SERIAL PORT INTERFACE) · UART (UNIVERSAL ASYNCHRONOUS RECEIVER-
TRANSMITTER), CAN (CONTROLLED AREA NETWORK)
11
INTRODUCCIÓN A LOS MICROCONTROLADORES PIC
• MICROCONTROLADOR PIC
FAMILIA PIC.
32 Bits
16 Bits
dsPIC30F
8 Bits
PIC18FXXX Enhanced
PIC12F6XX,PIC16FXX Mid-range
PIC12F4XX,PIC16F5XX
PIC10F2XX Base-line
4 Bits
12
INTRODUCCIÓN A LOS MICROCONTROLADORES PIC
• MICROCONTROLADOR PIC
FAMILIA 8 PIN
– FAMILIA 20 PIN
13
INTRODUCCIÓN A LOS MICROCONTROLADORES PIC
• MICROCONTROLADOR PIC IC
– FAMILIA 18 PIN
– FAMILIA 28 PIN
14
INTRODUCCIÓN A LOS MICROCONTROLADORES PIC
• MICROCONTROLADOR PIC
– FAMILIA 40 PIN
15
INTRODUCCIÓN A LOS MICROCONTROLADORES PIC
MICROCONTROLADOR PIC
ENCAPSULADOS/NOMENCLATURA
16
INTRODUCCIÓN A LOS MICROCONTROLADORES PIC
• MICROCONTROLADOR PIC
– ENCAPSULADOS/NOMENCLATURA
17
INTRODUCCIÓN A LOS MICROCONTROLADORES PIC
• MICROCONTROLADOR PIC
– FAMILIAS EN LA WEB DE MICROCHIP
18
INTRODUCCIÓN A LOS MICROCONTROLADORES PIC
• MICROCONTROLADOR PIC
19
INTRODUCCIÓN A LOS MICROCONTROLADORES PIC
• MICROCONTROLADOR PIC: FACILIDAD DE DESARROLLO
– EL DESARROLLO SOFTWARE PARTE DEL DISEÑO DEL PROGRAMA Y ESCRITURA DEL
CÓDIGO FUENTE EN ENSAMBLADOR (MPASM) O LENGUAJE DE ALTO NIVEL (C
COMPILERS).
– A CONTINUACIÓN SE PRUEBA, VERIFICA Y MODIFICA MEDIANTE:
• SIMULACIÓN DEL PROGRAMA -PURO SOFTWARE- (MPLAB SIM).
• EMULACIÓN DENTRO DEL CIRCUITO DE APLICACIÓN -SOFTWARE Y HARDWARE- (MPLAB-ICE
Y MPLAB-ICD).
– GRABACIÓN DEL CÓDIGO MÁQUINA EN LA MEMORIA DEL MICRO (PICSTART-PLUS Y
PROMATE-II).
20
MICROCONTROLADOR PIC
• FACILIDAD DE DESARROLLO
21
MICROCONTROLADORES
VSS: Tierra
OSC1/CLKIN-OSC2/CLKOUT: conexión
del oscilador
OSC1/CLKIN: ENTRADA DEL OSCILADOR DEL CRISTAL / ENTRADA DE RELOJ DE UNA FUENTE
EXTERNA.
ARQUITECTURA INTERNA PIC16F84
Características Valor
Memoria de Programa 1k x 14 bits
Memoria de Datos RAM 68 Bytes
Memoria de Datos EEPROM 64 Bytes
Pila de programa 8 Niveles
Interrupciones 4 tipos diferentes
RISC 35
Frecuencia Máxima 10 MHz
Temporizadores 2 (TMR0(3) y WDT(4))
Líneas de Entradas/Salidas Digitales 13 (5 Puerto A, 8 Puerto B)
Corriente máxima sumidero 80 mA PA/150 mA PB
Corriente máxima fuente 50 mA PA/100 mA PB
Corriente máxima sumidero por línea (Pin) 25 mA
Corriente máxima fuente por línea (Pin) 20 mA
Voltaje de alimentación 2 a 6 VDC
Voltaje de programación 12 a 14 VDC
Encapsulado DIP plástico 18 pines
TIPOS DE OSCILADORES
• HS: (HIGH SPEED CRYSTALL RESONADOR): ALTA VELOCIDAD DE 20 MHZ A 4 MHZ.
• XT: (CRYSTALL//RESONADOR): ESTÁNDAR DE 4 MHZ MÁXIMO.
• LP: (LOW POWER CRYSTALL): BAJO CONSUMO, 200 KHZ A 30 KHZ.
• RC: (RESISTENCE/CAPACITOR): BAJA PRECISIÓN, TIENE UNA TABLA ASOCIADA A
LOS VALORES DE R Y C. MUY POCO USO. 200 HZ A 32 HZ.
15/05/2022 32
FRECUENCIA DE FUNCIONAMIENTO
15/05/2022 33
• HTTPS://WWW.YOUTUBE.COM/WATCH?V=20UWZ6BLZFM
• HTTPS://WWW.YOUTUBE.COM/WATCH?V=KAGOFAY8BQS
CÁLCULOS DE TIEMPOS
LOS CÁLCULOS SE REALIZAN BAJO LAS SIGUIENTES
RECOMENDACIONES:
1. SE ELIGE EL OSCILADOR CON EL CUAL SE VA A TRABAJAR.
2. DADA LA FRECUENCIA DE FUNCIONAMIENTO (FRECUENCIA DE
OSCILACIÓN FOSC), HALLAMOS EL PERÍODO.
15/05/2022 37
CIRCUITOS DE APOYO (INTRODUCEN
DATOS AL MICROCONTROLADOR)
Pulsadores e interruptores
15/05/2022 38
CIRCUITOS DE APOYO (SACAN
DATOS DEL MICROCONTROLADOR)
Visualización
Con Display
39
CIRCUITOS DE APOYO (SACAN DATOS DEL MICROCONTROLADOR)
Con Relé
Con optoacoplador
REGISTROS, INSTRUCCIONES Y
BANCOS DE MEMORIA
ESTRUCTURA DE DATOS
• BIT: UNIDAD MÍNIMA DE
INFORMACIÓN x
INCLUDE .INC
El uso del INCLUDE, nos permite incluir en nuestro proyecto, una
plantilla que nos ahorra el trabajo de declarar todos los registros de
Funciones Especiales (SFR) de la memoria RAM de registros.
Es importante destacar, que en esta plantilla, todos los registros
están declarados en mayúscula. Por lo que durante la elaboración de un
programa, se debe respetar este formato.
Ejemplo:
INCLUDE <P16F84.INC> ó INCLUDE P16F84.INC
ESTRUCTURA DE UN PROGRAMA
Encabezado
EN GENERAL UN PROGRAMA ESTÁ
ESTRUCTURADO EN TRES GRANDES PARTES:
1 1 0 1 0 1 0 0
1 1 0 0 1 0 0 0
INSTRUCCIONES DE
EXPLORACIÓN/TESTEO DE BITS
AND w with F
Operación w AND f → d
Sintaxis [Etiqueta] ANDWF f,d
0 < f < 127
Operadores
d [0,1]
Ciclos 1
df
OPCODE 00 0101 ff
ffff
Bit Clear F
Operación 0 → (f<b>)
Sintaxis [Etiqueta] BCF f,b
0 < f < 127
Operadores
0<b<7
Ciclos 1
EJEMPLO:
BCF FLAG_REG, 7
Si antes de la instrucción el registro:
FLAG_REG = C7 h = 1100 0111 b
Al ejecutarse la instrucción, el registro queda con el
valor:
FLAG_REG = 47b = 0100 0111 b
BSF BSF
Bit Set F
Operación 1 → (f<b>)
Sintaxis [Etiqueta] BSF f,b
0 < f < 127
Operadores
0<b<7
Ciclos 1
11b bf
OPCODE 01 ffff
b ff
Descripción Pone a 1 el bit b del registro f
EJEMPLO:
BSF FLAG_REG, 7
Si antes de la instrucción el registro tiene el valor:
FLAG_REG = 0A h = 0000 1010 b
Al ejecutarse la instrucción, el registro queda con el valor:
FLAG_REG = 8A h = 1000 1010 b
MOVLW MOVLW
Move literal to w
Operación k→w
Sintaxis [Etiqueta] MOVLW k
Operadore
0 < f < 255
s
Ciclos 1
kkk
OPCODE 11 00xx kkkk
k
El registro w se carga con el valor de 8 bits
Descripción
del literal k
EJEMPLO:
MOVLW 0x5A
Al ejecutarse:
w = 5A h
MOVF MOVF
Move f
Operación f→d
Sintaxis [Etiqueta] MOVF f,d
0 < f < 127
Operadores
d [0,1]
Ciclos 1
dff
OPCODE 00 10000 ffff
f
El contenido del registro f se carga en el registro
destino dependiendo del valor de d. Si d=0 el destino
Descripción es el registro w, si d=1 el destino es el propio registro
f. Esta instrucción permite verificar dicho registro ya
que el flag Z queda afectado.
EJEMPLO:
MOVF FSR,0
Al ejecutarse:
w = al valor del FSR
MOVWF MOVWF
Move w to f
Operación w→f
Sintaxis [Etiqueta] MOVWF f
Operadores 0 < f < 127
Ciclos 1
OPCODE 00 0000 1fff ffff
Mueve el contenido del registro w al
Descripción
registro f
EJEMPLO:
MOVWF OPCION
Si antes de la instrucción:
OPCION = FF h
w = 4F h
Al ejecutarse:
OPCION = 4F h
w = 4F h
TRIS TRIS
EJEMPLO:
BSF STATUS,RP0 ; activa el banco 1.
MOVLW 16h ; carga el acumulador con el valor 16h
MOVWF TRISA ; carga el registro PORTA con W.
SELECCIONANDO LOS BANCOS DE REGISTROS
• EL PIC 16F84 POSEE 2
BANCOS DE REGISTROS,
DEL REGISTRO STATUS.
• SI RP0= 1, SE SELECCIONA
EL BANCO 1
• SI RPO= 0, SE SELECCIONA
EL BANCO 0
• EJEMPLO: SELECCIONE EL
BANCO DE REGISTROS 1:
• BSF STATUS,5 ; RP0= 1
• SELECCIONE EL BANCO DE
REGISTROS 0:
• BCF STATUS,5 ; RP0=0
• DE CONFIGURACIÓN:
• TRISA (85H, BANCO 1)
• TRISB (86H, BANCO 1)
• DE TRABAJO (LECTURA/ESCRITURA)
• PORTA (05H, BANCO 0)
• PORTB (06H, BANCO 0)
• PORTA Y PORTB, SON REGISTROS DE LECTURA/ESCRITURA,
QUE ESTÁN DIRECTAMENTE VINCULADOS A LOS PUERTOS
DEL MICROCONTROLADOR.
LEER Y/O ESCRIBIR EL UN VALOR
EN UN PUERTO
• EJEMPLO 1. LEA EL VALOR PRESENTE EN EL PUERTO A Y GUÁRDELO EN
UN REGISTRO DATOA.
MOVF PORTA,0 ; PORTA→W
MOVWF DATOA ; W→DATOA
• PARA EL SIGUIENTE
CIRCUITO, ¿QUÉ VALOR
DEBEMOS COLOCAR EN
PUERTO B PARA QUE SE
VISUALICE UN 7 EN EL
DISPLAY?
btfss PORTA,0
goto RutinA
goto RutinB
TOMA DE DECISIONES
• UNA TAREA.
LA CONDICIÓN PUEDE
Condición NO
Proceso A VENIR INTERNAMENTE
X=1? COMO EXTERNAMENTE.
SI
• Interna • Externa
btfss STATUS,0 ; C=1? btfss PORTA,0 ; RA0=1?
goto ProcesoA goto ProcesoA
goto SIGUE goto SIGUE
TOMA DE DECISIONES
• DOS TAREAS.
NO LA CONDICIÓN PUEDE
Condición VENIR INTERNAMENTE
Proceso A
X=1? COMO EXTERNAMENTE.
SI
Proceso B
• Interna • Externa
btfss STATUS,0 ; C=1? btfss PORTA,0 ; RA0=1?
goto ProcesoA goto ProcesoA
goto ProcesoB goto ProcesoB
TOMA DE DECISIONES. EJEMPLO
• DADO EL SIGUIENTE CIRCUITO, ACTIVE EL LED UBICADO EN
RB0 SI RA0, VALE 0 Y EN CASO CONTRARIO, ACTIVE EL LED
UBICADO EN RB1.
TOMA DE DECISIONES. EJEMPLO
NO Activar LED en
RA0=1?
RB0
• Externa
SI btfss PORTA,0 ; RA0=1?
goto ProcesoA
goto ProcesoB
Activar LED en
ProcesoA bsf PORTB,0
RB1
goto SIGUE
ProcesoB bcf PORTB,1
goto SIGUE
SIGUE ------
------
------
TOMA DE DECISIONES. CERROJO Ó
VALIDACIÓN
• SE QUEDA ESPERANDO
QUE LA CONDICIÓN
OCURRA.
Condición NO
X=1?
• Interna
ESPERA btfss INTCON,0
goto ESPERA
SI
goto ProcesoA
Proceso A
• Externa
EXPLORA btfss PORTA,0 ; RA0=1?
goto EXPLORA
goto ProcesoA
¿CÓMO PASAR DEL DIAGRAMA DE FLUJO AL
PROGRAMA?
• ES SENCILLO:
• CADA SÍMBOLO DEL DIAGRAMA DE FLUJO REPRESENTA UNA (Ó VARIAS)
INSTRUCCIÓN (ES).
• EL PROGRAMADOR/DISEÑADOR, MEDIANTE LA PRÁCTICA Y/O VISUALIZACIÓN,
DEBE BUSCAR LAS INSTRUCCIONES QUE CUMPLAN CON LOS SÍMBOLOS Y SU
CONTENIDO, E IR COLOCÁNDOLAS SECUENCIALMENTE, SEGÚN LO INDIQUE
EL DIAGRAMA DE FLUJO PREVIAMENTE ELABORADO.
CARGA movlw
35H→ SUMA movwf
SI btfss
Z=1? goto
goto
NO
ProcesoA
¿CÓMO PASAR DEL DIAGRAMA DE FLUJO AL
PROGRAMA?
• ES SENCILLO:
• CADA SÍMBOLO DEL DIAGRAMA DE FLUJO REPRESENTA UNA (Ó VARIAS)
INSTRUCCIÓN (ES).
• EL PROGRAMADOR/DISEÑADOR, MEDIANTE LA PRÁCTICA Y/O VISUALIZACIÓN,
DEBE BUSCAR LAS INSTRUCCIONES QUE CUMPLAN CON LOS SÍMBOLOS Y SU
CONTENIDO, E IR COLOCÁNDOLAS SECUENCIALMENTE, SEGÚN LO INDIQUE
EL DIAGRAMA DE FLUJO PREVIAMENTE ELABORADO.
SI btfss STATUS,2
Z=1? goto ProcesoA
goto Carga
NO
ProcesoA
RUTINAS
INTERMEDIAS
SUBRUTINA
MIENTRAS SE
PRESIONA TECLA NO
SI
DELAY 10 ms
PROCESO A
PRESIONAR TECLA Y Tecla NO
ESPERAR A QUE SE Presionada?
SUELTE PARA
SI
EJECUTAR SUBRUTINA
Retardo 10 ms
Tecla NO
Soltada?
SI
Retardo 10 ms
Proceso A
CALL K
PCL INICIO
INSTRUCC A PROX
27H
INSTRUCC B INSTRUCC 1
28H
INSTRUCC C INSTRUCC 2
29H
CALL PROX RETURN ó RETLW K
2AH
INSTRUCC D
2BH SUBRUTINA
FIN
PROGRAMA PRINCIPAL
CALL K
• EL LLAMADO A UNA SUBRUTINA K, DESVÍA EL FLUJO
NORMAL DEL PROGRAMA, HACIA K.
• EL VALOR DEL CONTADOR DEL PROGRAMA (PC) ES
GUARDADO EN LA PILA (STACK), MEMORIA TIPO FIFO
(FIRST IN FIRST OUT).
• LA FAMILIA DE LA GAMA MEDIA (PIC16FXXX) POSEE 8
NIVELES DE STACK.
• ESTO OCURRE SI EXISTEN 8 SUBRUTINAS ANIDADAS
(SUBRUTINAS DENTRO DE SUBRUTINAS).
• DEBE TENERSE EN CUENTA AL MOMENTO DE LA
PROGRAMACIÓN Y ELABORACIÓN DE UN DISEÑO.
CALL K
PILA (STACK) (PCL)
K (03H)
L (05H)
M (09H)
N (1FH)
O (2AH)
P (2EH)
Q (30H)
R (3CH)
T (40H)
TIMER 0
REGISTROS ASOCIADOS AL
TEMPORIZADOR TMR0
0 0 0 1:2 1:1
0 0 1 1:4 1:2
0 1 0 1:8 1:4
0 1 1 1:16 1:8
1 0 0 1:32 1:16
1 0 1 1:64 1:32
1 1 0 1:128 1:64
1 1 1 1:256 1:128
¿CÓMO CUENTA EL TMR0?
00H
FFH
EL TMR0 CUENTA EXCLUSIVAMENTE DE
FORMA ASCENDENTE, NUNCA
DESCENDENTE.
00H
(28 – N10)
00H
Si el TMR0 se carga con un valor, FFH
éste comenzará a contar desde el
valor cargado hasta que se
desborda (cuando pasa a 00H) Valor cargado
En el TMR0
00H
CÁLCULOS CON EL TMR0
• CUANDO SE CARGA EN EL REGISTRO TMR0 UN VALOR XXH, ÉL
MISMO CONTARÁ: (FFH – XXH) IMPULSOS Y EL TIEMPO QUE
TARDA EN HACERLO VIENE DADO POR LA EXPRESIÓN:
TEMPORIZACIÓN= 4 * TOSC * VALOR REAL TMR0 * RANGO DEL
DIVISOR DE FRECUENCIA
VALOR REAL TMR0 = (28 – N10) = (256 – N10)
N10= VALOR A CARGAR EN EL TMR0
PASO 2. DEBEMOS DE
ESTRUCTURAR EL PROGRAMA
PARA QUE VIGILE E INFORME
CUANDO EL TMR0 SE HA
DESBORDADO, Y EL BIT QUE
NOS DA ESTA INFORMACIÓN
ES EL TOIF, DEL REGISTRO
INTCON. ADICIONAL A ESTO
DEBEMOS CONFIGURAR EL
REGISTRO OPTION PARA QUE
ESTE TRABAJE CON EL
PRESCALER QUE HEMOS
SELECCIONADO PARA
NUESTROS CÁLCULOS, ASÍ
COMO DE ASIGNARLO AL TMR0.
ASÍ COMO LA RUTINARIA
CONFIGURACIÓN DE LOS
PUERTOS.
LIST P=16F84A
INCLUDE P16F84A.INC
ORG 00H
GOTO INICIO
INICIO BSF STATUS,5
CLRF TRISA
Paso 3. Programa MOVLW B’11010110’
MOVWF OPTION_REG
BCF STATUS,5
CLRF INTCON
LEDON BSF PORTA,0
CALL RETARDO
LEDOFF BCF PORTA,0
CALL RETARDO
GOTO LEDON
;***RUTINA DE RETARDO***
RETARDO MOVLW D’139’
MOVWF TMR0
ESPERA BTFSS INTCON,TOIF
GOTO ESPERA
BCF INTCON,TOIF
RETURN
END
EJERCICIO. REALICE UN PROGRAMA QUE Subrutina
PERMITA ENCENDER Y APAGAR UN LED
CADA UN SEGUNDO. MEDIANTE TIMER0
Y CON UN OSCILADOR XT.
Programa Principal
¿OTRA FORMA DE HACER LOS
CÁLCULOS?
Programa Principal
RSI
¿CUANDO UTILIZAR UNA
INTERRUPCIÓN?
UNA INTERRUPCIÓN ES MUY IMPORTANTE CUANDO
DESEAMOS REALIZAR UNA TAREA QUE NO DEPENDA DE UNA
EXPLORACIÓN CONSTANTE DEL PROGRAMA SOBRE LA MISMA.
TAMBIÉN CUANDO DESEAMOS QUE NUESTRO PROGRAMA
RESPONDA DE FORMA INMEDIATA Y AUTOMÁTICA A
DETERMINADOS EVENTOS.
EJEMPLO DEL USO DE INTERRUPCIÓN:
• EN LOS SISTEMAS DE CONTROL, CUANDO SE NECESITA UN
PULSADOR DE PARADA DE EMERGENCIA (PARE).
• EN UN DISEÑO, CUANDO SE REQUIERE QUE NUESTRO CIRCUITO
CUMPLA CON DETERMINADAS TAREAS, AL PULSARSE UNA TECLA
(LAMP TEST).
• EN EL MANEJO DE TECLADOS, SE RECOMIENDA SU USO, YA QUE SE
PUEDE METER AL MICROCONTROLADOR EN UN ESTADO DE
REPOSO, AHORRANDO ENERGÍA Y ESPERANDO A QUE SE PULSE UNA
TECLA PARA INICIAR UNA RUTINA DE SERVICIO (CLAVE).
• CUANDO ALMACENAMOS INFORMACIÓN EN LA EEPROM Y
DESEAMOS SER ADVERTIDOS DE QUE ÉSTA SE HA TERMINADO
(ALMACENAMIENTO).
• ETC...