Vous êtes sur la page 1sur 18

INSTITUTO TECNOLGICO SUPERIOR

SUCRE
MICROPROCESADORES
ESPECIALIDAD:
DOCENTE:
Electrnica
Ing. Fabricio Tipantocta
PARALELO:
ALUMNOS:
3ro B
Tania Arpi
Eddy Parra
Trabajo Preparatorio
1.3.1 En el datasheet del microcontrolador ATmega 16, consultar el diagrama de
bloques de cmo est estructurado internamente el microcontrolador y especificar que
es cada cosa.

Drivers/Buffers de cada uno de los puertos: Controlador, rutina o programa que enlaza
un dispositivo perifrico al sistema operativo. Memoria de almacenamiento temporal de
informacin que permite transferir los datos entre unidades funcionales con caractersticas
de transferencia diferentes.
Interfase de cada puerto: es el puerto (circuito fsico) a travs del que se envan o reciben
seales desde un sistema o subsistemas hacia otros.
Interfase del Comparador: el comparador analgico se compara los valores de entrada en
el AIN0 pin positivo y negativo AIN1 pasador. Cuando el voltaje en el pin AIN0 positivo es
mayor que el voltaje en el pin AIN1 negativo, la salida analgica Comparador, ACO, se
establece. La salida del comparador se puede configurar para activar la funcin de captura
de entrada del temporizador / Contador1. Adems, el comparador puede disparar una
alarma por separado, exclusivo al Comparador analgico. El usuario puede seleccionar
Disparan interrupciones en lugar de salida del comparador, en descenso o de palanca.
Lgica de Programacin: Involucra, de una manera tcnica y organizada, los conceptos
que permiten disear en trminos generales, la solucin a problemas que pueden llegar a ser
implementados a travs de una computadora.
SPI: (Serial Peripheral Interface Bus o bus serial de interfaz de perifricos) es un estndar
de enlace de datos seriales sincronizados por un reloj que operan en modo full duplex. Los
dispositivos se comunican en modo maestro/esclavo donde el dispositivo maestro inicia el
data frame (trama de red o marco de datos). Mltiples dispositivos esclavos estn
permitidos en lneas Slave Select (SS) individuales. En otras palabras, el bus SPI permite la
comunicacin entre circuitos integrados de equipos electrnicos.
USART: Universal Sncrono / Asncrono Receptor / Transmisor (USART) es un tipo de un
dispositivo de interfaz en serie que puede ser programado para comunicarse de forma
asncrona o sncrona.

ALU: Una unidad aritmtica y lgica (ALU) es un circuito combinacional que desarrolla
microoperaciones lgicas y aritmticas de dos operandos A y B de n bits. Las operaciones
llevadas a cabo por la ALU son controladas por un grupo de entradas de seleccin de
funcin. El alto rendimiento AVR ALU opera en conexin directa con 32 registros en
general de trabajo. Dentro de un solo ciclo de reloj, operaciones aritmticas entre registros
de propsito general o entre un registro y una inmediata se ejecutan. Las ALU operaciones
se dividen en tres categoras principales - aritmticos, lgicos y bit -funciones.
Algunas implementaciones de la arquitectura tambin proporcionan un poderoso
multiplicador apoyando tanto firmado multiplicacin / sin signo y formato fraccionario.
Unidad de Interrupcin: Una interrupcin es un mecanismo que permite ejecutar un
bloque de instrucciones interrumpiendo la ejecucin de un programa, y luego restablecer la
ejecucin del mismo sin afectarlo directamente. De este modo un programa puede ser
interrumpido temporalmente para atender alguna necesidad urgente de la computadora y
luego continuar su ejecucin de manera normal y como si nada hubiera pasado.
Oscilador Calibrado Interno: El Oscilador Calibrado Interno RC proporciona un 1.0, 2.0,
4.0, o 8.0 MHz de reloj fijo. Todas frecuencias son valores nominales a 5 V y 25 C. Este
reloj puede ser seleccionado como el sistema de reloj mediante la programacin de los
fusibles CKSEL como se muestra en la Tabla 9. Si se selecciona, lo har operar sin
componentes externos. El CKOPT fusible debe ser siempre no programada cuando se
utiliza esta opcin de reloj. Durante el Reset de hardware se carga la calibracin bytes en el
Registro OSCCAL y de ese modo se calibra automticamente el oscilador RC.
A 5 V, 25 C y la frecuencia del oscilador 1,0 MHz seleccionado, esta calibracin da una
frecuencia dentro de 1 % de la frecuencia nominal. Cuando este oscilador se utiliza como
el chip Reloj, el Watchdog oscilador todava ser utilizado para el temporizador de
vigilancia y para el restablecer tiempo de espera.
Decodificador de Instruccin: Se encarga de decodificar la instruccin que se va a
ejecutar. Es decir, saber qu instruccin es. Cuando el microprocesador lee de memoria una
instruccin, el cdigo de esa instruccin le llega a esta unidad. Esta unidad se encarga de

interpretar ese cdigo para averiguar el tipo de instruccin a realizar. Por ejemplo,
instrucciones de suma, multiplicacin, almacenamiento de datos en memoria, etc.
Control del MCU y Temporizador: El registro de control MCU contiene bits de control
para la administracin de energa.

El registro de control MCU contiene bits de control para el control del sentido de
interrupcin y general funciones MCU.
El temporizador / contador puede ser ajustado a un interno o una fuente de reloj externa. El
reloj fuente es seleccionado por la lgica de seleccin de reloj que est controlado por el
reloj seleccione (CS02: 0) Los bits ubicados en el directorio / Registro de Control del
contador del temporizador (TCCR0 ).
Watchdog Timer (Temporizador de vigilancia): Si el temporizador de vigilancia no es
necesaria en la aplicacin, este mdulo debe estar apagado.
Si el temporizador de vigilancia est activado, slo se activar en todos los modos de
suspensin, y por lo tanto, siempre consumir energa. En los modos de suspensin ms
profundas, lo que contribuir de manera significativa al consumo total de corriente. Cuando
el timer este apagado, se generar un corto impulso de reposicin de la duracin de un ciclo
de CK. En el flanco descendente de este pulso, el tiempo de retardo empieza a contar el
perodo de tiempo de espera tTOUT.
Osciladores: En electrnica un oscilador es un dispositivo capaz de convertir la energa de
corriente continua en corriente alterna de una determinada frecuencia.1 Dicho de otra
forma, es un circuito que es capaz de convertir la corriente continua en una corriente que
vara de forma peridica en el tiempo (corriente peridica); estas oscilaciones pueden ser
sinusoidales2, cuadradas, triangulares, etc., dependiendo de la forma que tenga la onda

producida. Un oscilador de onda cuadrada suele denominarse multivibrador y por lo tanto,


se les llama osciladores slo a los que funcionan en base al principio de oscilacin natural
que constituyen una bobina L (inductancia) y un condensador C (Capacitancia), mientras
que a los dems se le asignan nombres especiales. Un oscilador electrnico es
fundamentalmente un amplificador, cuya seal de entrada se toma de su propia salida a
travs de un circuito de realimentacin.
Stack Pointer (Apuntador de la pila): La pila se utiliza principalmente para almacenar
datos temporales, para el almacenamiento de variables locales y para almacenar direcciones
de retorno despus de interrupciones y llamadas a subrutinas. El puntero de registro de pila
siempre apunta a la parte superior de la pila. Tenga en cuenta que la pila se implementa
como creciente en localizaciones de memoria superiores a bajar posiciones de memoria.
Esto implica que una pila comando PUSH disminuye el puntero de pila.
El puntero de pila apunta a la zona de pila SRAM de datos donde la subrutina y de alarma
Las pilas se encuentran. Este espacio de pila en la SRAM de datos debe ser definido por el
programa antes de cualquier llamada de subrutina se ejecuta o interrupciones estn
habilitadas. La pila Puntero debe estar ajustado a punto por encima de $ 60. El puntero de
pila se decrementa en uno cuando los datos se inserta en la pila con la instruccin PUSH, y
se decrementa en dos cuando la direccin de retorno se inserta en la pila con la llamada de
subrutina o interrumpir. Los Puntero de pila se incrementa en uno cuando los datos se
extrae de la pila con el POP instruccin, y se incrementa en dos cuando los datos se extrae
de la pila con el regreso de RET subrutina o regreso de interrupcin RETI.
El AVR puntero de pila se implementa como dos registros de 8 bits en el espacio de E / S.
El nmero de bits utilizados realmente depende de la implementacin. Tenga en cuenta que
el espacio de datos de algunas implementaciones de la arquitectura AVR es tan pequea que
slo se necesita SPL. En esto caso, el Registro SPH no estar presente.
Registros de Propsito General: El banco de registros est optimizado para el conjunto de
instrucciones RISC AVR mejorado. A fin de que lograr el rendimiento y la flexibilidad
requerida, los siguientes esquemas de entrada / salida estn apoyado por el archivo de
Registro:

Un operando de salida de 8 bits y una entrada de nmero 8 bits.


Dos operandos de salida de 8 bits y una entrada de resultado de 8 bits.
Dos operandos de salida de 8 bits y una entrada de resultado 16 bits.
Un operando de salida de 16 bits y una entrada nmero 16 bits.
Multiplexor ADC (MUX ADC): Es un convertidor anlogo a digital con un multiplexor de
entrada.
1.3.2 Consultar los tres tipos de memoria que tiene el microcontrolador ATMega16
Esta seccin describe las diferentes memorias en la arquitectura del ATmega 16. El AVR
tiene dos espacios de memoria principal, la memoria de datos y el espacio de memoria de
programa. Adems, el ATmega 16 cuenta con una memoria EEPROM para el
almacenamiento de datos. Los tres espacios de memoria son lineales y regulares.
En-Sistema de memoria de programa flash reprogramable
El ATmega 16 bytes contiene 16K en el chip In-System memoria reprogramable flash para
almacenamiento de programas. Dado que todas las instrucciones AVR son 16 o 32 bits de
ancho, el flash se organiza como 8K * 16. Para la seguridad del software, el espacio de
memoria flash de programa se divide en dos secciones, la seccin de programa de arranque
y la seccin del programa de aplicacin.
La memoria flash tiene una autonoma de al menos 10.000 ciclos de escritura/borrado. El
contador de programa ATmega16 (PC) es de 13 bits de ancho, respondiendo as a las
posiciones de memoria programa de 8K. Tablas de constantes pueden ser asignadas dentro
de todo el espacio de direcciones de memoria de programa.
Memoria SRAM de datos.
Los lugares ms bajos de la memoria 1120 datos de la direccin del archivo de Registro, la
E / S de memoria, y la memoria SRAM de datos interna. Las primeras 96 posiciones de

direccin del archivo de registro de E / S y la memoria, y los prximos 1024 ubicaciones de


direccin de la SRAM de datos interna.
Los cinco modos diferentes de direccionamiento para la cubierta de la memoria de datos es
directa, indirecta con los desplazamientos, indirecto, indirecto con pre-decremento, e
indirecto con pos incremento. En el archivo de Registro, registra R26 a R31 funcin de los
registros de puntero de direccionamiento indirecto.
Los alcances de direccionamiento directo todo el espacio de datos.
La indirecta con el modo de Desplazamiento alcanza el 63 ubicaciones de direcciones
desde la direccin base propuesta por el Y-Z o registro.
Al utilizar registrarse modos de direccionamiento indirecto con pre-decremento automtico
y post-incremento, los registros de direcciones X, Y y Z se decrementa o incrementa. Los
32 para fines de trabajo registros generales, 64 de E / S de registros, y los 1024 bytes de
SRAM interna de datos en los ATmega16 todos son accesibles a travs de todos estos
modos de direccionamiento.
Memoria de datos EEPROM.
El ATmega 16 contiene 512 bytes de memoria EEPROM de datos. Est organizada como
un espacio de datos por separado, en el que los bytes individuales pueden ser ledos y
escritos. La EEPROM tiene una autonoma de al menos 1000.000 ciclos de escritura /
borrado. El acceso entre la EEPROM y la CPU se describe en la siguiente, especificando
los registros de direcciones EEPROM, el registro de datos EEPROM, y en el Registro de
Control de EEPROM.
Los Registros de la EEPROM de acceso son accesibles en el espacio de E / S.
Una funcin de auto-sincronizacin, sin embargo, permite que el software del usuario
cuando se detecta el siguiente byte se puede escribir. Si el cdigo de usuario contiene
instrucciones que escriben en la EEPROM, se deben tomar algunas precauciones. En las
fuentes de alimentacin en gran medida filtrados, VCC es probable que subir o bajar
lentamente en Power-arriba / abajo. Esto hace que el dispositivo durante un perodo de
tiempo para funcionar a una tensin inferior a la especificada como mnimo para la
frecuencia de reloj utilizada. Con el fin de evitar escrituras EEPROM no intencionales, un
procedimiento de escritura especfica debe ser seguido. Cuando se lee la EEPROM, la CPU

se detiene durante cuatro ciclos de reloj antes de que se ejecute la siguiente instruccin.
Cuando la EEPROM est escrito, la CPU se detiene durante dos ciclos de reloj antes de que
se ejecute la siguiente instruccin.
1.3.3

Consultar que tipos de arquitectura de microcontroladores existe.

Arquitectura Von Neumann:

Tradicionalmente los sistemas con microprocesadores se basan en esta arquitectura, en la


cual la unidad central de proceso (CPU), est conectada a una memoria principal nica
(casi siempre slo RAM) donde se guardan las instrucciones del programa y los datos. A
dicha memoria se accede a travs de un sistema de buses nico (control, direcciones y
datos)
En un sistema con arquitectura Von Neumann el tamao de la unidad de datos o
instrucciones est fijado por el ancho del bus que comunica la memoria con la CPU. As un
microprocesador de 8 bits con un bus de 8 bits, tendr que manejar datos e instrucciones de
una o ms unidades de 8 bits (bytes) de longitud. Si tiene que acceder a una instruccin o
dato de ms de un byte de longitud, tendr que realizar ms de un acceso a la memoria. El
tener un nico bus hace que el microprocesador sea ms lento en su respuesta, ya que no
puede buscar en memoria una nueva instruccin mientras no finalicen las transferencias de
datos de la instruccin anterior.
Las principales limitaciones que nos encontramos con la arquitectura Von Neumann son:
La limitacin de la longitud de las instrucciones por el bus de datos, que hace que el
microprocesador tenga que realizar varios accesos a memoria para buscar instrucciones
complejas.

La limitacin de la velocidad de operacin a causa del bus nico para datos e


instrucciones que no deja acceder simultneamente a unos y otras, lo cual impide
superponer ambos tiempos de acceso.

Arquitectura Harvard

Este modelo, que utilizan los microcontroladores PIC, tiene la unidad central de proceso
(CPU) conectada a dos memorias (una con las instrucciones y otra con los datos) por medio
de dos buses diferentes. Una de las memorias contiene solamente las instrucciones del
programa (Memoria de Programa), y los otros slo almacenos datos (Memoria de Datos).
Ambos buses son totalmente independientes lo que permite que la CPU pueda acceder de
forma independiente y simultnea a la memoria de datos y a la de instrucciones. Como los
buses son independientes stos pueden tener distintos contenidos en la misma direccin y
tambin distinta lngitud. Tambien la longitud de los datos y las instrucciones puede ser
distinta, lo que optimiza el uso de la memoria en general. Para un procesador de Set de
Instrucciones Reducido, o RISC (Reduced Instruccin Set Computer), el set de
instrucciones y el bus de memoria de programa pueden disearse de tal manera que todas
las instrucciones tengan una sola posicin de memoria de programa de longitud. Adems, al
ser los buses independientes, la CPU puede acceder a los datos para completar la ejecucin
de una instruccin, y al mismo tiempo leer la siguiente instruccin a ejecutar.
Ventajas de esta arquitectura:
El tamao de las instrucciones no est relacionado con el de los datos, y por lo tanto
puede ser optimizado para que cualquier instruccin ocupe una sola posicin de memoria
de programa, logrando as mayor velocidad y menor longitud de programa.

El tiempo de acceso a las instrucciones puede superponerse con el de los datos, logrando
una mayor velocidad en cada operacin.
1.3.4

Qu es RISC y donde se ocupa en el microcontrolador.

Reduced Instrction Set Computer (Computadora con Conjunto, de Instrucciones Reducido).


Es un tipo de arquitecturas de computadoras que promueve conjuntos pequeos y simples
de insturcciones que puedan tomar poco tiempo para ejecutarse.
Los microprocesadores basados en esta arquitctura poseen instrucciones de tamaos fijos y
presentadas en un numero reducido de formatos y en donde solo las instrucciones de carga
y almacenamiento acceden a la maemoria por dato. Tambin suelen disponer de muchos
registros de propsito general
En este caso la idea es que el microcontrolador reconoce y ejecuta slo operaciones bsicas
(sumar, restar, copiar etc) Las operaciones ms complicadas se realizan al combinar stas
(por ejemplo, multiplicacin se lleva a cabo al realizar adicin sucesiva). Es como intentar
explicarle a alguien con pocas palabras cmo llegar al aeropuerto en una nueva ciudad. Sin
embargo, no todo es tan oscuro. Adems, el microcontrolador es muy rpido as que no es
posible ver todas las acrobacias aritmticas que realiza. El usuario slo puede ver el
resultado final de todas las operaciones. Por ltimo, no es tan difcil explicar dnde est el
aeropuerto si se utilizan las palabras adecuadas tales como: a la derecha, a la izquierda, el
kilmetro etc.

1.3.5

Describa cmo funciona el sistema de generacin de pulsos de un cristal de


cuarzo.

Este material tiene la caracterstica que oscila a una frecuencia determinada por el material,
el corte y otros parmetros del mismo, cuando le aplicas voltaje de corriente directa a sus
extremos genera una onda senoidal con una amplitud muy baja, la cual tienes que
amplificar o en los circuitos que utilizan este dispositivo ya tiene su amplificador interno.
No genera pulsos, solo la onda senoidal. La tensin a aplicar es muy baja, y siempre se
tiene que limitar la corriente con resistencias. Y pues lo utilizan casi siempre como reloj
para uC (microcontroladores) y muchos circuitos integrados ms, y tambin para generar
una portadora de AM, en realidad tiene muchas aplicaciones.
1.3.6

Enumere cuales son los tipos de variables que puede manipular Bascom AVR.

bit

1y0

byte

8 bits entre 0 y 255

word

2 Bytes entre 0 a 65535

integer

2 bytes entre -32000 a 32000

single

4 bytes +- 3,1415

double

8 bytes (me permite el doble de valores decimales)

string

Texto

1.3.7 Que son las estructuras de control y cmo funcionan en el ambiente de bascom
AVR.
En lenguajes de programacin, las estructuras de control permiten modificar el flujo de
ejecucin de las instrucciones de un programa.
Con las estructuras de control se puede:

De acuerdo con una condicin, ejecutar un grupo u otro de sentencias (If-ThenElse)

De acuerdo con el valor de una variable, ejecutar un grupo u otro de sentencias


(Select-Case)

Ejecutar un grupo de sentencias mientras se cumpla una condicin (Do-While)

Ejecutar un grupo de sentencias hasta que se cumpla una condicin (Do-Until)

Ejecutar un grupo de sentencias un nmero determinado de veces (For-Next)

