Anda di halaman 1dari 18

COLEGIO ESPAOL PADRE ARRUPE Gua de Desarrollo de Curso rea: Electrnica MICROCONTROLADORES I

GUIA 01 Sistemas de Numeracin Digitales

Objetivos I. Objetivo General Familiarizarse con los diferentes sistemas de numeracin orientados a la programacin de los microcontroladores. II. Objetivo Especfico Conocer los sistemas de numeracin: binario, hexadecimal, BCD y la forma de conversin entre cada uno de estos Desarrollar operaciones bsicas utilizando el sistema numrico binario. Desarrollo Terico

1.1 SISTEMA DE NUMERACIN DECIMAL. El sistema decimal se compone de 10 numerales o smbolos. Estos 10 smbolos son 0, 1, 2, 3, 4, 5, 6, 7, 8, 9; usando stos como dgitos de un nmero se puede expresar cualquier cantidad. El sistema decimal, tambin llamado sistema de base 10 porque tiene 10 dgitos, ha evolucionado de forma natural debido a que el ser humano tiene 10 dedos. De hecho, la palabra digito se deriva de la palabra en latn para dedo. El sistema decimal es un sistema de valor posicional, en el cual el valor de un nmero depende de la posicin en que se encuentre. Por ejemplo: considere el nmero decimal 365. Se sabe que el dgito 3, representa 3 centenas, el nmero 6 representa 6 decenas, y el nmero 5 representa 5 unidades. En esencia, el 3 es el que tiene ms peso sobre los tres dgitos, y se le refiere como el dgito ms significativo (MSD, por sus siglas en ingls). El 5 es el que tiene menor peso de los tres y se llama digito menos significativo (LSD, por sus siglas en ingls).

1.2 SISTEMA DE NUMERACIN BINARIO. En el sistema binario slo existen dos smbolos o posibles valores de dgitos: el 0 y el 1. Aun as, ese sistema de base 2 se puede usar para representar cualquier cantidad en el sistema decimal o en otros sistemas. Aunque en general, se necesitarn muchos dgitos binarios para expresar una cantidad determinada. Al igual que el sistema decimal, el sistema binario es un sistema de valor posicional, en el que cada dgito (llamado BIT en binario) tiene su propio valor o peso expresado como una potencia de 2. Esto se muestra en la fig. a Valores Posicionales MSB 1 0 0 LSB 1

Para determinar su equivalente en el sistema decimal, simplemente se toma la suma de los productos de cada valor digital (0 y 1) y su valor posicional. 10012 =

En el sistema binario 1.3 SISTEMA DE NUMERACIN HEXADECIMAL. En el sistema de numeracin hexadecimal, se emplea la base 16, por lo tanto tiene 16 smbolos digitales posibles. Estos 16 smbolos digitales son los dgitos 0 al 9, ms las letras A, B, C, D, E, y F. En la tabla se muestran las relaciones entre los sistemas hexadecimal, decimal y binario. Note que cada dgito hexadecimal representa un grupo de cuatro dgitos binarios. Es importante recordar que los dgitos hex. (Abreviacin de hexadecimal) A a F son equivalentes a los valores decimales del 10 al 15. Hexadecimal Decimal Binario 0 0 0000 1 1 0001 2 2 0010 3 3 0011 4 4 0100 5 5 0101 6 6 0110

7 8 9 A B C D E F

7 8 9 10 11 12 13 14 15 Tabla 1

0111 1000 1001 1010 1011 1100 1101 1110 1111

Conversin de Binario a Hexadecimal. El nmero binario se agrupa en conjuntos de cuatro bits y cada conjunto se convierte a su dgito equivalente hex. Los ceros se agregan, segn sea necesario, para completar un conjunto de cuatro bits. 11101001102 = 0011 3 1010 A 0110 6 = 3A616

Conversin de Hexadecimal a Binario. El sistema de numeracin hexadecimal se usa principalmente como un mtodo taquigrfico para representar nmeros binarios. Es una tarea relativamente simple convertir un nmero hexadecimal a binario. Cada dgito hex se convierte a su equivalente binario de cuatro dgitos (tabla 1). Esto se ejemplifica a continuacin para 9F216. 9F216 = = = 9 1001 1001111100102 F 1111 2 0010

Con el fin de realizar estas conversiones entre hex y binario, es necesario conocer los nmeros binarios de cuatro bits (0000-1111) y sus dgitos hex equivalentes. Una vez stos se dominen bien, podemos hacer rpidamente las conversiones, sin necesidad de realizar ningn clculo. 1.4 SUMA BINARIA.
La suma de dos nmeros binarios se lleva a cabo exactamente en la misma forma que con los nmeros decimales. De hecho, la suma binaria es ms simple porque son pocos los casos que se necesita aprender. Primero repasaremos la suma decimal:

3 7 6 +4 6 1 8 3 7

LSD

En primer lugar se opera la posicin del dgito menos significativo (LSD), produciendo una suma de 7; luego se suman los dgitos en la segunda posicin para tener un resultado de 13; lo que produce un acarreo de 1 hacia la tercera posicin. Lo anterior da como resultado una suma de 8 en la tercera posicin. En la suma binaria se siguen los mismos pasos. Sin embargo, slo cuatro casos pueden tener lugar en la suma de dos dgitos binarios (bits) en cualquier posicin. Estos son:

0 0 1 1

+ + + +

0 1 0 1

= = = =

0 1 1 0 + acarreo de 1 en la siguiente posicin.

Los siguientes son ejemplos de la suma de dos nmeros binarios (los equivalentes decimales estn entre parntesis):

011 + 110 1001

(3) (6) (9)

1001 + 1111 11000

(9) (15) (24)

Desarrollo de Ejercicios I. Ejercicios. 1. Desarrolle las conversiones presentadas a continuacin: 1. 100102 .Hexadecimal 2. 6910 ... Binario, Hexadecimal 3. F1616 . Decimal, Binario 4. 12A16 ..Binario 5. F2FA16 ..Decimal, Hexadecimal 6. 1110111101112 Decimal 7. 111010001000012 Hexadecimal 2. Desarrolle las siguientes sumas binarias: 1. 100101 + 1110111

2. 110100 + 11111 3. 010011 + 101 4. 11011 + 0110 5. 1111110 + 6. 7F16 + 1A16 7. 8. CB16 + A216 FF16 + 316 1110

3. Leer acerca de los diferentes tipos de memorias y su funcionamiento.

COLEGIO ESPAOL PADRE ARRUPE Gua de Desarrollo de Curso rea: Electrnica MICROCONTROLADORES I

GUIA 02 Dispositivos de Memoria

Objetivos I. Objetivo General


Conocer los diferentes dispositivos de memoria, y sus modos de direccionamiento.

Desarrollo Terico

Las memorias, son dispositivos electrnicos, capaces de almacenar datos. El estudio de dispositivos y sistemas de memoria est lleno de terminologa que algunas veces puede ser abrumadora para un estudiante. Antes de iniciar un anlisis detallado de las memorias, ser til conocer de antemano, algunos conceptos bsicos. Celda de memoria: Es un dispositivo o circuito elctrico usado para almacenar un solo BIT (0 1). Ejemplos de celdas de memoria incluyen un flip-flop, un capacitor cargado, etc. Palabra de memoria: Es un grupo de bits (celdas) en una memoria que representan instrucciones o datos de algn tipo. Por ejemplo, un registro que consta de ocho flip-flops, se puede considerar como una memoria que esta almacenando una palabra de 8 bits. Los tamaos de palabra en las computadoras modernas varan entre 4 y 64 bits, dependiendo del tamao de la computadora. Capacidad: Es una forma de especificar cuantos bits se pueden almacenar en un dispositivo de memoria especifico, o sistema de memoria completo. Para ilustrar lo anterior, supongamos que tenemos una memoria que puede almacenar 4,096 palabras de 20 bits. Esto representa una capacidad total de 81,920 bits. Esta capacidad de la memoria tambin se podra expresar como 4096 x 20. Si se expresa de esta manera, el primer nmero (4096) es el de palabras, y el segundo (20), es el bits por palabra (tamao de palabra). El nmero de palabras en una memoria a menudo es mltiplo de 1024. Es comn emplear la designacin 1K para representar 1024 = 2^10 cuando se refiere a la capacidad de memoria. De esta manera, una memoria tiene una capacidad de almacenamiento de 4K x 20, en realidad es una memoria de 4096 x 20. El desarrollo de memorias mayores ha dado origen a la designacin 1M 1 Mega para representar 2^20 = 1, 048,576.

Byte: Un trmino especial usado para un grupo de 8 bits. Un byte siempre consta de 8 bits. Los tamaos de palabra, se pueden representar en bytes o en bits. Por ejemplo, un tamao de palabra de 8 bits tambin es un tamao de palabra de 1 byte, un tamao de palabra de 16 bits, es igual a 2 bytes, etc. Direccin: Es un nmero que identifica la ubicacin de una palabra en la memoria. Cada palabra almacenada en un dispositivo o sistema de memoria tiene una direccin nica. Las direcciones siempre existen en un sistema digital como un nmero binario, aunque frecuentemente por conveniencia se usan nmeros octal, hexadecimal y decimal para representar la direccin. Por ejemplo, en la figura se muestra una memoria pequea, de solo 8 palabras. Cada una tiene una direccin especfica representada como un nmero de 3 bits que vara de 000, a 111.

Direcciones

000 001 010 011 100 101 110 111

Palabra 0 Palabra 1 Palabra 2 Palabra 3 Palabra 4 Palabra 5 Palabra 6 Palabra 7

Operacin de lectura: Es la operacin mediante la cual, la palabra binaria almacenada en una ubicacin especifica de memoria (direccin) se detecta y transfiere a otro dispositivo. Operacin de escritura: Es la operacin por medio de la cual se coloca una nueva palabra en una ubicacin particular de la memoria. Tambin se le denomina operacin de almacenamiento. Bus: grupo de alambres que transportan bits de informacin relacionados. Bus de direcciones: Este es un bus unidireccional que transporta las salidas de direcciones binarias, a los circuitos integrados de memorias, para seleccionar una ubicacin de memoria. Bus de datos: Este es un bus bidireccional, que transporta los datos, que se quieren guardar, sacar para su lectura. Bus de Control: Este bus transporta seales de control como la seal de R / . Memoria Voltil: Cualquier tipo de memoria que requiera la aplicacin de potencia elctrica para almacenar informacin. Si se interrumpe la energa elctrica, se perder toda la informacin almacenada en la memoria. Memoria NO Voltil: Pueden almacenar informacin sin necesidad de energa elctrica.

Ejemplo de estructura de una memoria:

Bus de Direccin

A0 A1 A2

Memoria 8x8

CS

D0 D1 D2 D3 D4 D5 D6 D7

Bus de Datos

Bus de Control R/

Tipos de Memorias
Existen varios tipos de memoria que difieren principalmente de su forma de programacin, funcionamiento, almacenamiento de datos, etc. Entre las principales estn: * Memoria de Acceso Aleatorio (RAM): Memoria en la cual, la ubicacin fsica real de una palabra de memoria no tiene efecto en el tiempo que toma para leer o escribir en esa ubicacin particular. En otras palabras, el tiempo de acceso es el mismo para cualquier direccin en memoria. * Memoria de Slo Lectura (ROM): En este tipo de memorias, slo se pueden programar una tan sola vez, y esta operacin por lo general se lleva a cabo en la fbrica del dispositivo. Posteriormente, la informacin slo se puede leer de la memoria. Toda la memoria ROM no es voltil, y almacenar datos en ausencia de energa elctrica. * ROM Programable y Borrable (EPROM): Una EPROM la puede programar el usuario, y tambin la puede borrar y reprogramar tan seguido como desee. Para realizar el proceso de borrado, se tiene que exponer a la luz ultravioleta, aplicada a travs de una ventana en el encapsulado del chip. Este proceso de borrado por lo general requiere de 15 a 20 minutos de exposicin de rayos UV. Por desgracia, no existe forma para borrar slo celdas seleccionadas; la luz UV borra todas las celdas al mismo tiempo. Una vez programada, la EPROM es una memoria No Voltil que mantendr sus datos almacenados indefinidamente. * PROM Elctricamente Borrable (EEPROM): Las desventajas de la EPROM, se superaron mediante el desarrollo de la PROM elctricamente borrable (EEPROM) como una mejora sobre la EPROM. Las modificaciones que se le realizaron a la estructura interna de la EPROM, constituyen la principal caracterstica de la EEPROM: su capacidad de borrado elctrico.

