Professional Documents
Culture Documents
INTRODUCCIN
A LOS
MICROCONTROLADORES
Microcontroladores
Lgica discreta: Mucho espacio, poco flexible, mayor consumo => No usada hoy en da. Lgica programable: En un solo chip se puede integrar circuitos muy complejos => poco espacio, reprogramable y por tanto flexible, y menor consumo.
Departamento de Electrnica y Automtica Escuela Tcnica Superior de Ingeniera ICAI Universidad Pontificia Comillas
Microcontroladores
Fuente:
Departamento de Electrnica y Automtica Escuela Tcnica Superior de Ingeniera ICAI Universidad Pontificia Comillas
Microcontroladores
Departamento de Electrnica y Automtica Escuela Tcnica Superior de Ingeniera ICAI Universidad Pontificia Comillas
Microcontroladores
PLD: Permiten implantar una funcin lgica como suma de productos (forma cannica):
Departamento de Electrnica y Automtica Escuela Tcnica Superior de Ingeniera ICAI Universidad Pontificia Comillas
Microcontroladores
Departamento de Electrnica y Automtica Escuela Tcnica Superior de Ingeniera ICAI Universidad Pontificia Comillas
Microcontroladores
FPGA: Miles de bloques lgicos configurables (CLB) interconectados entre s. Basado en RAM, y por tanto voltil requiere memoria externa para configurar.
Departamento de Electrnica y Automtica Escuela Tcnica Superior de Ingeniera ICAI Universidad Pontificia Comillas
Microcontroladores
Departamento de Electrnica y Automtica Escuela Tcnica Superior de Ingeniera ICAI Universidad Pontificia Comillas
Microcontroladores
Registros: valores temporales. ALU: operaciones RAM: datos Flash: Programa. Cada ciclo de reloj lee una instruccin, la decodifica y la ejecuta.
La CPU
Departamento de Electrnica y Automtica Escuela Tcnica Superior de Ingeniera ICAI Universidad Pontificia Comillas
Microcontroladores
DDR define si el pin es entrada o salida. En PORT se escribe el valor de salida. En PIN se lee el estado del pin del micro. Ojo: si se escribe un 1 en PORT se activa la R de pull-up.
Puertos I/O
Departamento de Electrnica y Automtica Escuela Tcnica Superior de Ingeniera ICAI Universidad Pontificia Comillas
10
Microcontroladores
Cuenta en TCNT eventos en el pin Tn o ciclos del reloj interno (From Prescaler). Permite contar eventos externos o generar retardos si se cuentan ciclos de reloj.
Contador / Temporizador
Departamento de Electrnica y Automtica Escuela Tcnica Superior de Ingeniera ICAI Universidad Pontificia Comillas
11
Microcontroladores
Mux selecciona la entrada analgica deseada. Se arranca la conversin escribiendo 1 en ADSC. Se convierte el dato mediante aproximaciones sucesivas. Cuando finaliza la conversin el micro pone el bit ADSC a cero para avisar al programa. El programa lee el valor convertido del registro ADC Data Register
Departamento de Electrnica y Automtica Escuela Tcnica Superior de Ingeniera ICAI Universidad Pontificia Comillas
Conversor A/D
Electrnica 2 IEM 2011-2012 12
Microcontroladores
ATmega328P
Departamento de Electrnica y Automtica Escuela Tcnica Superior de Ingeniera ICAI Universidad Pontificia Comillas
13
Hexadecimal
Dec Hex Bin
Muy utilizado para representar la informacin que manejan los micros, que son palabras mltiplos del byte (4 bits=16 combinaciones).
En lenguaje C:
0xF1 0xB5 11110001 10110101
Departamento de Electrnica y Automtica Escuela Tcnica Superior de Ingeniera ICAI Universidad Pontificia Comillas
14
Microcontroladores
15
Departamento de Electrnica y Automtica Escuela Tcnica Superior de Ingeniera ICAI Universidad Pontificia Comillas
16
Manipulacin de bits
a b = 01101101 = 10101001
desplaza el valor de a 4 bits a la izq (multiplica por 24) desplaza el valor de a 4 bits a la der (divide por 24)
(AND, bit a bit) (OR, bit a bit) (XOR, bit a bit) (NOT, bit a bit)
Electrnica 2 IEM 2011-2012
Departamento de Electrnica y Automtica Escuela Tcnica Superior de Ingeniera ICAI Universidad Pontificia Comillas
17
Poner un bit a 1:
PORTB |= (1<<3) ) /* 1<<3=00001000, pone bit 3 a 1 */
Poner un bit a 0:
PORTB &= ~(1<<3) ) /* pone el bit 3 a 0 */
Invertir un bit:
PORTB ^= (1<<3) ) /* invierte bit 3 */
Electrnica 2 IEM 2011-2012
Departamento de Electrnica y Automtica Escuela Tcnica Superior de Ingeniera ICAI Universidad Pontificia Comillas
18
Tcnicas de programacin:
El bucle scan:
Departamento de Electrnica y Automtica Escuela Tcnica Superior de Ingeniera ICAI Universidad Pontificia Comillas
19
Tcnicas de programacin:
#include tipos.h
Nota
i7 i6 i5 i4 x x x x >> 4 = 0 0 0 0 i7 i6 i5 i4
Departamento de Electrnica y Automtica Escuela Tcnica Superior de Ingeniera ICAI Universidad Pontificia Comillas
20
Problema Alarma
Sistema de alarma tal que: interruptor para activar el sistema (ON), sensor que detecta apertura puerta (P), sensor que detecta apertura ventana (V), y salida para activar bocina (Al) al abrirse la puerta o la ventana.
21
Problema: Alarma
#include tipos.h
includes
0xF8;
Lectura entradas
Funcin lgica
Actualizamos salidas
Departamento de Electrnica y Automtica Escuela Tcnica Superior de Ingeniera ICAI Universidad Pontificia Comillas
22
23
includes
s=d3 & d0 | d2 & d1 & ((~d0) & 0x01) | ((~d2) & 0x01) & d1 & d0;
Funcin lgica
Actualizamos salidas
Departamento de Electrnica y Automtica Escuela Tcnica Superior de Ingeniera ICAI Universidad Pontificia Comillas
24
Alberto Aguilera 23, E-28015 Madrid - Tel: +34 91 542 2800 - Fax: +34 91 559 6569 - http://www.icai.upcomillas.es