Académique Documents
Professionnel Documents
Culture Documents
MICROCONTROLADORES AVR
CAPITULO 1
-introduccin a microcontroladores
-arquitectura microcontrolador
-Diferencia entre microcontrolador y microprocesador
-Descripcin de los mdulos del atmega8
-Registros del microcontrolador DDRX y PORTX
-Instalacin de atmel studio
-crear un proyecto en atmel studio
DEFINICIN DE MICROCONTROLADOR Y
MICROPROCESADOR
Recordando lo aprendido en el curso pasado, se debe tener en cuenta la
diferencia entre un microprocesador y microcontrolador. Un microprocesador
(como el que tenemos en nuestra PC) es la parte principal o el cerebro de un
sistema. Un microcontrolador; en cambio; es un dispositivo que contiene
un microprocesador en su interior y adems, posee memoria y perifricos.
USART
Temporizadores
SPI e I2C
Registros de operacin
La x debe ser reemplazada por el puerto que vamos a utilizar. Por ejemplo,
el atmega 8 cuenta con 3 puertos GPIO (puerto b,c y d).
REGISTRO DDRX
El registro DDRX nos permite seleccionar si los pines del puerto sern
entradas o salidas.
REGISTRO PORTX
El registro PORTX determina si los pines de salida estn en estado alto o
bajo. Por tanto, una vez definidos que pines sern salidas mediante el
puerto DDRX, necesitamos enviar un valor de salida por dichos pines (nivel
alto o bajo) con el registro PORTX.
REGISTRO PINX
El registro PINX se encarga de leer los valores que estn en los pines de
entrada.
Una vez realizados los pasos anteriores, nos aparecer la siguiente pantalla.
Una vez escrito nuestro cdigo, damos click en compilar para verificar que
la escritura del cdigo haya sido correcta. Si la compilacin fue correcta nos
saldr un mensaje en la ventana de salida: Build succeeded.
Programa Nmero 1:
Realizar la simulacin en Proteus del encendido de un led conectado al
terminal PB0 del microcontrolador Atmega 8.
Solucin
Primero debemos definir en nuestro programa la velocidad a la cual
trabajaremos. Para nuestro caso trabajaremos a 1 MHz, por lo tanto
debemos escribir las siguientes directivas antes de importar las libreras de
trabajo.
Para poder encender un led por el terminal PB0 del atmega 8 es necesario:
El registro DDRX nos sirve para poder declarar como entradas o salidas los
puertos y pines del microcontrolador. Si queremos que un pin especifico se
comporte como una salida escribimos un 1 y si queremos que sea una
entrada escribimos 0. Por lo tanto deberamos escribir en el puerto DDRB:
Una vez declarado el pin PB0 como salida, debemos escribir que valor
deseamos tener a la salida. Para escribir valores por los puertos de salida
utilizamos el registro PORTX. Para este ejemplo, en PORTB deberamos
escribir:
Hacemos
click aqu y
buscamos el
archivo
.hex en la
carpeta de
nuestro
proyecto
Ahora, si deseamos simular paso por paso, lo que demos hacer es insertar el
archivo .elf
Se hace
click aqu y
se busca el
archivo .elf
en la
carpeta
donde est
el proyecto
Una vez realizado esto, vamos a debug-> watch window para poder ver
cmo cambian el valor de los registros en la simulacin.
Hacemos click
aqu
Una vez hecho click , aparecer una ventana. Para poder aadir watches a
la ventana hacemos click dentro de ella y ponemos add tem by adress.
Hacemo
s click
aqu
Luego seleccionamos los registros DDRB y PORTB para ver sus cambios.
Luego de que hemos configurado los watches para poder ver los registros
DDRB y PORTB, hacemos click nuevamente en step.