* Memorias FLASH: Se trata de un tipo de memoria No Voltil, de bajo consumo, que se puede escribir o borrar en circuito al igual que las EEPROM, pero suelen disponer de mayor capacidad que estas ltimas. El borrado slo es posible con bloques completos y no se puede realizar sobre posiciones o celdas concretas. Son muy recomendables en aplicaciones en las que sea necesario modificar la informacin a lo largo de la vida del producto, como consecuencia del desgaste o cambios de pieza, como sucede con los vehculos.

Desarrollo de Ejercicios

1. Investigar el numero de serie de algunos ICs que funcionan como memorias EEPROM. 2. Investigar las caractersticas tcnicas del IC2114, y determinar el tipo de memoria. 3. Mencionar otros tipos de memorias que no se han abordado en esta gua. 4. Leer sobre los diferentes lenguajes de programacin.

COLEGIO ESPAOL PADRE ARRUPE Gua de Desarrollo de Curso rea: Electrnica MICROCONTROLADORES I

GUIA 03 Lenguajes de Programacin

Objetivos I. Objetivo General Conocer los diferentes tipos de lenguajes de programacin, e identificar cul es el utilizado para la programacin de microcontroladores. Identificar cul es el lenguaje utilizado por la computadora y los dispositivos electrnicos digitales en general. Desarrollo Terico

Los lenguajes de programacin son lenguajes especiales que ayudan al usuario a comunicarse con la computadora. Establecen una comunicacin entre el humano que prefiere usar palabras, el sistema decimal y la computadora, que trabaja solo con nmeros binarios (0's y 1's). Lenguajes: Lenguaje de mquina El lenguaje de mquina est orientado hacia la mquina que est constituida por varios arreglos de "bits". Este lenguaje es fcil de entender por la computadora, pero difcil para el usuario. Es el lenguaje original de la computadora el cual es generado por el "software", y no por el programador. Lenguaje de bajo nivel Es un lenguaje de programacin bien cercano al lenguaje de mquina. Es difcil de entender por las personas y requiere que los programadores codifiquen las instrucciones con muchos detalles. Ejemplo: lenguaje ensamblador.

Lenguaje de alto nivel Es un lenguaje que se asemeja ms al lenguaje humano que a un lenguaje de mquina o ensamblador. Es ms fcil escribir programas en este lenguaje, pero luego deben ser traducidos por compiladores o intrpretes para que la computadora los entienda. Procesadores de lenguajes
Programas traductores:

Son los que traducen instrucciones de lenguajes de programacin de alto nivel al cdigo binario del lenguaje de la mquina. Cdigo fuente ("source code") Es un conjunto de instrucciones del programa que estn escritas en un lenguaje de programacin. Cdigo del objeto ("object code") Es un conjunto de instrucciones binarias traducidas y que la computadora puede ejecutar

Ejemplos de programas traductores Compilador Es un programa que traduce un lenguaje de alto nivel al lenguaje de mquina de una computadora. Segn va ejecutando la traduccin, coteja los errores hechos por el programador. Traduce un programa una sola vez, generalmente, y es cinco veces ms rpido que los programas intrpretes. Intrprete Es un programa que traduce un lenguaje de alto nivel al lenguaje de mquina de una computadora. El programa siempre permanece en su forma original (programa fuente) y traduce cuando est en la fase de ejecucin instruccin por instruccin. Ensamblador Es un programa de bajo nivel que traduce el lenguaje de ensamble a lenguaje de mquina. Utiliza letras del alfabeto para representar los diferentes arreglos del cdigo binario de la mquina. El programa ensamblador traduce cada instruccin de ensamble escrita por el programador a la instruccin en lenguaje de mquina binario equivalente.

Desarrollo de Ejercicios

1. Investigar otros ejemplos de lenguajes de alto nivel 2. Investigar otros ejemplos de lenguajes de bajo nivel 3. Cul es el lenguaje utilizado por los dispositivos digitales en general? 4. Leer sobre teora de microcontroladores.

