Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Clase Sist Embebidos I
Clase Sist Embebidos I
SISTEMAS EMBEBIDOS I
Sistemas Embebidos
d) Memorias con refresco: La información sólo dura un cierto tiempo. Para que no
desaparezca, hay que regrabar la información de forma periódica (señal de refresco).
Modo de acceso
Según el método utilizado para localizar la información tenemos:
Los pines que se programan son RA0 a RA4, Puerto A y RB0 a RB7,
Puerto B
PIC16F84
Al conjunto de pines RA se le llama “puerto A” y al conjunto de
pines RB se le llama “puerto B”.
Lo primero y quizá más importante que podemos
programarle a estos pines es:
Si van a ser ENTRADAS o SALIDAS
Cualquiera de estos pines puede ser programado como
entrada o como Salida
Si un pin se programa como ENTRADA, entonces podrá
detectar un voltaje: “0” o “1”, que a su vez puede ser la
apertura o el cierre de un interruptor, un botonazo, o la
acción de un sensor.
Si un pin se programa como SALIDA, será capaz de prender
un led, energizar un relevador o un solenoide, etc.
PIC16F84
En la Fig. si RB7 se
programa como
salida. Entonces un “1”
prendería el led y un
“0” lo apagaría.
En cambio si RB3 se
programa como
entrada. Al aire se
detecta un “1” y al
oprimir el botón se
detecta un “0”.
“De esto trata la programación de los PIC. Detectar botonazos o
niveles de voltaje para energizar o apagar un led, un relevador, un
motor, etc.”
La memoria para el programa
(program memory)
La memoria para el programa
(program memory)
El programa que Editamos, Compilamos y que
finalmente gravamos en el PIC, cuando lo
quemamos, se almacena en su memoria.
En esta memoria se guardan las instrucciones del
programa. Una por una, como en renglones de
un cuaderno. Un renglón, una instrucción, otro
renglón otra instrucción.
La cantidad de renglones disponibles esta limitada
por la capacidad de la memoria. En el PIC16F84
contamos con 1024 renglones para escribir en
cada uno de ellos las instrucciones del programa.
La memoria para el programa
(program memory)
La memoria del PIC16F84 es reprogramable. Esto quiere decir que si el
programa no nos gusta podremos volverlo a grabar una y otra vez.
Otra característica de esta memoria es que es permanente. Una vez que
gravamos el PIC, lo podemos retirar del programador, guardarlo en la
bolsa y llevarlo a otro lugar, entonces insertarlo en alguna tarjeta de
prueba o de una aplicación industrial. No se borra al desconectar el PIC.
.
La memoria para los datos
(data memory)
Para referirnos a los bits de los
registros seguiremos esta
convención:
.
La memoria para los datos
(data memory)
La memoria de datos (RAM) esta dividida en dos grupos: a las primeras 12 localidades se les llama
“registros especiales” y al resto se les llama “registros de uso general”.
En Dirección 5 de la memoria de datos esta el Puerto A
Al igual que otras localidades de la memoria RAM, mediante la declaración equ podremos asignar un
nombre al Puerto A o al Puerto B.( el nombre que le daremos a esta dirección en nuestro
programa) Por ejemplo:
Bit 0 C (acarreo): en la operación de suma se pone a 1 cuando hay un acarreo en el bit más
significativo y cumple la función inversa en una operación de resta, se pone a cero cuando hay un
préstamo.
También hace parte de las instrucciones RRF y RLF como ya fueron explicadas anteriormente.
Bit 1 DC: funciona de la misma manera que el bit 0 solo que este señala un acarreo en el cuarto bit de
menos peso, es muy útil para operaciones con números representados en BCD (decimal codificado
en binario).
Bit 2 Z (cero): conocida como la bandera cero, se pone en “1” cuando el resultado de una operación
aritmética o lógica es cero
Bit 3 PD: esta bandera indica la ejecución de una operación SLEEP poniéndose a “0” y se pone a “1”
cuando sucede un reset por conexión de alimentación o por función del perro guardián.
Bit 4 TO: se pone a “0” cuando el perro guardián se desborda y a “1” cuando se ejecutan las
instrucciones CLRWDT y SLEEP o después de conectar la alimentación.
REGISTRO DE ESTADO (STATUS)
Bit 5, Bit 6 RP0 RP1: son los encargados de seleccionar cada uno de los 4 bancos esto se ilustra en la
siguiente tabla.
Bit 7 IRP: este bit se usa junto con el bit de mayor peso del registro FSR para seleccionar el banco de la RAM
para el direccionamiento indirecto
El Acumulador
El acumulador es un Registro de 8 bits. También es llamado
registro de trabajo (Work) se identifica con la letra W.
el acumulador se usa esencialmente
para:
- Mover el contenido de un registro a
otro
- Para inicializar un registro con un
valor determinado
- Para realizar alguna operación lógica
o aritmética.
Valor de W ?
En este ejemplo, las palabras: Inicio y PrendeSalidas son Etiquetas, las usamos
para mantener el programa bien documentado y como referencia para otras
instrucciones que se coloquen más adelante. Las Etiquetas son como nombres
del renglón. Siempre se escriben a partir de la columna 1.
Programando en Ensamblador
En el renglón que sigue a la etiqueta Inicio, se instruye al PIC cuales pines del
Puerto B deseamos como Entradas y cuales como Salidas.
Esto se logra mediante dos instrucciones: