Post on 14-Apr-2018
7/30/2019 03 Repaso.mcu
1/65
Sesin 3: Repaso de MCUs/MPUs y SistemasEmbebidos
7/30/2019 03 Repaso.mcu
2/65
Universidad de AntioquiaSistemas Embebidos Ingeniera Electrnica
Antes de Comenzar
Preguntas de repaso Cul es su definicin de Sistema embebido?. Diferencias entre un microprocesador y
microcontrolador? Sabe que es un procesador embebido?
Qu bloques componen una CPU? Qu es el modelo de programacin de unMPU/MCU?
A que se refiere el trmino Instruction SetArchitecture?
Qu es la Memoria, que tipos conoce y quediferencias presentan, cuales tipos se usan dentrode los sistemas embebidos?
Perifricos? Excepciones e Interrupciones?
7/30/2019 03 Repaso.mcu
3/65
Universidad de AntioquiaSistemas Embebidos Ingeniera Electrnica
Agenda para la c lase
1Introduccin Repaso de algunos conceptosrelacionados con sistemas embebidos
2Fabricantes de MCUs Cuales son los mspopulares?
3Familia S08 Repaso de las caractersticas delos Microcontroladores de 8 bits de Freescale.
7/30/2019 03 Repaso.mcu
4/65
Universidad de AntioquiaSistemas Embebidos Ingeniera Electrnica
A continuacin
Repaso de la Familia S08 de Freescale
Fabricantes de MCUs
Repaso de tendencias/conceptos
Repaso de tendencias/conceptos
7/30/2019 03 Repaso.mcu
5/65
Universidad de AntioquiaSistemas Embebidos Ingeniera Electrnica
Diseo de S.E. y Hardware
Metodologa de Diseo
ESPECIFICACIN
CONOC
IMIENTOS
PREV
IOS
HW-COMPONENTES
SOFTWARE
IMPLEMENTACIN: CODIS. HW/SWParticionar Hardware/SoftwareAdministracin de Eventos.Mltiples tareas, concurrencia.Compilacin, Simulacin.Uso de bajo nivel (si es requerido)
REALIZACIN
DISEO HARDWARE HARDWARE
SOFTWARE
VALIDACIN Y EVALUACIN: DESEMPEO, CONSUMO DE POTENCIA,SEGURIDAD, CONFIABILIDAD, GUSTO AL CLIENTE
7/30/2019 03 Repaso.mcu
6/65
Universidad de AntioquiaSistemas Embebidos Ingeniera Electrnica
Unidades de Procesam iento
Aporta la inteligencia al S.E.
Con/sin memoria interna.
Usar/no memoria externa.
Arquitectura especfica.
Perifricos de E/S.
CPU
CONTROL
DATAPATH
Memoria
Unidad de Procesamiento
CPU Memoria
7/30/2019 03 Repaso.mcu
7/65Universidad de AntioquiaSistemas Embebidos Ingeniera Electrnica
Unidades de Procesam iento
ASICs: Application Specified Integrated Circuit.
Lgica Reconfigurable: FPGA, CPLD, ...
Procesadores: MPUs, MCUs, DSPs,
ProcesadoresReconfigurable
ASICs
0.5um 0.25um 0.130um 70nm
Mops/mW100
10
1
0.1
0.01
Tecnologa
EficienciaEnerga
Flexi
bilidad
DificultaddeReprogram
acin
7/30/2019 03 Repaso.mcu
8/65Universidad de AntioquiaSistemas Embebidos Ingeniera Electrnica
Unidades de Procesam iento
ASICs (Hardwired).
Aplicaciones de alto desempeo y muy especficas.
Mercado grande para el desarrollo.
Costo del diseo y manufacturacin muy elevado. Lgica Reconfigurable.
Prototipado rpido. Plataforma de prueba de grandesdiseos.
Expectativas de venta baja. CPLDs: Complex Programmable Logic Devices.
FPGAs: Field Programmable Gate Arrays.
7/30/2019 03 Repaso.mcu
9/65Universidad de AntioquiaSistemas Embebidos Ingeniera Electrnica
10110100101111110101011011000101111001001111
00010100011101000000000000001101010100111010
10110100101111110101011011000101111001001111
00010100011101000000000000001101010100111010
Unidades de Procesam iento
Microprocesador, Microcontrolador, DSPs
Unidad de procesamiento
CONTROL
DATAPATH
RAM
ROM
P1
P2
Pn
Cerebro
CONTROL
DATAPATH
Per ifricos de Entr ada Per ifricos de Sal id a
CPU
MEMORIA
P1 P2 Pn
7/30/2019 03 Repaso.mcu
10/65Universidad de AntioquiaSistemas Embebidos Ingeniera Electrnica
In troduccin a los MCUs
Antes: Elementos por separado Ahora: Todo en uno Aplicaciones
P1
P2
P3
CPU
Memoria
A/D
INTs Ext.CapturaEventos
PWM
SERIALI2C
P4
P5
PnMicrocontro lador
7/30/2019 03 Repaso.mcu
11/65Universidad de AntioquiaSistemas Embebidos Ingeniera Electrnica
In troduccin a los MCUs
Circuito Integrado Incluye en su interior
CPU o Unidad Central de Proceso
Memoria
Dispositivos de E/S
MCUCPU
MEMORIA
P1
P2
P3
P4
P5
Pn
Se asemeja a uncomputador, pero
con prestacionesbastante reducidas
7/30/2019 03 Repaso.mcu
12/65Universidad de AntioquiaSistemas Embebidos Ingeniera Electrnica
MCUs
AUTOMOTRIZFrenos.Motor.Aire acondicionado.Sistema GPS.Marchas.Control Traccin.
AvionesControl vuelo.Anti-Colisin.Informacin.Fiabi l idad 100% .
S. MDICOSMarcapasos.ECG.Dilisis.Fiabi l idad 100%.
CONSUMOLavadoras.Neveras.Microondas.Relojes.Video Juegos.Cmaras de Video.
In troduccin a los MCUs
7/30/2019 03 Repaso.mcu
13/65Universidad de AntioquiaSistemas Embebidos Ingeniera Electrnica
A continuacin
Familia HCS08 de Freescale
Fabricantes de MCUs
Repaso de tendencias/conceptos
Fabricantes de MCUs
7/30/2019 03 Repaso.mcu
14/65Universidad de AntioquiaSistemas Embebidos Ingeniera Electrnica
Fabrican tes de MCUs
Actualmente se ofrecen muchas clases demicrocontroladores.
Este mercado es, por tanto, muy competido.
Cada fabricante tiene su squito de seguidores.
Los MCUs comparten caractersiticas similares:
Memoria de datos y programa.
Perifricos de entrada y salida.
Programacin de alto y bajo nivel. Se diferencian por la arquitectura y aspectos
funcionales.
7/30/2019 03 Repaso.mcu
15/65Universidad de AntioquiaSistemas Embebidos Ingeniera Electrnica
MCUs de 8 b its popu lares
Fabricante - Familia
MICROCHIP: PICs.
ATMEL:AVR.
TEXAS INSTRUMENTS: MSP. PHILLIPS: 80C51
FREESCALE: HCS08, ColdFire.
INTEL: 8051.
HITACHI: H8. HOLTEK: HT8.
NATIONAL SEMICONDUCTORS: COP8.
7/30/2019 03 Repaso.mcu
16/65Universidad de AntioquiaSistemas Embebidos Ingeniera Electrnica
Fabrican tes de MCUs
MICROCHIP: PICs. Alto nivel de integracin
Caractersticas de altas prestaciones: Filosofa RISC.
Modalidad Pipeline. Arquitectura Harvard: instrucciones y datos.
Relacin de precio/prestaciones excelente.
Aplicaciones
Informtica, electrodomsticos, control, automatizacin, equiposde comunicaciones.
MCUs ms famosos (no por eso los mejores) Abundantes contribuciones de terceros.
7/30/2019 03 Repaso.mcu
17/65Universidad de AntioquiaSistemas Embebidos Ingeniera Electrnica
Fabrican tes de MCUs
ATMELAVR Arquitectura diseada por estudiantes de la Universidad
Noruega de Ciencia y Tecnologa.
Caractersticas de altas prestaciones.
Filosofa RISC. Arquitectura Harvard: instrucciones y datos.
32 registros internos de 8 bits.
Desarrollado inicialmente para ser eficiente en la
ejecucin de cdigo C (Compilador gratis). Popularizados a travs de la plataformaARDUINO.
http://www.arduino.cc/es/
http://www.arduino.cc/es/http://www.arduino.cc/es/7/30/2019 03 Repaso.mcu
18/65Universidad de AntioquiaSistemas Embebidos Ingeniera Electrnica
Fabrican tes de MCUs
Texas Instruments: MSP430 CPU RISC de 16 bits.
Arquitectura Von Neumann
Orientado a altas prestaciones Capacidad de cmputo.
Bajo consumo energtico.
Caractersticas. A/D de 10/12/14/16 bits.
Temporizadores.
Comunicaciones seriales. Controlador de LCD.
Reloj interno.
Muchas aplicaciones orientadas al DSP.
7/30/2019 03 Repaso.mcu
19/65Universidad de AntioquiaSistemas Embebidos Ingeniera Electrnica
Fabrican tes de MCUs
NXP: 80C51 CPU de 8 bits.
Arquitectura Harvard.
Perifricos
Oscilador interno. Tiemporizadores.
Puertos de I/O.
Comunicaciones seriales.
MCUs muy utilizados en centros de educacinEuropeos.
7/30/2019 03 Repaso.mcu
20/65Universidad de AntioquiaSistemas Embebidos Ingeniera Electrnica
Fabrican tes de MCUs
FREESCALE Antiguamente Motorola Semiconductors.
Microcontroladores descendientes del procesadorM68K.
Familias de 8 Bits. HC05, HC11 (Ya no se fabrican). HC08 (Obsoleto). HCS08 y Flexis.
Familias de 16 Bits. HC12 (Ya no se fabrica), MC9S12.
Procesadores de Seales Digitales (DSPs) Familia 56xx.
7/30/2019 03 Repaso.mcu
21/65Universidad de AntioquiaSistemas Embebidos Ingeniera Electrnica
MPUs/MCUs Embeb idos
XILINX: PowerPC, MicroBlaze, PicoBlaze PowerPC: ProcesadorHardCore
Pipeline de 5 niveles.
Arquitectura RISC.
Memorias cach. Arquitectura Harvard.
MicroBlaze: Est dentro de lo que se conoce como SoftCore
Procesador que est diseado en un lenguaje de descripcin deHardware (HDL).
PicoBlaze: MCU embebido Similar al MicroBlaze
Mucho ms reducido.
Es lo que se conoce como computacin reconfigurable.
7/30/2019 03 Repaso.mcu
22/65Universidad de AntioquiaSistemas Embebidos Ingeniera Electrnica
Arqu i tectu ras de 32 b its
Algunos fabricantes han migrado haciaarquitecturas ms ecomplejas
Ello con el fin de dar soporte a nuevas aplicaciones.
Estas arquitecturas han evolucionado a partir de las
investigaciones en el diseo de MPUs. Muchos fabricantes han diseado sus propias
arquitecturas de 32 bits
Propietarias y especializadas.
Ahora casi todos los fabricantes estn optando poradoptar una arquitectura estndar
Advanced RISC Machine (ARM)
PIC32(MIPS)
x86, PXA (ARM)
Omap(ARM)
ColdFire (M68k),Kinetics (ARM)
AVR32,SAM (ARM)
LPC (ARM)
7/30/2019 03 Repaso.mcu
23/65Universidad de AntioquiaSistemas Embebidos Ingeniera Electrnica
Preguntas
Cual es la diferencia entre un sistema electrnicoreconfigurable y uno reprogramable?.
Cul es la diferencia entre un microprocesador(MPU) y un microcontrolador(MCU)?
Si un DSP se considera un sistema de aplicacinespecfica, porque est dentro de la familia de losprocesadores?
Que se entiende porcomputacin reconfigurable?
Cuando se dice que sistema embebido posee unprocesadorHardCore, a que se refieren? Y uno SoftCore?
Los procesadores ARM son RISC o CISC?
7/30/2019 03 Repaso.mcu
24/65Universidad de AntioquiaSistemas Embebidos Ingeniera Electrnica
A continuacin
Repaso Familia S08 de Freescale
Fabricantes de MCUs
Repaso de tendencias/conceptos
Repaso Familia S08 de Freescale
7/30/2019 03 Repaso.mcu
25/65
Universidad de AntioquiaSistemas Embebidos Ingeniera Electrnica
Microcon tro lado r HCS08
Los MCUs HCS08 estn compuestos por: CPUS08.
BDM Controller
Memoria RAM.
Memoria ROM/FLASH. Perifricos.
Todos tienen la misma CPU: CPUS08.
Las diferencias estn en la memoria y losperifricos.
MCUs HCS08 DE FREESCALE
CPU S08Internal
bus
TIMER LCD
I2C
KBI
SPI
IRQSCI
A/D
CAN
MEMORIA
RELOJ
7/30/2019 03 Repaso.mcu
26/65
Universidad de AntioquiaSistemas Embebidos Ingeniera Electrnica
Microcon tro lado r HCS08
Los MCU de la familia HCS08 comparten la CPU:La CPUS08, de 8 Bits.
Total compatibilidad con HC08 y HC05.
Nuevas instrucciones.
Apuntador de pila de 16 bits con instruccionespara manipularlo.
Equivalencia con registro A7en el M68K
Registro ndice de 16 bits (H:X) Registro H: 8 Bits. Parte Alta de H:X.
Registro X: 8 Bits. Parte Baja de H:X.
Equivalencia con registros apuntadoresen el M68K
07
Registro Acumulador A
H
15 0
X
78
Registro ndice H:X
15 0
Stack Pointer SP
15 0
Contador de Programa PC
07
Registro Cdigos de Condicin CCR
7/30/2019 03 Repaso.mcu
27/65
Universidad de AntioquiaSistemas Embebidos Ingeniera Electrnica
Mapa de Memoria
Mapa de Memoria para el MC9S08JM60
Registros pginadirecta
$0000
$00AF$1960
Memoria FLASH
$FFBF
$FFFFVectores
$FFC0
Memoria RAM$10AF
$00B0
Registros pginaalta
$185F
$1800Flash
$01B0
$17FF
Memoria RAM$195F
$1860
7/30/2019 03 Repaso.mcu
28/65
Universidad de AntioquiaSistemas Embebidos Ingeniera Electrnica
Microcon tro lado r HCS08
16 Modos de direccionamiento. Instrucciones para mover datos de memoria a
memoria sin usar el acumulador A.
Instrucciones para la manipulacin de datos BCD:
Binary-coded decimal
Modos de bajo consumo: wait y varios niveles destop.
7/30/2019 03 Repaso.mcu
29/65
Universidad de AntioquiaSistemas Embebidos Ingeniera Electrnica
Microcon tro lado res Flexis
Microcontroladores de 8 y 32 Bits de altorendimiento, pertenecen a la familia S08 yColdFire.
7/30/2019 03 Repaso.mcu
30/65
Universidad de AntioquiaSistemas Embebidos Ingeniera Electrnica
MemoriaFLASH
Microcontro ladores
Otras caractersticas del S08 Arquitectura de alto desempeo optimizada para
compiladores C.
Frecuencia mxima de bus: 40, 48 y 50 MHz en algunas
implementaciones. Seguridad Programa Almacenado.
void main(void){SOPT1_COPD = 1;DDRA = 0xFF;
}
main:
bset 0,$001FMOV #$FF,$0004Compi lador
ICS, ICG,MCG
Oscilador Externo
Oscilador Interno
Fbus
7/30/2019 03 Repaso.mcu
31/65
Universidad de AntioquiaSistemas Embebidos Ingeniera Electrnica
Microcontro ladores
Los Microcontroladores de la familia S08 Protecciones.
Perro guardin.
Alimentacin de voltaje.
Instruccin o direccionamiento ilegales.
Si el MCU se bloquea!!!
MCURESET
Instruccin no vlida.Memoria no implementada.
Si el voltaje cae por
debajo de un Umbral
7/30/2019 03 Repaso.mcu
32/65
Universidad de AntioquiaSistemas Embebidos Ingeniera Electrnica
Microcontro ladores
Los Microcontroladores de la familia S08 Pin de Reset y PowerOnReset.
Memoria FLASH: Hasta 60Kbytes.
Memoria RAM: Hasta 2kbytes.
Pin de Reset activo en bajo
MCURESET
Circuito de POR parareiniciar el MCU al polarizarlo
Memoria FLASHPrograma
Memoria RAMDatos
7/30/2019 03 Repaso.mcu
33/65
Universidad de AntioquiaSistemas Embebidos Ingeniera Electrnica
Microcontro ladores
Algunos mdulos Comunicacin serial SPI, SCI e I2C.
TIMERs con InputCapture y PWM.
Conversor Anlogo/Digital de hasta 12 Bits.
Adems
Puertos de Entrada/Salida.
PullUps habilitables en algunos puertos.
Capacidad de configuracin de alta o baja corriente encada puerto.
7/30/2019 03 Repaso.mcu
34/65
Universidad de AntioquiaSistemas Embebidos Ingeniera Electrnica
Microcontro ladores
Consideraciones sobre el Reloj: La frecuencia del Bus es la mitad de la Frecuencia de la
CPU. FCPU = 8MHz, FBUS = 4 MHz.
FCPU = 10MHz, FBUS = 5 MHz.
Un ciclo de bus equivale a 1/FBUS.
Las instrucciones se ejecutan con el reloj del bus. Por ejemplo si se quiere traer un dato de la posicin de
memoria $84 y guardarla en el acumulador
Operacin de 3 Ciclos ??? a FBUS = 2 MHz. Tiempo = ???.
Tiempo ejecucin 3 * 0.5s = 1.5s
Y los osciladores externo e interno que papel juegan??
M d l d P i
7/30/2019 03 Repaso.mcu
35/65
Universidad de AntioquiaSistemas Embebidos Ingeniera Electrnica
Modelo de Prog ramacin
07
Registro Acumulador A
H15 0
X78
Registro ndice H:X
15 0
Stack Pointer SP
15 0
Contador de Programa PC
Registro Cdigos de Condicin CCR
07
V 1 1 H I N Z C
M d l d P i
7/30/2019 03 Repaso.mcu
36/65
Universidad de AntioquiaSistemas Embebidos Ingeniera Electrnica
Modelo de Prog ramacin
Acumulador de 8 Bits (A) Registro de propsito general de 8 bits.
Almacena operandos y resultados en operacioneslgicas y aritmticas.
Lectura/Escritura. Equivalencia con Dn
BIT7 BIT6 BIT5 BIT4 BIT3 BIT2 BIT1 BIT0RESET: X X X X X X X X
M d l d P i
7/30/2019 03 Repaso.mcu
37/65
Universidad de AntioquiaSistemas Embebidos Ingeniera Electrnica
Modelo de Prog ramacin
Registro ndice de 16 Bits (H:X)
Indexar o direccionar64 Kbytes.
Modos de direccionamiento indexados.
Registro H, Registro X: Parte alta y baja.
El registro H es llevado a cero cuando hay un reset. Equivalencia con An
H15 H14 H13 H12 H11 H10 H9 H8 X7 X6 X5 X4 X3 X2 X1 X0
RESET: 0 0 0 0 0 0 0 0 X X X X X X X X
H (PARTE ALTA DE H:X) X (PARTE BAJA DE H:X)
M d l d P i
7/30/2019 03 Repaso.mcu
38/65
Universidad de AntioquiaSistemas Embebidos Ingeniera Electrnica
Modelo de Prog ramacin
Registro apuntador de pila de 16 Bits (SP)
Apunta a la siguiente posicin disponible del stack. Se decrementa despus de almacenarse un valor en
el stack.
Se incrementa antes de tomar un valor del stack.
Durante el reset, SP es llevado a $00FF.
Equivalencia con A7
B15 B14 B13 B12 B11 B10 B9 B8 B7 B6 B5 B4 B3 B2 B1 B0
RESET:
0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1
XXXXXXXX
XXXXXXXX
Memoria 8 Bits
$00FF$00FE$00FD$00FC
$00FB$00FA$00F9$00F8
SP SP
$40
SP $80$30$45SP
SP
M d l d P i
7/30/2019 03 Repaso.mcu
39/65
Universidad de AntioquiaSistemas Embebidos Ingeniera Electrnica
Modelo de Prog ramacin
Contador de Programa de 16 bits (PC)
Registro de 16 bits que contiene la direccin de lasiguiente instruccin a ejecutar.
Normalmente se incrementa automticamente a lasiguiente posicin consecutiva de memoria.
Controlado tambin por las instrucciones de salto.
B15 B14 B13 B12 B11 B10 B9 B8 B7 B6 B5 B4 B3 B2 B1 B0
RESET: Se carga con el valor que haya en el vector de Reset $FFFE-$FFFF
M d l d P i
7/30/2019 03 Repaso.mcu
40/65
Universidad de AntioquiaSistemas Embebidos Ingeniera Electrnica
Modelo de Prog ramacin
Registro de cdigos de condicin (CCR)
Registro de 8 bits que contiene la mscara deinterrupcin y cinco banderas que indican elresultado de la ltima instruccin
B7(V) B6(1) B5(1) B4(H) B3(I) B2(N) B1(Z) B0(C)
RESET: X 1 1 X 1 X X X
7/30/2019 03 Repaso.mcu
41/65
Universidad de AntioquiaSistemas Embebidos Ingeniera Electrnica
Antes de comenzar
PolarizacinMCU
Regulacin del
USB
Polarizacinmdulo ADC
ComunicacinI2C
UART 2
UART 1
SPI 1 SPI 2
ConversinADC
Bus SerieUniversal
Comparadoranalgico
Programacin& Debugging
Canales deTimer
InterrupcinExterna
7/30/2019 03 Repaso.mcu
42/65
Universidad de AntioquiaSistemas Embebidos Ingeniera Electrnica
Puertos de E/S (JM60)
Puertos disponibles (64 pines)
PTAD, 6 pines
PTBD, 8 pines
PTCD, 7 pines
PTDD, 8 pines PTED, 8 pines
PTFD, 8 pines
PTGD, 6 pines
Comparte pines conel mdulo de
teclado, de ADC yserial sncrono
Comparte pines
con el I2C y serialasncrono
Comparte pines conel mdulo de
teclado, de ADC y elcomparador
Comparte pines conel mdulo de serial
asncrono, serialsncrono y canalesde timer
Comparte pinescon los canales
del timer
Comparte pinescon el mdulo de
teclado y osciladorexterno
7/30/2019 03 Repaso.mcu
43/65
Universidad de AntioquiaSistemas Embebidos Ingeniera Electrnica
MC9S08JM60
Referenciaexterna de
relojReferenciainterna de
relojReferencia
opcional para
los timersSalida principal
del MCG,genera el reloj
del bus y la CPU
Referenciaopcional para
el BDC(debugging)
Manejo del relo j
RTC
COP
TPM1 IIC
SCI1
SCI2
TPM2 SPI1
SPI2
MCG
MCGLCLK
MCGOUT
MCGFFCLK
MCGIRCLK
USBRAM
CPU
BDC
ADC
USB
RAM Flash
MCGERCLK
2
2
1KHzLPO
Low PowerOscilator
XTAL
EXTAL
7/30/2019 03 Repaso.mcu
44/65
Universidad de AntioquiaSistemas Embebidos Ingeniera Electrnica
Real Time Counter (RTC)
El mdulo RTC de los MCUs S08 tiene comoobjetivo:
Generar eventos temporales de manera cclica(repetitiva).
Y que es el RTC? Es bsicamente un contador, un preescaladory un
mdulo a partir de los cuales es posible programarloseventos cclicos.
Usos? Para todos las aplicaciones que requieran el uso de
bases de tiempo.
7/30/2019 03 Repaso.mcu
45/65
Universidad de AntioquiaSistemas Embebidos Ingeniera Electrnica
Real Time Counter
RTC
COP
TPM1 IIC
SCI1
SCI2
TPM2 SPI1
SPI2
MCG
MCGLCLK
MCGOUT
MCGFFCLK
MCGIRCLK
USBRAM
CPU
BDC
ADC
USB
RAM Flash
MCGERCLK
2
2
1KHzLPO
Low PowerOscilator
XTAL
EXTAL
Seleccin dela fuente de
reloj
Configuracinpreescaladopara el reloj
seleccionado
Mdulo =Valor final del
conteo
Contadorrueda libre
de 8 bits
Mscara localde
interrupcin
Peticin deinterrupcin a
la CPU
7/30/2019 03 Repaso.mcu
46/65
Universidad de AntioquiaSistemas Embebidos Ingeniera Electrnica
RTC - Reg is tro s
Bandera deinterrupcin Clocksource
Mscara
local deinterrupcin
Preescalador
para fuentede reloj
Valor dedesborde del
contador
7/30/2019 03 Repaso.mcu
47/65
Universidad de AntioquiaSistemas Embebidos Ingeniera Electrnica
Transm isin SCI
Transmisin de un dato
1.Configurar la velocidad de comunicacin.
2.Habilitar el transmisor escribiendo un 1 en TE delregistro de control 2 SCIxC2.
3.Esperar a que TDRE del registro de estado 1SCIxS1 se coloque en 1 para luego escribir el datoen SCIxD.
4.Repetir el paso 3 para enviar ms datos.
7/30/2019 03 Repaso.mcu
48/65
Universidad de AntioquiaSistemas Embebidos Ingeniera Electrnica
Se habilita la TxSCIxC2TE= 1
Se verifica que SCIxS1TDRE= 1(SCIxD Vaco)
Se escribe el caracter (10010001) enSCIxD.
El mdulo SCI se encarga de la Tx Bit a Bit.START + TRAMA + PARIDAD + STOP
Para Tx otro caracter se verifica siSCIxS1TDRE= 1
Transm isin SCI
Transmisin de uno o varios caracteres:
Mdu lo SCIx
Registro Desplazamiento Tx
SCIxD: TX
10010001
H P 1 0 0 1 0 0 0 1 L
Registro SCIxD desalida o Tx
7/30/2019 03 Repaso.mcu
49/65
Universidad de AntioquiaSistemas Embebidos Ingeniera Electrnica
Recepc in SCI
Recepcin de un dato
1. Configurar la velocidad de comunicacin.
2. Habilitar el receptor escribiendo un 1 en el bit REdentro del registro de control 2 SCIxC2.
3. Se espera a que el dato sea puesto en SCIxD, esdecir, se espera a que RDRF del registro deestado 1 SCIxS1 sea 1.
4. Repetir el paso 3 para recibir ms datos.
7/30/2019 03 Repaso.mcu
50/65
Universidad de AntioquiaSistemas Embebidos Ingeniera Electrnica
Se habilita la RxSCIxC2RE= 1
El mdulo SCI se encarga de la RxBit a Bit.
Cuando el caracter est listo se lleva aSCIxD.
Se verifica con SCIxS1RDRF= 1 (SCIxD Lleno),Entonces se lee el registro SCIxD
Se espera hasta que se cumpla de nuevo la condicinSCIxS1RDRF= 1 (Otro Caracter)
Recepc in SCI
Recepcin de uno o varios caracteres:
Mdu lo SCI
Registro Desplazamiento Rx
SCIxD: RX10010001
H P 1 0 0 1 0 0 0 1 L
Registro SCIxD deentrada o Rx
Converso r ADC S08
7/30/2019 03 Repaso.mcu
51/65
Universidad de AntioquiaSistemas Embebidos Ingeniera Electrnica
MUX
CANAL 1
CANAL 2
CANAL 3
CANAL n
CANAL 4
CHANNELSELECT
Conversorn Bits
CLOCKGEN
Registros A/DADCRx
Interrupcin
COCO
Peticin deINT,
ConversinCompleta
El muestreo solose hace por un
canal al tiempo
La muestra se
escribe en losregistrosADCRx
Converso r ADC S08
7/30/2019 03 Repaso.mcu
52/65
Universidad de AntioquiaSistemas Embebidos Ingeniera Electrnica
Registros de estado /contro l
Status & Control register 1 (ADCSC1)
Status & Control register 2 (ADCSC2)
Indica si se estllevando a cabouna conversin
Conversiontrigger
Consultar!!!
Habilitar funcinde comparacin
Consultar!!
Conversincompleta
Seleccindel canal
Conversincontinua
Mscaralocal de
interrupcin
7/30/2019 03 Repaso.mcu
53/65
Universidad de AntioquiaSistemas Embebidos Ingeniera Electrnica
Registros de conf igu racin
ADC configuration register (ADCCFG) Modo de operacin.
Fuente de reloj
Preescalado
Consumo de potencia Tiempo de conversin
Low Powerconfiguration
Preescalado dela fuente de
reloj
Configuracintiempos deconversin
Resolucindel
conversor
Fuente dereloj para elconversor
Mdu lo TPM
7/30/2019 03 Repaso.mcu
54/65
Universidad de AntioquiaSistemas Embebidos Ingeniera Electrnica
Mdu lo TPM
TPM como Base de TiempoMDULO
NFIN FOUT
CONT.16-BITSFFEED
PRES: 1, 2, 4,8,16, 32, 64, 128 FOVERFLOW
SEL. PS.
TIMER HC(S)08
MOD16-BITS
COMP
CONT
MOD5
PTOF
TOF
TOIE
INT. a CPU
012345010 ... 5ACK_SW
COMP
ComponenteCentral: Contador 16
Bits
Divide la frecuencia de
bus, el contador seincrementa ms
lentamente
Dos registros de 8Bits, se escribe
primero parte altay luego la parte
baja
FTOF = FFEED / (Preescalador* Modulo)
7/30/2019 03 Repaso.mcu
55/65
Universidad de AntioquiaSistemas Embebidos Ingeniera Electrnica
Canales del TPM
Registro de estado y control para el canal(TPMxCySC).
TPMxCyVH y TPMxCyVLBandera deINT para el
canal
Mscaralocal de INTpara el canal
Funcionalidad delcanal: Input
Capture / Output
on Compare
Valores deescritura/lectura
para el canal
7/30/2019 03 Repaso.mcu
56/65
Universidad de AntioquiaSistemas Embebidos Ingeniera Electrnica
t
TIMER
Tiempo de evento: X seg.
Medicin deTiempo
Mnimaintervencin de
la CPU
Canales en Input Captu re
Medida de tiempos Cuando un canal se configura con Input
Capture, el TIM capturar el valor del contadoral producirse un evento externo.
Contador 16 BitsTPMxCNTH y TPMxCNTL
Reg. Canal 16 BitsTPMxCyH y TPMxCyL
C l PWM
7/30/2019 03 Repaso.mcu
57/65
Universidad de AntioquiaSistemas Embebidos Ingeniera Electrnica
CONT.XXXXFFEED
PRES: 1, 2, 4,8, 16, 32,
64, 128
SEL. PS.
TIMER HC(S)08
MODXXXX
COMPPTOF
REG. CHyXXXX
COMP
PIN CHy
MOD1000
CONT.0 1000
REG. CHy650
O.V. O.C. O.V. O.C.
COMPCOMP
O.V. O.C. O.V. O.C.
REG. CHy250
ToggleOnPin
Set/ClearO.C.
Canales en PWM
Mdulo KB I
7/30/2019 03 Repaso.mcu
58/65
Universidad de AntioquiaSistemas Embebidos Ingeniera Electrnica
Mdulo KB I
Driver para un Teclado Matricial
4x4. Cmo funciona dicho teclado?
No tiene polarizacin?
Slo filas y columnas? Qu puedo hacer con eso?
Controlar las Filas y leer Columnas???
Controlar las Columnas y leer las
Filas???
La verdad no entiendo??? o si???
1 2 3 A
4 5 6 B
7 8 9 C
* 0 # D
Teclado 4x3 4x4
Mdulo KB I
7/30/2019 03 Repaso.mcu
59/65
Universidad de AntioquiaSistemas Embebidos Ingeniera Electrnica
Mdulo KB I
Teclado Matricial
Tecla 5
Tecla A
Tecla 9
Tecla 9??
1F1
F2
F3
F4C1 C2 C3 C4
2 3 A
4 5 6 B
7 8 9 C
*
0 # D
0V
0V0V
0V
XV XV XV XV
Poner 0V en las
Filas.Las columnas las
leo con el KBI.5V 5V 5V 5V5V 5V 0V 5V
Se detecta
interrupcin deKBI, ya tengo la
columna. Ahora?
Coloco 0V en las
columnas.Leo las filas por
el puerto.0V 0V 0V 0V
XV
XVXV
XV
5V
5V0V
5VYa tengo la fila yla columna, ahhhes la tecla 9!!!
Mdulo KB I
7/30/2019 03 Repaso.mcu
60/65
Universidad de AntioquiaSistemas Embebidos Ingeniera Electrnica
Mdulo KB I
Teclado Matricial, usando KBI del MCU
MC9S08SE8
PTAD0/KBIP0PTAD1/KBIP1PTAD2/KBIP2PTAD3/KBIP3PTBD0/KBIP4PTBD1/KBIP5PTBD2/KBIP6PTBD3/KBIP7
1 2 3 A
4 5 6 B
7 8 9 C
* 0 # D
F1F2F3F4C1C2C3C4
PTB3-0 Salidas 0VKBI3-0 Entradas con pullupEsperando interrupcin.
3
Se ha presionado la tecla 3F1 C3 KBI1, interrupcin
Esperando a que pase eltiempo de Antirrebote (50ms)
Se lee el puerto PTA3-0.KBI7-4 entrada con PullUp.PTA3-0 salida en 0V.
Como la tecla siguepulsada: C3 F1 0V
Se leen los puertos (A y B) yse determina finalmente elcdigo.
Lectura0bXXXXXXXX0bXXXX10110b01111011
MC9S08JM60
PTGD0/KBIP0PTGD1/KBIP1PTDD2/KBIP2PTDD3/KBIP3PTBD4/KBIP4
PTBD5/KBIP5PTGD2/KBIP6PTGD3/KBIP7
1 2 3 A
4 5 6 B
7 8 9 C
* 0 # D
F1F2F3
F4C1C2C3C4
Mdulo KB I
7/30/2019 03 Repaso.mcu
61/65
Universidad de AntioquiaSistemas Embebidos Ingeniera Electrnica
Mdulo KB I
Y ahora, Qu es el mdulo KBI?
Mdulo de los MCUs que provee neventos que sonmanejados por una interrupcin comn.
Accesibles mediante los puertos del MCU.
Funcionamiento similar a la IRQ. Las n interrupciones comparten el mismo vector de
interrupcin, es decir
Tres registros de control:
KBISC, KBIPE y KBIES
Mdulo KB I
7/30/2019 03 Repaso.mcu
62/65
Universidad de AntioquiaSistemas Embebidos Ingeniera Electrnica
Detector deFlanco y/o
Nivel (IRQ)
.
.
.
.
Peticin deInterrupcin
KBIE
KBACK
KBMOD
interruptnvoidISR_KBI(void){// Cada INT llama esta misma funcin// Leyendo los puertos, se determina// que tecla gener la Int. Ext.
}
Mdulo KB I
KBIEDG0
KBIPE0
KBIP0
KBIEDGnKBIPEn
KBIPn
Mdulo KB I
7/30/2019 03 Repaso.mcu
63/65
Universidad de AntioquiaSistemas Embebidos Ingeniera Electrnica
Mdulo KB I
El mdulo KBI tiene un registro denominadoRegistro de Habilitacin (KBIPE).
Sirve para establecer independientemente cada pin delpuerto como fuente de interrupcin.
Seleccin de flancos (KBIES). Una interrupcin se genera cuando uno de los
pines del puerto configurados como KBI se poneen 0/1 despus de estar todos en 1s/0s.
Mdulo de Programa
7/30/2019 03 Repaso.mcu
64/65
Universidad de AntioquiaSistemas Embebidos Ingeniera Electrnica
Directivas
Preprocesador
Declaracin deVariables, prototipos
Funcin main()Obligatoria!!!
Variables, uso defunciones
Atencin ainterrupciones
Ciclo infinito
g
0
1
2
34
5
7/30/2019 03 Repaso.mcu
65/65
Fin de la sesin