COLEGIO ESPAOL PADRE ARRUPE Gua de Desarrollo de Curso rea: Electrnica MICROCONTROLADORES I

GUIA 04 Introduccin a los Microcontroladores

Objetivos I. Objetivo General Familiarizarse con el concepto de microcontrolador, sus caractersticas y sus principales campos de aplicacin. II. Objetivo Especfico Comprender la estructura interna de un microcontrolador; tanto su arquitectura, como sus principales componentes. Determinar las diferencias entre los microcontroladores y otros dispositivos electrnicos programables.

Desarrollo Terico

I. Qu es un microcontrolador? Es un circuito integrado programable (PIC) que contiene todos los componentes de una computadora. Se emplea para controlar el funcionamiento de una tarea determinada y debido a su reducido tamao, suele ir incorporado en el circuito que gobierna. (Embedded controller). El microcontrolador es una microcomputadora completa, aunque de limitadas prestaciones, que est contenido en el chip de un circuito integrado y se destina a gobernar una sola tarea.

Campos de accin de los microcontroladores.

30% 25% 20% 15% 10% 5% 0% Sectores

Automoviles Industria Informtica Comunicacione s Consumo

Los microcontroladores ms populares se encuentran, sin duda, entre las mejores elecciones: 8048 (Intel). Es el padre de los microcontroladores actuales, el primero de todos. Su precio, disponibilidad y herramientas de desarrollo hacen que todava sea muy popular. 8051 (Intel y otros). Es sin duda el microcontrolador ms popular. Fcil de programar, pero potente. Est bien documentado y posee cientos de variantes e incontables herramientas de desarrollo. 80186, 80188 y 80386 EX (Intel). Versiones en microcontrolador de los populares microprocesadores 8086 y 8088. Su principal ventaja es que permiten aprovechar las herramientas de desarrollo para PC. 68HC11 (Motorola y Toshiba). Es un microcontrolador de 8 bits potente y popular con gran cantidad de variantes. 683xx (Motorola). Surgido a partir de la popular familia 68k, a la que se incorporan algunos perifricos. Son microcontroladores de altsimas prestaciones. PIC (MicroChip). Familia de microcontroladores que gana popularidad da a da. Fueron los primeros microcontroladores RISC. Es preciso resaltar en este punto que existen innumerables familias de microcontroladores, cada una de las cuales posee un gran nmero de variantes.

II. Diferencia entre Microprocesador y Microcontrolador. Un Microprocesador es un sistema abierto con el que puede construirse un computador con las caractersticas que se desee, acoplndole los mdulos necesarios. Un Microcontrolador es un sistema cerrado que contiene un computador completo y de prestaciones limitadas que no se pueden modificar.
III. PRINCIPALES COMPONENTES Y SUS CARACTERISTICAS.

Las partes principales de un microcontrolador son: Procesador. Memoria no voltil. Memoria voltil. Sistema I\O. Comunicacin serial y paralelo. Sistema temporizador. Convertidor A\D. Proteccin de integridad de software. Comparadores analgicos.

Arquitecturas de los uC.


Arquitectura Von Neumann. Se caracteriza porque la CPU se conecta con una memoria nica, donde coexisten datos e instrucciones, a travs de un sistema de buses.

Bus comn de Direcciones

MEMORIA

CPU

8 Bus de datos e Instrucciones

Instrucciones + Datos

Arquitectura Harvard. La necesidad de conseguir elevados rendimientos en el procesamiento de las instrucciones, ha desembocado en el empleo de la arquitectura Harvard. En esta arquitectura, son independientes la memoria de instrucciones y la memoria de datos, y cada una dispone de su propio sistema de buses para el acceso.

MEMORIA DE INSTRUCCIONES

Bus de direccin de Instrucciones 10

Bus de direccin de Datos 9

MEMORIA DE DATOS

1K x 14 14 Bus de Instrucciones

CPU

8 Bus de Datos

512 x 8