Todas las estructuras de control tienen un nico punto de entrada. Las estructuras de control
se pueden clasificar en: secuenciales, iterativas y de control avanzadas. Esta es una de las
cosas que permiten que la programacin se rija por los principios de la programacin
estructurada.
Los lenguajes de programacin modernos tienen estructuras de control similares.
Bsicamente lo que vara entre las estructuras de control de los diferentes lenguajes es su
sintaxis; cada lenguaje tiene una sintaxis propia para expresar la estructura.
Otros lenguajes ofrecen estructuras diferentes, como por ejemplo los comandos guardados.
Tipos de estructuras de control
Estructura de seleccion
Seleccin if simple
Se trata de una estructura de control que permite redirigir un curso de accin segn la
evaluacin de una condicin simple, sea falsa o verdadera.
Si la condicin es verdadera, se ejecuta el bloque de sentencias 1; de lo contrario, se ejecuta
el bloque de sentencias 2.
IF (Condicin) THEN
(Bloque de sentencias 1)
ELSE
(Bloque de sentencias 2)
END IF

Select-Case
Esta sentencia permite ejecutar una de entre varias acciones en funcin del valor de una
expresin. Es una alternativa a if then else cuando se compara la misma expresin con
diferentes valores.

Se evala la expresin, dando como resultado un nmero.

Luego, se recorren los "Case" dentro de la estructura buscando que el nmero


coincida con uno de los valores.

Es necesario que coincidan todos sus valores.

Cuando se encuentra la primera coincidencia, se ejecuta el bloque de sentencias


correspondiente y se sale de la estructura Select-Case.

Si no se encuentra ninguna coincidencia con ningn valor, se ejecuta el bloque de


sentencias de la seccin "Case Else".

Select (Expresin)
Case Valor1
(Bloque de sentencias 1)
Case Valor2
(Bloque de sentencias 2)
Case Valor n
(Bloque de sentencias n)
Case Else
(Bloque de sentencias "Else")
End Select

Estructuras de control iterativas


Do-While
Las estructuras de control iterativas o de repeticin, inician o repiten un bloque de
instrucciones si se cumple una condicin o mientras se cumple una condicin.
Mientras la condicin sea verdadera, se ejecutarn las sentencias del bloque.
Do While (Condicin)
(Bloque de sentencias)
Loop

que tambin puede expresarse:


While (Condicin)
(Bloque de sentencias)
wend
Do-Until[editar]
Se ejecuta el bloque de sentencias, hasta que la condicin sea verdadera
Do
(Bloque de sentencias)
Loop Until (Condicin)
For-Next
La sentencia For da lugar a un lazo o bucle, y permite ejecutar un conjunto de sentencias
cierto nmero de veces.

Primero, se evalan las expresiones 1 y 2, dando como resultado dos nmeros.

La variable del bucle recorrer los valores desde el nmero dado por la expresin 1
hasta el nmero dado por la expresin 2.

El bloque de sentencias se ejecutar en cada uno de los valores que tome la variable
del bucle.
For (Variable) = (Expresin1) To (Expresin2) STEP (Salto)
(Bloque de sentencias)
Next

Estructuras anidadas
Las estructuras de control bsicas pueden anidarse; es decir, pueden ponerse una dentro de
otra.
Estructura For-Next dentro de una estructura If-Then-Else

IF A > B THEN
FOR X = 1 To 5
(Bloque de sentencias 1)
NEXT
ELSE
(Bloque de instrucciones 2)
END IF
Estructura If-Then-Else dentro de estructura For-Next]
FOR x = 10 TO 20 step 2
IF A == C THEN
(Bloque de instrucciones)
ELSE
(Bloque de instrucciones)
END IF
NEXT

1.3.8 Disee un programa para el funcionamiento de 8 diodos leds que:

Con el cristal interno y configurado a 1MHZ titilen con periodos de 500ms

Simulacin en Proteus

Cdigo de Programacion en Bascom AVR

Con un cristal externo y configurado a 8MHZ haga un semforo de doble


interseccin.
Simulacin en Proteus

Cdigo de Programacin en Bascom AVR

Con la frecuencia de 8MHZ realizar la simulacin del auto fantstico

Simulacin en Proteus

Cdigo de Programacin en Bascom AVR

Vous aimerez peut-être aussi