Professional Documents
Culture Documents
LA SOLUCIN EN UN CHIP?
La nica limitacin que tienen las aplicaciones de los microcontroladores actuales esta en la imaginacin del diseador. Podemos encontrar microcontroladores en:
Automatizacin industrial. Adquisicin y cuantificacin de variables fsicas. Control de procesos industriales. Enseanza e investigacin.
Electrodomsticos.
Industria automotriz. Robtica. Industria informtica. Sistemas de seguridad, etc.
FABRICANTES
Existen en el mercado muchas compaas que se dedican a fabricar microcontroladores:
Microchip Freescale
Atmel
Intel Hitachi Phillips Texas Instruments Holteck NEC
Zilog
National Semiconductor, etc
Freescale Semiconductor, Inc. es un fabricante estadounidense de semiconductores. Fue creado a partir de la divisin de semiconductores de Motorola en 2004. Freescale se centra en el mercado de los sistemas integrados y las comunicaciones. Microcontroladores de 8 bits:
Familia HC08: 68HC08AB, 68HC08AP, etc.
Familia HCS08 Familia RS08
Microcontroladores de 16 bits:
Familia S12 Familia HC12 Familia HC16
Atmel es una compaa de semiconductores, fundada en 1984. Sus familias de microcontroladores incluyen derivados del 8051, el AT91SAM basado en ARM, y sus arquitecturas propias AVR y AVR32. AVR: ATtiny ATtiny26, etc. ATmega ATmega8 Atmega16, etc. AT90Sxxxx AT90S2313, etc.
Intel con una de sus mas famosas creaciones es el Microcontrolador Intel 8051 desarrollado en 1980, Los ncleos 8051 se usan en ms de 100 microcontroladores de ms de 20 fabricantes independientes como Atmel, Dallas Semiconductor, Philips, Winbond, entre otros
Con las familias PIC MCU de 8 bits, 16 bits y 32 bits, as como la familia de Controladores de Seales Digitales (DSC) de 16 bits
Arquitectura de microncontroladores
10
11
Microprocesador vs Microcontrolador
12
Arquitectura de fabricacin de uP y uC
13
Registros
Un
registro o una celda de memoria es un circuito electrnico que puede memorizar el estado de un byte.
14
Registro SFR
Registros de funciones
especiales, cada bit configura los circuitos internos del microcontroladores que se conectan a travs de los pines a los perifricos.
15
circuitos internos con los perifricos. Son configurables bit a bit. Carga mxima (1020mA)
16
UNIDAD DE MEMORIA
Almacena los datos.
17
del programa y acciona otros circuitos Unidad lgica aritmtica (Arithmetical Logical Unit - ALU) realiza todas las operaciones matemticas y lgicas sobre datos Acumulador o registro de trabajo.
18
Bus
El bus est formado por 8, 16 o ms cables. Dos tipos de buses: Bus de direcciones Bus de datos.
19
COMUNICACIN EN SERIE
Permite conectar un uC
con un perifrico utilizando un mnimo nmero de cables, lo que permite el alcance de mayores distancias.
20
trmino utilizado para denotar el nmero de bits transmitidos por segundo [bps]. El protocolo normalmente requiere que cada byte se transmita junto con varios bits de control. Eso quiere decir que un byte en un flujo de datos serial puede consistir en 11 bits. Por ejemplo, si velocidad de transmisin serial es 300 bps un mximo de 37 y un mnimo de 27 bytes se pueden transmitir por segundo.
21
INTER-INTEGRADO Circuito inter-integrado es un sistema para el intercambio de datos serial entre los microcontroladores y los circuitos integrados. Se utiliza cuando la distancia entre ellos es corta (el receptor y el transmisor estn normalmente en la misma placa de circuito impreso). La conexin se establece por medio de dos lneas - una se utiliza para transmitir los datos, mientras que la otra se utiliza para la sincronizacin (la seal de reloj).
22
23
SPI
(SERIAL PERIPHERAL INTERFACE BUS) - BUS SERIAL DE INTERFAZ DE PERIFRICOS Es un sistema para la comunicacin serial que utiliza hasta cuatro lneas (normalmente solo son necesarias tres) - para recibir los datos, para transmitir los datos, para sincronizar y (opcional) para seleccionar el dispositivo con el que se comunica. Esto es la conexin full duplex, lo que significa que los datos se envan y se reciben simultneamente. La velocidad de transmisin mxima es mayor que en el sistema de conexin I2C.
24
(UNIVERSAL ASYNCHRONOUS RECEIVER/TRANSMITTER) TRANSMISORRECEPTOR ASNCRONO UNIVERSAL Este tipo de conexin es asncrona, lo que significa que no se utiliza una lnea especial para transmitir la seal de reloj. Tanto el receptor como el transmisor reciben y envan los datos a velocidad misma que ha sido predefinida para mantener la sincronizacin necesaria. Esto es una manera simple de transmitir datos puesto que bsicamente representa una conversin de datos de 8 bits de paralelo a serial. La velocidad de transmisin no es alta, es hasta 1 Mbit/sec.
25
OSCILADOR
Se
configura normalmente de tal manera que utilice un cristal de cuarzo o resonador cermico para estabilizacin de frecuencia. Adems, puede funcionar como un circuito autnomo (como oscilador RC).
26
CIRCUITO DE ALIMENTACIN
Brown out es un estado potencialmente peligroso que ocurre al
apagar el microcontrolador o en caso de que el voltaje de la fuente de alimentacin salga de unos mrgenes debido al ruido elctrico. Como el microcontrolador dispone de varios circuitos que funcionan a niveles de voltaje diferentes, ese estado puede causar un comportamiento descontrolado. Para evitarlo, el microcontrolador normalmente tiene un circuito incorporado para el brown out reset. El pin de reset (reinicio), marcado frecuentemente con MCLR (Master Clear Reset), sirve para el reinicio externo del microcontrolador al aplicar un cero (0) o un uno (1) lgico dependiendo del tipo del microcontrolador. En caso de que el circuito brown out no est incorporado, un simple circuito externo para el brown out reset se puede conectar al pin MCLR.
27
TEMPORIZADORES/CONTADORES
Son circuitos que sirven
medir el tiempo transcurrido entre dos eventos, basados en contar los pulsos generados por el oscilador principal que es un cristal de cuarzo
28
llevados al circuito una vez por cada ciclo de mquina directamente o por el pre-escalador, lo que aumenta el nmero en el registro del temporizador.
29
EL
Un
pre-escalador es un dispositivo electrnico utilizado para dividir la frecuencia por un factor predeterminado. Esto quiere decir que se necesita llevar 1, 2, 4 o ms pulsos a su entrada para generar un pulso a la salida.
30
EL
se puede escribir en l es 255. Si se excede este nmero, el temporizador se reinicia automticamente y el conteo comienza de nuevo en cero. Esto es denominado desbordamiento o sobreflujo (overflow).
31
TEMPORIZADOR (WATCHDOG)
El perro guardin es un
PERRO
GUARDIN
temporizador conectado a un oscilador RC completamente independiente dentro del microcontrolador. Si el perro guardin est habilitado, cada vez que cuenta hasta el mximo valor en el que ocurre el desbordamiento del registro se genera una seal de reinicio del microcontrolador y la ejecucin de programa inicia en la primera instruccin.
32
CONVERTIDOR A/D
Un convertidor analgico-digital es un
circuito electrnico encargado de convertir las seales continuas en nmeros digitales discretos. En otras palabras, este circuito convierte un nmero real en un nmero binario y se lo enva a la CPU para ser procesado.
33
34
CONVERTIDOR A/D
Resolucin depende
35
Microcontrolador PIC628A
PIC: Peripheral Interface Controller. PIC16F628A
soportan hasta 100000 ciclos de escritura en memoria FLASH y 1000000 ciclos en EEPROM Oscilador interno RC de 4MHz MCLR programable
36
Microcontrolador PIC628A
37
Arquitectura PIC628A
Procesador arquitectura HARVARD. Dos bloques de memorias independientes
38
A r q u i t e c t u r a
P I C 6 2 8 A
39
Memoria de programa
Memoria de instrucciones,
se escribe rdenes para que CPU ejecute. En PIC16F628A es una memoria no voltil FLASH Bus de direcciones es 13 bits. PC puede direccionar 8192 posiciones de 14 bits cada una(0000h a 1FFFh) Implementadas en PIC16F628A slo 2048 lneas 0000h 07FFh, PC utiliza 11 primeros bits los dems son ignorados
40
Memoria de datos
PIC16F628A
tiene dos memorias de datos: RAM esttica o SRAM, memoria casual tipo no voltil: registros de propsito general (GPR), donde almacena variable y registros especiales (SFR).
de 128 posiciones de 8 bits, puede ser accedida por programacin, almacena datos an sin alimentacin.
41
Memoria de datos
42
Memoria de datos
Tecnologa CMOS, consumo de potencia es bajo
(2mA a 4MHz) Esttico , si reloj se detiene los datos no se pierden, mientras se encuentre con VDD. Memoria RAM tiene 512 lneas de 8 bits, particionada en 4 bancos: 0,1,2,3 cada una con 128 bytes. Se accede por bits RP0 y RP1 de registro STATUS. Para 16F628A se tiene 224 posiciones RAM para los registros GPR
43
Caractersticas Generales
Velocidad operacin hasta 20MHz con oscilador
externo Oscilador interno RC de 4MHz. 8 niveles de pila. Resistencias PULL-UP programables. MCLR programable 15 pines I/O y 1 de slo entrada (RA5) WDT independiente de oscilador Programacin bajo voltaje LPV (5V) Programacin serial en circuito (ICSP) por 2 pines: RB6 reloj y RB7 datos
44
Caractersticas Generales
Cdigo de proteccin programable Memoria FLASH 2048 palabras de 14 bits 2 circuitos comparadores anlogos con entradas
multiplexadas. 3 timers: Timer 0 de 8 bits, Timer 1 de 16 bits y Timer 2 de 8 bits. Mdulos CCP, captura compara 16 bits y PWM de 10 bits. 10 fuentes de interrupcin. Mdulo de comunicacin serial USART/SCI Capacidad de corriente 25mA I/O por cada pin.
45
Diagrama de pines
46
acciones ejecutadas en base a una programacin considerando todos los factores que intervienen en la lnea de produccin
47
Secuencia de acciones
Proceso
48
Acondicionamiento de seales
El control de procesos depende de la obtencin
de informacin de entrada, su evaluacin y la ejecucin de la accin correspondiente. En control industrial, la mayora de las veces la informacin de entrada involucra el monitoreo de dispositivos de campo que admiten dos estados posibles. Un interruptor es un ejemplo comn de dispositivo de dos estados. O est abierto o est cerrado.
49
Acondicionamiento de seales
Interruptores: activan o
50
51
52
Interruptor reflectivo
Las
53
se conectan a cargas elctricas mayores mediante dispositivos actuadores, cumpliendo secuencias, considerando retardos debido a inercias mecnicas, retardos en activaciones, etc
54
55
56
entrada.
57
Sensores de temperatura
Transductores:
convierten seales fsicas en seales elctricas. Sensores: miden seales sin convertirlas en otra magnitudes, contienen a los transductores
58
59
60
Programacin de uC PIC
61
Ejecucin de programas en uC
El
uC ejecuta el programa cargado en la memoria Flash, se denomina el cdigo ejecutable. El cdigo binario est compuesto por palabras de 12, 14 o 16 bits de anchura, que se interpreta por la CPU como una instruccin a ser ejecutada durante el funcionamiento. Se les denominan Conjunto de instrucciones. El cdigo ejecutable se representa con nmeros hexadecimales denominada cdigo Hex. En los microcontroladores PIC con las palabras de programa de 14 bits de anchura, tiene 35 instrucciones diferentes.
62
instrucciones consisten en abreviaturas con significado y a cada instruccin corresponde una localidad de memoria. Un programa denominado ensamblador compila (traduce) las instrucciones del lenguaje ensamblador a cdigo mquina (cdigo binario).
63
Desventajas de ASSEMBLER
Una sola operacin en ensamblador consiste en
muchas instrucciones, hacindolo muy largo y difcil de manejar. Cada tipo de microcontrolador tiene su propio conjunto de instrucciones. Un programador tiene que conocer el hardware del microcontrolador para escribir un programa.
64
ESTRUCTURA DE PROGRAMA
Por ejemplo: 1. Activar y configurar el
convertidor A/D incorporado; 2. Medir el valor analgico; 3. Calcular temperatura; y 4. Enviar los datos en el formato apropiado al LCD.
65
FASES DE COMPILACIN
66
Fases de Programacin de uC
Realizada la compilacin y generado el archivo HEX, a
67
programacin de alto nivel (anteriormente descritas) y le permite realizar algunas operaciones tanto sobre los bytes como sobre los bits (operaciones lgicas, desplazamiento etc.). C est estandarizado (el estndar ANSI)
68
ESTRUCTURA DE PROGRAMA EN C
69
70
71