El procesador o UCP.
Es el elemento ms importante del microcontrolador y determina sus principales caractersticas, tanto a nivel hardware como software. Se encarga de direccionar la memoria de instrucciones, recibir el cdigo OP de la instruccin en curso, su decodificacin y la ejecucin de la operacin que implica la instruccin, as como la bsqueda de los operandos y el almacenamiento del resultado. Existen dos orientaciones principales, en cuanto a la arquitectura y funcionalidad de los procesadores actuales: CISC: Un gran nmero de procesadores usados en los microcontroladores estn basados en la filosofa CISC (Computadores de Juego de Instrucciones Complejo). Disponen de ms de 80 instrucciones mquina en su repertorio, algunas de las cuales son muy sofisticadas y potentes, requiriendo muchos ciclos para su ejecucin. Una ventaja de los procesadores CISC es que ofrecen al programador instrucciones complejas que actan como macros. RISC: Tanto la industria de los computadores comerciales como la de los microcontroladores estn decantndose hacia la filosofa RISC (Computadores de Juego de Instrucciones Reducido). En estos procesadores el repertorio de instrucciones mquina es muy reducido y las instrucciones son simples y, generalmente, se ejecutan en un ciclo. La sencillez y rapidez de las instrucciones permiten optimizar el hardware y el software del procesador.

Memoria de Programa.
El microcontrolador, est diseado para que en su memoria de programa, se almacene todas las instrucciones del programa de control. No hay posibilidad de utilizar memoria externas de ampliacin. Como el programa a ejecutar siempre es el mismo, debe estar grabado de forma permanente. Para algunas series de PIC, es utilizada la memoria EEPROM, y en otras, la FLASH, como lo es el caso del PIC16F84.

Memoria de Datos.
Los datos que manejan los programas varan continuamente, y esto exige que la memoria que les contiene debe ser de lectura y escritura, por lo que la memoria RAM esttica (SRAM), es la ms adecuada, aunque sea voltil.

Puertas de Entrada y Salida.


La principal utilidad de las patitas que posee la cpsula que contiene un microcontrolador es soportar las lneas de E/S que comunican al computador interno con los perifricos exteriores. Segn los controladores de perifricos que posea cada modelo de microcontrolador, las lneas de E/S se destinan a proporcionar el soporte a las seales de entrada, salida y control.

Recursos Auxiliares.
Segn las aplicaciones a las que orienta al fabricante cada modelo de microcontrolador, incorpora una diversidad de complementos que refuerzan la potencia y la flexibilidad del dispositivo. Entre los recursos ms comunes se citan los siguientes: a) Circuito de reloj: encargado de generar los impulsos que sincronizan el funcionamiento de todo sistema. b) Temporizadores: orientado a controlar tiempos. c) Perro Guardin (watchdog): destinado a provocar una reinicializacin cuando el programa queda bloqueado. d) Conversores AD y DA: para poder recibir y enviar seales analgicas. e) Comparadores analgicos: para verificar el valor de una seal analgica. f) Sistema de proteccin ante fallos de alimentacin: Se trata de un circuito que resetea al microcontrolador cuando el voltaje de alimentacin (VDD) es inferior a un voltaje mnimo (brownout). Mientras el voltaje de alimentacin sea inferior al de brownout el dispositivo se mantiene reseteado, comenzando a funcionar normalmente cuando sobrepasa dicho valor. g) Estado de reposo o bajo consumo: Son abundantes las situaciones reales de trabajo en que el microcontrolador debe esperar, sin hacer nada, a que se produzca algn acontecimiento externo que le ponga de nuevo en funcionamiento. Para ahorrar energa, (factor clave en los aparatos porttiles), los microcontroladores disponen de una instruccin especial (SLEEP en los PIC), que les pasa al estado de reposo o de bajo consumo, en el cual los requerimientos de potencia son mnimos. En dicho estado se detiene el reloj principal y se congelan sus circuitos asociados, quedando sumido en un profundo sueo el microcontrolador. Al activarse una interrupcin ocasionada por el acontecimiento esperado, el microcontrolador se despierta y reanuda su trabajo.

Desarrollo de Ejercicios

1. Investigar otros campos de aplicacin de los microcontroladores 2. Investigar algunos nmeros de serie de microcontroladores manufacturados por Microchip. 3. Investigar acerca del PIC16F84. 4. Leer sobre teora de programacin de microcontroladores.

Anda mungkin juga menyukai