-Esta semana hemos hecho un repaso de los conocimientos adquiridos el año
pasado así como algunas pinceladas de nuevos conocimientos de carácter general
como mostrare a continuación.
Para empezar el lunes 19 hicimos un examen que incluyeron muchos de los
conocimientos adquiridos el año pasado, como cambios de bases entre binario,
octal, decimal y hexadecimal con y sin decimales. También poseía
ejercicios y teoría del Álgebra de Boole tales como reducción de funciones, implementación
de puertas lógicas y algunos teoremas y leyes.
El martes y el viernes dimos teoría y no bajamos e instalamos el programa
eagle que es un Cad en el que podremos ver el diseño de placas y realizar
diseños nuevos.
Como teoría vimos los siguientes:
Familias Lógicas:
CMOS: Trabajan entre 3 y 15
voltios, por debajo del 30% es un 'cero' lógico y por encima del 70% es un
'uno' lógico, entre el 30% y 70% es indeterminado. Se diferencia del TTL en que
posee más FANOUT es decir la carga que puede soportar o el número de puertas
que pude aguantar( hasta 40), para más puertas se deberían colocar buffers.
- TTL: Trabajan entre 5 y 3,3 voltios (en ordenadores 1,1 voltios), por
debajo de 2,5 voltios es un 'cero' lógico y por encima de entre 3,5-4 voltios
es un 'uno' lógico. Son más rápidos que los CMOS, pero tienen menos FANOUT,
solo 10 puertas como maximo.
Otros Datos:
- Chips que empiezan por 74 son
TTL, si empiezan por 74...C y llevan una C mayúscula significa que son TTL
pero que incluyen tecnología CMOS.
- Tecnología discreta: Aquella en
la que el chip no lleva CPU como las puertas lógicas por ejemplo, se debe
tener especial cuidado al unir chips ya que es posible que a veces haya
que adaptarlos.
- Bajo activo significa que el
cero es el conjunto universal y el 1 es el conjunto vació, si fuera a l
revés estaríamos hablando de alto activo.
- FANIN: Es la cargabilidad de
cada puerta.
- La mejor manera de llevar la
señal e relojes es en H en para microprocesadores( FPGAs)
*Como trabajo independiente teníamos que buscar dos encapsulados diferentes
y hacer la documentación.
A partir de aquí todo lo que vimos está relacionado con el micro
controlador Atmega 328-p como los tres bloques que lo integran y gran variedad
de datos sueltos.
Una de las características de este µcontrolador es que se programa con unas
instrucciones especiales y no con un programador.
El primer bloque que vimos fue el de la CPU:
- El Atmega 328-P funciona a una velocidad máxima de 20 MHz, se compone de
tecnología RISC de instrucciones reducidas (32) el otro tipo de tecnología es
CISC que es de instrucciones complejas.
Se compone de registros de 8 bits compuestos por los siguientes
Buses: Bus de Datos (8 bits), Bus de direcciones y Bus de Control.
La CPU contiene una entrada de 5 voltios y una salida menor de 5 voltios,
alrededor de los 3,3 voltios, está acompañada de una ALU (unidad lógica
algebraica) que se encarga de todas las operaciones aritméticas y lógicas
El segundo bloque que vimos fue el de memoria:
-Memoria Flash: Utiliza memoria Flash de 32 Kb de espacio y se divide en
dos partes.
- La primera parte incluye el
Firmware que es un programa que se ejecuta antes (nada más arrancar) y le
dice al micro donde debe leer el programa, ocupa 0,5 Kb (500 bytes), se
encuentra al final de la memoria y no sirve para escribir en Flash.
- La otra parte restante es el
programa en sí, entendemos por programa cualquier resolución de un enunciado
o problema mediante líneas de código.
-Memoria RAM: Conocemos dos tipos la SRAM (estática) y la DRAM (dinámica),
el Atmega328 utiliza la estática.
- SRAM (estática): No necesita
energizarse, mientras mantengas la alimentación mantiene los datos, es más
rápida pero también es más cara.
- DRAM (dinámica): Necesita
refrescarse continuamente, es decir volver a energizar el condensador
constantemente paras mantener los datos, es más lenta y consume más pero
también es más barata.
Estudiaremos más a fondo las SRAM (estática) ya que es la que usaremos en
nuestro µcontrolador.
Tiene un espacio de 2KB, y se divide en tres partes:
- La primera parte es donde se
guardan los datos temporales (como las llevadas en una suma) dado que este
tipo de memoria es volátil no se puede guardar ningún dato importante.
- En otra parte se guardan los
registros de las funciones especiales (SFR), se encuentran en los puertos
y son de 8 bits como máximo aunque pueden utilizar menos ya que son
configurables bit a bit, se encargan por ejemplo de a interrupciones (que
son a grandes rasgos un salto de una línea de comandos a otra que no es la
siguiente).
- Y la última parte son los
registros de entradas y salida (Registros I/O).
Ahora explicaremos un poco más en profundidad en que consiste una
interrupción.
- También se pueden llamar eventos y como dijimos anteriormente son un
salto en las líneas de código en un programa. Su funcionamiento se basa en
vectores de interrupción que sirven para saber en qué interrupción se tiene que
ir a que subrutina (es el paquete que tiene que ejecutar al producirse la
interrupción volviendo luego a la línea de código donde se produjo) Estos
vectores se encuentra almacenados en la memoria Flash y exactamente los que
poseen es la dirección en la que ocurrirá la interrupción sin embargo la orden
de ejecutarse ese vector la manda un determinado Flag* almacenado en la SRAM.
Flag: Son los bits capaces de generar una acción.
WachDog (perro guardián): Es un programa, que controla que el micro no se
cuelgue (por ejemplo en un bucle sin fin) tiene una margen de 80 ms y actúa
generando una interrupción.
-Siguiendo con los tipos de memoria ahora veremos la EEPROM se utiliza para
guardar datos importantes ya que se mantienen aunque no se energiza. Ocupa 1KB
El tercer y último bloque que vimos fue el Bloque I/O (Entradas/
Salidas):
El bloque I/O son los recursos que tiene el µcontrolador para hablar con el
exterior, por ejemplo el conversor analógico-digital, comunicación serie...etc.
- Conversor analógico-digital: Es
de 10 bits, quiere decir que puede repartir la señal en 2^10 partes, si la
señal es de 5 voltios podrá fraccionarla en 1024 partes de 0.00488
voltios.
- Contador externo: Como un reloj
externo.
- Protocolo USART: Es una
comunicación serie en el registro de desplazamiento y forma parte del Bus
de comunicaciones.
- I2C
- SPI: Bus de comunicaciones

Después vimos algunos datos generalizados as como definiciones de algunos
términos técnicos que mostrare a continuación.
-Si se tienen dos µprocesadores para unirlos se utiliza un protocolo USART
en ambos aunque se utiliza el reloj de uno de ellos, ya que la
comunicación ha de ser síncrona, esto quiere decir a la vez por ello es
necesario un reloj.
-DEBUG: Depura con el micro, el INTERFACE depurador también programa, en
cambio el EMULADOR sustituye al micro.
-BYPASS: Consiste en poner en cada pin de alimentación y GND un par de
condensadores en paralelo de 100 nF para eliminar ruido (si no se pones es
posible que no funcione el micro o que funcione de una manera aleatoria).
-Power on Reset: Es un flag que si lo habilitas tarda 65 ms en ejecutar la
primera instrucción.
-Se suele poner pulsadores de 4 pines para mayor seguridad (en el reset por
ejemplo).