Sie sind auf Seite 1von 86

PLUGIN_AW Manual de Usuario Versin 1.

0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
1
EDUKIT08 PLUGIN_AW
Placa de Personalizacin para HC9S08
Manual del Usuario
Versin 1.0
Sistema Didctico / Entrenamiento
para las familias HC908 / HC9S08 /
HC9S08 - V1 ColdFire Flexis
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
2
- Contenido.
1.0 Introduccin.
2.0 - Caractersticas Generales.
3.0 - Contenido del KIT.
4.0 - Especificaciones Generales.
5.0 - Puertos de Comunicacin del EDUKIT08 con la PC.
6.0 - Hardware del Sistema.
6.1 - Asignacin de Jumpers.
6.2 - Asignacin de Lneas en el sistema EDUKIT08.
7.0 Sistema CodeWarrior for HC(S)08, de Freescale Semiconductor.
7.1 Instalacin del entorno CodeWarrior.
7.2 - Comenzando a trabajar con el entorno CodeWarrior.
8.0 - Ubicacin fsica de Conectores e interfaces de comunicacin.
9.0 Gua rpida de uso.
Diseado y Desarrollado por:
Ing. Daniel Di Lella
Dedicated Field Application Engineer (D.F.A.E )
(Ingeniero de Aplicaciones)
EduDevices
www.edudevices.com.ar
E-Mail Privado: dilella@arnet.com.ar
Comentarios & Sugerencias:
EduDevices.com.ar
Repblica Argentina
Tel: (54 11) 4584 3142
edudevices@gmail.com
www.edudevices.com.ar
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
3
Control de Versiones:
1.0 Editada en Octubre de 2008.
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
4
1.0 Introduccin.
El propsito de este manual es describir el funcionamiento del sistema EDUKIT08
junto con la placa de personalizacin PLUGIN_AW agregada al sistema bsico
y dar instrucciones paso a paso que permitan el uso de este potente sistema didctico /
entrenamiento para la familia de microcontroladores HC9S08 de Freescale Semiconductor.
El sistema EDUKIT08 es una herramienta didctica y de entrenamiento diseada para
guiar al alumno en forma terico prctica en el aprendizaje de los distintos mdulos
que constituyen los microcontroladores de 8 bits FLASH HC908 / HC9S08 y la familia
Flexis de 8 / 32 Bits de Freescale Semiconductor.
El sistema cuenta con todo el hardware necesario para realizar numerosas prcticas de
los mdulos tpicos de los HC908 / HC9S08 como display LCD inteligente, display de 4
dgitos LED 7 segmentos, sensor de temperatura, puertos UARTs (RS-232C / RS-485),
puerto Infrarrojo (IRDA)(solo utilizable en la familia HC908), pulsadores, leds de uso
general, led de potencia para PWM, etc. Tambin incorpora un circuito que permite
Emulacin en Tiempo Real por medio de una PC y un entorno integrado de trabajo (IDE)
como el WinIDE y el CodeWarrior (el circuito incorporado es para la familia HC908).
El KIT viene provisto con un curso terico muy completo y con numerosos ejercicios
prcticos para cada uno de los mdulos.
El KIT contiene todo el hardware y software necesario para desarrollar una aplicacin
completa, incluyendo, Emulacin En Circuito en Tiempo Real, Simulacin Pura sin
circuito (CodeWarrior), Edicin y Compilacin de Cdigo y Programacin de los
dispositivos usados como ejemplos para las familias HC908 / HC9S08 / HC9S08
V1 ColdFire Flexis, segn la placa de personalizacin utilizada.
Aplicaciones
KIT didctico / entrenamiento para prcticas de los mdulos tpicos del HC908 /
HC9S08 y de la serie Flexis con hardware asociado a cada mdulo.
Emulacin en sistema en Tiempo Real, Simulacin, Grabacin del MCU.
Prcticas en Entornos de trabajo integrados (IDE) WinIDE y CodeWarrior.
Aprendizaje guiado terico prctico.
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
5
2.0 Caractersticas Generales.
Detalle de Caractersticas
Placa Motherboard que contiene el siguiente hardware:
- Display inteligente LCD 16 caracteres x 2 lneas con backlight, y control de
Contraste para escritura a 8 y 4 bits de datos.
- Display LED de 4 dgitos de 7 segmentos para escritura por multiplexacin
de lneas.
- Puerto Serial UART RS-232C para prcticas de comunicacin con distintos
dispositivos externos (PCs, Modems, Impresoras, otros EDUKIT08, etc.).
- Puerto Serial UART RS-232C / RS-485 / Infrarrojo (IRDA), seleccionable por
medio de Jumpers, para comunicaciones en red, inalmbricas, etc.
- 4 Pulsadores para funcin KBI (Keyboard Interrupt) y usos grales.
- Diodos LEDs de usos grales.
- Dispositivo de memoria externo (24LC256) para prcticas de comunicaciones I2C.
- MCU especial para emular comunicaciones SPI y generacin de seales para la
prctica de funcin ICAP (Input Capture Captura de Pulsos).
- Diodo LED de potencia para la prctica de control por PWM.
- Sensor de Temperatura y Resistor ajustable Preset para prctica conversor A/D.
- Puertos I/O de propsitos grales. disponibles mediante jumpers.
- Futura expansin para comunicaciones inalmbricas por RF (ZigBee).
- Futuras placas de expansin para perifricos diversos por medio de los puertos I/O
de Propsitos Grales (CN3 / CN4).
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
6
Sistema actualizable por placas PLUG_IN para trabajar con HC908 y
HC9S08, y familia FLEXIS:
- Placa PLUGIN_AP con MC68HC908AP32 para HC908.
- Placa PLUGIN_AW con MC9S08AW60 para HC9S08.
- Placa PLUGIN_FLX08 con MC9S08AC128 para HC9S08 Flexis.
- Placa PLUGIN_FLXV1 con MCF51AC256A para ColdFire V1Flexis.
Caractersticas para la familia HC908 (con la placa PLUGIN_AP instalada):
Circuito incorporado para Emulacin en Tiempo Real con una PC o Notebook
y un entorno integrado de trabajo (IDE) (para la familia HC908).
Conexin con la PC por medio de Puerto Serial RS-232C (COM xx) o por medio
de un Puerto Serial Universal USB (Universal Serial Bus) que permite utilizar
PCs o Notebooks nuevas o viejas con el circuito para emulacin incorporado (solo para
la familia HC908).
Alimentacin del sistema EDUKIT08 por medio de fuentes externas de
corriente continua o corriente alterna (DC o AC desde 7 a 16V) y adems puede
ser alimentado por medio del puerto USB 2.0 que disponen las PCs o Notebooks.
(conector USB tipo B incorporado en la placa Motherboard del EDUKIT08)
Edicin con WinIDE (editor de Texto)(Entorno Integrado de P & E).
Ensamblado con CASM08 compilador assembler.
Programacin de la memoria FLASH con el PROG08SZ y mltiples
Algoritmos de programacin ".08p".
Carga de cdigo en memoria FLASH para uso de depuracin.
Emulacin en Tiempo Real y depuracin con ICD08SZ, incluyendo:
Carga de cdigo en RAM.
Ejecucin "Real -Time" en RAM o FLASH (grabada con PROG08SZ)
Un "hardware breakpoint" en FLASH (en cualquier posicin flash)
Modos de ejecucin Paso a Paso, Multi-paso, y continuo.
Depuracin en "Real - Time" sin demoras o instrucciones extras.
Documentacin de Ayuda "On-Line" para todo el software.
Software integrado dentro del entorno WinIDE, permite acceso inmediato a
las aplicaciones.
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
7
Habilitacin / Deshabilitacin de configuraciones especiales del pin IRQ,
Reset, Oscillator Out (OSC1), y otras seales por medio de mltiples jumpers.
Seleccin de dos (2) diferentes Osciladores:
OSC Externo = 20.000 MHz.
OSC Placa PLUG_IN = 32,768 KHz para uso con PLL.
Visualizacin en pantalla de registros del CPU, ventana de memoria, variables
elegidas por el usuario, etc.
Actualizaciones frecuentes de prcticas (rutinas) para los mdulos de las
familias HC908 / HC9S08 / Flexis desde el Sitio Web de Electrocomponentes.
EDUKIT08 es 100% compatible con entornos integrados de desarrollo como el
WinIDE de P&E Microcomputer Systems, CodeWarrior 5.0 / 5.1 / 6.x de
Freescale Semiconductor, ICC08 de Imagecraft, Cosmic Compiler, etc.
Versiones gratuitas de los Entornos Integrados Codewarrior incorporadas en el KIT.
El EDUKIT08 viene completo para trabajar con la familia HC908, actualizable
para HC9S08 / Serie Flexis por medio de placas PLUG_IN y CD ROMs con
manuales y cursos correspondientes y otras actualizaciones por venir.
Caractersticas para la familia HC9S08 (con la placa PLUGIN_AW instalada):
Conector BDM de 6 pines incorporado en la placa para trabajar con la familia
HC9S08 / Serie Flexis y herramientas BDM como el R(S)_POD y el
USBMULTILINKBDME.
Verdadera Emulacin en Tiempo Real gracias al mdulo BDM + On-Chip ICE
incorporados en los MCUs HC9S08 lo que permite utilizar Breakpoints,
Watchpoints y mltiples condicionales de emulacin.
Alimentacin del sistema EDUKIT08 por medio de fuentes externas de
corriente continua o corriente alterna (DC o AC desde 7 a 16V) y adems puede
ser alimentado por medio del puerto USB 2.0 que disponen las PCs o Notebooks.
(cuando se utiliza la herramienta de desarrollo R(S)_POD configurada para
alimentar el circuito externo)
Habilitacin / Deshabilitacin de configuraciones especiales del pin IRQ,
Reset, Oscillator Out (OSC1), y otras seales por medio de mltiples jumpers.
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
8
Seleccin de tres (3) diferentes Osciladores:
OSC Externo = 20.000 MHz.
OSC Placa PLUGIN_AW = 32,768 KHz para uso con FLL (Ajustable).
OSC Interno en MCU AW60 para uso con FLL (Ajustable).
Versiones gratuitas de los Entornos Integrados Codewarrior incorporadas en el KIT.
EDUKIT08 es 100% compatible con entornos integrados de desarrollo como el
CodeWarrior 5.1 / 6.0 / 6.1 / 6.2 de Freescale Semiconductor, Cosmic Compiler, etc.
Homologado por Freescale Semiconductor Third Party Tools Sector.
3.0 Contenido del Kit (PLUGIN_AW).
El kit de la placa de personalizacin PLUGIN_AW para el sistema EDUKIT08 viene
provisto de los siguientes elementos:
Placa PLUGIN_AW para trabajar con Familia HC9S08.
CD ROM de Instalacin HC9S08 (Manual de Usuario, Drivers, Bibliografa, etc.)
CD ROM demostracin de CodeWarrior 6.2
Listado de Materiales.
Accesorios no incluidos
Fuente de Alimentacin 220Vca / 12V @ 500 mA.
Sistema de desarrollo (BDM) de bajo costo para HC9S08 / RS08 / Serie Flexis
HC9S08 / V1 ColdFire R(S)_POD.
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
9
4.0 Especificaciones Generales.
El sistema didctico EDUKIT08 puede ser alimentado tanto en forma externa por una
fuente de alimentacin de 9 a 16 V de Corriente Continua (cualquier polaridad) o de
Corriente Alterna o tambin puede ser alimentado por medio del Puerto Serial Universal
USB 2.0 que poseen muchas PCs o Notebooks hoy en da utilizando para ello el sistema
de desarrollo R(S)_POD configurado para alimentar el circuito externo bajo desarrollo.
Tener especial cuidado de no conectar ambas alternativas de alimentacin en forma
SIMULTANEA, ya que de hacerlo podran producirse sobrecargas de corriente en el
puerto USB 2.0 que podran daarlo en forma irreversible.
Tener en cuenta cuando se usa el Puerto Serial Universal USB 2.0, NO superar la
corriente Mxima especificada para el mismo, que segn la norma es de 500 mA.
Caractersticas Elctricas.
Parmetro Smbolo Min. Tpico Max. Unidad
Tensin de
alimentacin
Externa
Vcc 7 12 16 V
Tensin de
alimentacin
Interna (USB)
VDD 4,5V 5V V
Corriente
pico
I - - 500 mA
Corriente
promedio
Iav - - 150 mA
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
10
Diagrama en Bloques de los sistemas EDUKIT08 + BDM + PC.
Diagrama en Bloques de las distintas conexiones entre el sistema EDUKIT08
personalizado con la placa PLUGIN_AW, la herramienta de desarrollo BDM
R(S)_POD o USBMULTILINKBDME y la PC con el entorno IDE CodeWarrior.
Placa principal
( Motherboard )
EDUKIT08
USB
PC / Notebook
CodeWarrior
Fuente
Placa Personalizacin
PLUGIN_AW
Solo usar con
USBMULTILINK o
R(S)_POD en modo
Sin alimentacin
al circuito externo.
BDM R(S)_POD /
USBMULTILINKBDME
Conector
BDM 6 pines
CN 10
CN5
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
11
Interfaces de Conexin.
El sistema EDUKIT08 posee una serie de conectores que lo vinculan con el medio exterior
para llevar a cabo mltiples prcticas con diversos perifricos y para establecer un medio
de comunicacin Sistema PC que permite depurar los programas implementados en
dicho sistema bajo un Entorno Integrado de Trabajo (IDE) como lo es el CodeWarrior de
Freescale Semiconductor, que es el adecuado para trabajar con la familia HC9S08.
Ubicacin de Conectores.
Detalle Conector de Alimentacin CN5:
Soporta cualquier Polaridad!!
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
12
Asignacin de Conectores.
Asignacin de Pines conector BDM 6 Pines CN 10.
Nmero de Pin
Descripcin
1
BKGD comunicacin serial a un
solo hilo entre BDM / MCU
2
GND (masa del sistema)
3
Sin conexin (no se usa)
4
Reset (control pin de Reset del
MCU por medio del BDM)
5
Sin conexin (no se usa)
6
+ Vdd (alimentacin MCU +
sistema EDUKIT08) (+5V)
Disposicin fsica de pines
en el conector CN 10 del
sistema EDUKIT08
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
13
Detalles de montaje Placas PLUGIN.
El sistema didctico permite ser actualizado por medio de placas de personalizacin
removibles denominadas Placas PLUGIN. Esta personalizacin permite al usuario
trabajar con distintas familias de microcontroladores de la lnea Freescale Semiconductor
desde 8 Bits con las familias HC908 / HC9S08, hasta los 8 / 32 Bits de la Serie Flexis.
Existe una placa PLUGIN para cada una de ellas y el usuario solo tiene que sustituir una
por otra de ellas de la placa principal Motherboard para, de esta forma, obtener las
funciones de la familia elegida.
Las placas Motherboard y PLUGIN han sido diseadas para evitar inversiones en la
conexin, se sugiere observar atentamente las posiciones mecnicas de los conectores
al remover o insertar una nueva placa de personalizacin al sistema.
rea Placa PLUG_IN sin
la placa de personalizacin
Marca de Referencia (debe
coincidir con la placa PLUG_IN)
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
14
Precaucin:
Cuando se proceda a sustituir una placa de personalizacin PLUG_IN por otra, tener
presente de desconectar toda fuente de energa a la misma, como pueden ser la fuente de
alimentacin externa, el cable Serial USB tipo A-B provisto con el kit, o el arns BDM
de 6 pines del R(S)_POD.
Mantener las placas de personalizacin que no se utilicen dentro de sus respectivas cajas o
en lugares libres de polvo, grasa, agentes abrasivos, etc., evitando doblar o someter a
torsiones diversas las tiras de pines que constituyen las conexiones principales entre la
placa Motherboard y estas.
Placa PLUG_IN de
personalizacin
Placa Principal
MotherBoard
Marcas de posicin
rectangulares
(deben coincidir)
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
15
5.0 Puertos de Comunicacin del EDUKIT08 con la PC.
En la placa principal del sistema existen 2 puertos de comunicaciones bajo protocolo
MON08 que hacen muy flexible la conexin Herramienta PC con todo tipo de
mquinas, viejas o de ltima generacin. Estos puertos SOLO son utilizados con la
familia HC908 (placa PLUGIN_AP instalada) que emplea el protocolo MON08 y
no tienen utilidad con la familia HC9S08 (placa PLUGIN_AW instalada), ya que la
comunicacin con la herramienta de desarrollo se efecta por medio del conector
CN10 ubicado en la placa Motherboard del sistema didctico EDUKIT08.
Puerto Serial COM RS-232C (CN2) NO UTILIZADO con HC9S08.
Puerto Serial Universal USB (CN1) NO UTILIZADO con HC9S08.
6.0 Hardware del Sistema.
El sistema didctico EDUKIT08 bsico est compuesto por una placa principal
MotherBoard y una placa PLUGIN_AP que permite trabajar con la familia HC908.
La placa PLUGIN_AW (incluida en el presente kit) permite trabajar con la familia
HC9S08. Otras placas PLUGIN estarn disponibles en el futuro, as como placas de
funciones especiales que otorgarn al sistema una mayor flexibilidad de trabajo y una
permanente actualizacin para trabajar en el mundo de los MCUs de 8 Bits y 32 Bits.
PLACA PLUGIN_AP (para prcticas flia. HC908):
Utiliza MC908AP32CFBE (QFP 44).
Seleccin en placa PLUGIN de xtal. 32,768 Khz (solo modo usuario para TBM / PLL)
u oscilador externo de 20,000 Mhz (utilizado para el MODO MONITOR ALTA
TENSIN).
Baud Rate de 19.200 BPS aprox. (FBUS = 5 MHZ ) en modo monitor.
Filtro PLL en la placa / alimentacin referencia A/D y otros en la placa.
+ VDD = 5V ---- Toda la placa se alimenta con +5V.
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
16
PLACA PLUGIN_AW (para prcticas flia. HC9S08):
Utiliza MC9S08AW60CFUE (QFP 64).
Seleccin en placa PLUGIN de xtal 32,768 KHz / oscilador externo / oscilador
interno (como posee mdulo BDM integrado puede usarse cualquiera de estas fuentes
de clock).
+VDD = 5V --- Toda la placa se alimenta con +5V.
FBUS muy flexible, no es importante para el BDM.
Todas las alimentaciones de referencia resueltas en la placa.
Depuracin de cdigo por conector BDM de 6 pines en Motherboard (CN10),
para conectar herramientas de desarrollo de bajo costo como el R(S)_POD o el
USBMULTILINKBDME en forma Externa (se proveen aparte).
6.1 Asignacin de Jumpers.
Jumper JP1.
Ubicacin: Placa PLUGIN_AW
Funcin: Seleccin de Fuente de Oscilador de Referencia para el MCU.
El sistema posee dos (2) fuentes de osciladores externos para que el usuario disponga de
alguna de ellas (una u otra) en los distintos modos de funcionamiento.
Posicin 1-2 ----- Oscilador a Xtal de 32,768 Khz conectado entre los pines OSC1 y
OSC2 del MCU para usar con mdulo FLL. Este Xtal se usar
como referencia de clock cuando se habilite el FLL tanto cuando se
utiliza la herramienta BDM para la emulacin en tiempo real o sin ella.
Posicin 2-3 ----- Oscilador a Xtal Externo de 20 Mhz conectado al pin OSC1 del MCU.
Esta posicin se utilizar solo si NO se habilita el mdulo FLL,
obtenindose una frecuencia mxima de Bus (FBUS) de 10 Mhz
Jumpers JP2A / JP2B / JP2C.
Ubicacin: Placa Principal EDUKIT08.
Funcin: Seleccin del tipo de puerto utilizado para la emulacin con la PC (MON08).
No se utiliza con los HC9S08!! No importan las posiciones de los JUMPERS.
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
17
Jumpers JP3 / JP5 / JP6.
Ubicacin: Placa Principal EDUKIT08.
Funcin: Seleccin del Modo de funcionamiento del sistema didctico.
El sistema EDUKIT08 est preparado para soportar las familias de MCUs HC908,
HC9S08, HC9S08 Flexis, V1 ColdFire Flexis. Para ello dispone de jumpers de
configuracin que permiten distintos modos de funcionamiento en las familias
mencionadas.
Configuraciones familia HC908.
Cuando se ha insertado la placa PLUGIN_AP en la placa principal EDUKIT08 el
sistema queda preparado para trabajar con la familia HC908, en especial con el
dispositivo MC908AP32CFBE integrado en dicha placa.
La familia HC908 dispone de dos modos de funcionamiento, Modo Monitor y Modo
Usuario.
Modo Monitor Alta Tensin en familia HC908:
Jumper JP3 ---- Posicin 1-2
Jumper JP5 ---- Posicin Cerrado.
Jumper JP6 ---- Posicin Cerrado.
Modo Usuario en la familia HC908:
Jumper JP3 ---- Posicin 2-3
Jumper JP5 ---- Posicin Abierto.
Jumper JP6 ---- Posicin Abierto.
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
18
Configuracin en la familia HC9S08 / HC9S08 Flexis / V1 ColdFire Flexis.
Cuando se insertan las placas PLUGIN_AW, PLUGIN_FLX08 o
PLUGIN_FLXV1, el sistema queda preparado para trabajar con la familia HC9S08 (en
especial el MC9S08AW60), la familia HC9S08 Flexis o la familia V1 ColdFire
Flexis respectivamente.
Todas estas familias de MCUs poseen su propio mdulo BDM integrado en el chip,
haciendo innecesario el uso del BDM MON08 incorporado en el sistema
EDUKIT08.
Adems, los MCUs de estas familias funcionan permanentemente en modo normal o
modo usuario y por medio de comandos especiales pueden ingresar al modo
background (modo de depuracin) para obtener una Emulacin en Tiempo Real.
Para ello el sistema didctico cuenta con el conector CN10 (BDM HC9S08) que
permite vincular al mismo con herramientas de emulacin BDM como el R(S)_POD o
el USBMULTILINKBDME que se proveen en forma separada.
La configuracin de jumpers deber ser la siguiente:
Modo Usuario / Modo Background en HC9S08 / HC9S08 Flexis / V1 Coldfire:
Jumper JP3 ---- Posicin 2-3
Jumper JP5 ---- Posicin Abierto.
Jumper JP6 ---- Posicin Abierto.
Jumper JP4.
Ubicacin: Placa Principal EDUKIT08.
Funcin: Seleccin tensin de trabajo pin RESET de los HC908
(Vreset = +Vhigh o +VDD).
El sistema EDUKIT08 permite configurar la tensin de trabajo del pin RESET cuando
se trabaja con la familia HC908. Cuando se utiliza la placa de personalizacin
PLUGIN_AW para trabajar con los HC9S08, el jumper JP4 NO tiene funcin alguna
siempre y cuando se configuren los jumpers JP5 y JP6 segn lo indicado para esta
familia.
JP4 --- NO importa la posicin con la familia HC9S08!!
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
19
Jumpers JP7 / JP8 / JP9 / JP10 / JP11 / JP12 / JP13 / JP14.
Ubicacin: Placa Principal EDUKIT08.
Funcin: Habilitacin de Puertos I/O Externos en CN3 / CN4.
El sistema EDUKIT08 dispone de hasta 8 lneas de Puertos I/O Externas para uso
generales del usuario. En los Conectores CN3 / CN4 se dispone de ellas, adems de
+VDD y GND, otorgndole mayor flexibilidad a las aplicaciones del usuario o disponer
de futuras placas para funciones especiales (mdulo Zigbee, mdulo TouchPad, etc.).
Jumpers JP7 a JP14 ----- en Posicin Cerrado ---- Puertos I/O Externos Deshabilitados.
Pulsadores SW1 a SW4 para funciones KBI (keyboard interrupt) y funcin SPI Habilitada
dentro del sistema (las 8 lneas I/O estn compartidas con estas funciones).
Jumpers JP7 a JP14 ----- en Posicin Abierto ---- Puertos I/O Externos Habilitados.
Pulsadores SW1 a SW4 y Funcin SPI dentro del sistema Deshabilitadas (las lneas I/O
estn disponible en forma exclusiva en CN3 / CN4).
Jumpers JP15 / JP16 / JP17 / JP18 / JP19 / JP20.
Ubicacin: Placa Principal EDUKIT08.
Funcin: Habilitacin / Deshabilitacin DISPLAY LCD / DISPLAY 7 segmentos LEDS.
El sistema EDUKIT08 dispone de dos tipos de displays para realizar distintas
experiencias prcticas, ambos displays comparten lneas de datos y de control por lo que
NO ES POSIBLE UTILIZARLOS EN FORMA SIMULTANEA. Para ello se dispone de
una serie de jumpers que habilitan o deshabilitan a cada uno en forma independiente.
Uso DISPLAY LCD LCD1 (16 caracteres x 2 lneas):
JP15 --- Posicin Cerrado ---- +VDD en LCD habilitado (LCD alimentado).
JP16 --- Posicin Cerrado ---- BackLight (luz de fondo) habilitada para ser controlada
por el sistema.
JP17 a JP20 ---- Posicin Abierto ----- Displays 7 segmentos DSP1 / DSP4
deshabilitado.
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
20
Uso DISPLAY 7 segmentos LEDS (DSP1 / DSP4):
JP15 --- Posicin Abierto ---- +VDD en LCD Deshabilitado (LCD sin alimentacin).
JP16 --- Posicin Abierto ---- BackLight (luz de fondo) Deshabilitada no puede ser
controlada por el sistema.
JP17 a JP20 ---- Posicin Cerrado ----- Displays 7 segmentos DSP1 / DSP4 habilitado.
Jumper JP21.
Ubicacin: Placa Principal EDUKIT08.
Funcin: Seleccin entrada analgica para la prctica con el mdulo A/D.
Para realizar las prcticas con el mdulo A/D de los HC908 / HC9S08 / Serie Flexis
S08/V1 ColdFire, tanto en 8 como en 10 bits de resolucin (12 bits para la Serie Flexis), se
dispone de dos fuentes de entradas analgicas. Una de ellas es un simple Preset (PR2) que
permite variar la tensin de entrada al mdulo A/D (Vin) entre +VDD y GND.
La otra entrada es un sensor de temperatura del tipo LM335 (U7) que entrega una tensin
proporcional a la temperatura ambiente medida.
Posicin 1-2 ------- Sensor de Temperatura LM335 (U7) habilitado como Vin para el A/D.
Posicin 2-3 ------- Preset PR2 habilitado para variar Vin entre +VDD y GND.
Jumper JP22.
Ubicacin: Placa Principal EDUKIT08.
Funcin: Seleccin funciones ICAP / SPI incluidas en el sistema.
El sistema EDUKIT08 incluye un microcontrolador MC908QY4ACPE que permite
realizar las prcticas de los mdulos ICAP (Input Capture) y SPI (Serial Peripheral
Interface) con el MCU de la placa PLUGIN elegida. Las funciones ICAP y SPI pueden
ser seleccionadas por medio del jumper JP22 de la siguiente forma:
Posicin 1-2 ------ Funcin ICAP habilitada.
El MC908QY4ACPE generar formas de ondas rectangulares de distintas frecuencias y
ciclos de trabajos segn lo seleccionado por el pulsador SW6 ICAP y lo indicar por
medio de los LEDs LD7 a LD9 (7 opciones distintas).
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
21
Posicin 2-3 ------ Funcin SPI habilitada.
El MC908QY4ACPE estar preparado para realizar una comunicacin SPI como
dispositivo Esclavo (Slave), mientras que el MCU del sistema didctico tomar el rol de
dispositivo Amo (Master).
Jumpers JP23A / JP23B / JP23C / JP23D.
Ubicacin: Placa Principal EDUKIT08.
Funcin: Seleccin NODO AMO / ESCLAVO en una RED RS-485.
El sistema EDUKIT08 viene equipado para realizar una comunicacin serial de nivel
elctrico RS-485 a 4 hilos, utilizando el mdulo SCI2 (UART) o IRSCI (2do. mdulo
SCI o Infrarrojo). La comunicacin puede ser FULL DUPLEX contra otro dispositivo
RS-485 terminal (dispositivo contra dispositivo, sin direccin de nodo) o bien formar una
red de nodos en topologa BUS con otros sistemas EDUKIT08.
En el modo terminal, 2 (dos) sistemas EDUKIT08 pueden comunicarse entre s, como
lo haran dos puertos seriales RS-232C, o sea, simplemente cruzando las conexiones de
las borneras TX y RX contra las del otro sistema, tal como se muestra en la figura (la
comunicacin RS-485 estar disponible en las borneras CN8_IN y CN9_IN de cada
placa).
En el modo Red de Nodos en topologa BUS, 2 o ms sistemas EDUKIT08 (hasta 32
nodos) podrn comunicarse entre s formando una red de nodos en topologa BUS a 4
hilos en configuracin AMO / ESCLAVO (Master / Slave) segn se muestra en la figura
(Borneras CN8_IN, CN8_OUT, CN9_IN, CN9_OUT)
Recordar que en los conectores CN8 / CN9 de cada placa EDUKIT08 que compone la red
se debe respetar la polaridad de conexin, o sea la lnea del BUS que se conecta al borne
A debe conectarse a todos los bornes A y la lnea del BUS que se conecta al B a
todos los B, sin producir cruces (inversiones de polaridad).
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
22
DETALLE DE CONEXIN:
CN8_OUT A ------ CN8_IN A
CN8_OUT B ------ CN8_IN B
CN9_OUT A ------ CN9_IN A
CN9_OUT B ------ CN9_IN B
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
23
Modo Terminal:
JP23A / JP23B / JP23C / JP23D ---- Posicin 1-2 (Modo Master).
Modo Red de Nodos en topologa BUS:
JP23A / JP23B / JP23C / JP23D ---- Posicin 1-2 (Nodo Master).
JP23A / JP23B / JP23C / JP23D ---- Posicin 2-3 (Nodos Slave).
Jumpers JP24A / JP24B / JP25A / JP25B.
Ubicacin: Placa Principal EDUKIT08.
Funcin: Seleccin de Resistores de terminacin para una RED RS-485.
El sistema didctico EDUKIT08 est provisto de jumpers para habilitar / deshabilitar
resistores de terminacin para ecualizar impedancias de la lnea de transmisin utilizada
en una red en topologa BUS. Como es tpico en una topologa BUS los cables utilizados
en la red deben Entrar (CN8_IN / CN9_IN) y Salir (CN8_OUT / CN9_OUT) de cada
uno de los nodos esclavos (Slaves) de la red, con la excepcin del Nodo Master del que
solo salen cables y del ltimo nodo esclavo del que solo entran cables. De esta
forma, todos los nodos de la red (Master y todos los esclavos menos el ltimo) debern
configurarse sin resistores de terminacin (Fail Safe Termination). La excepcin se
establece para el ltimo Nodo fsico que compone la red en topologa BUS que se le debe
habilitar dicha terminacin para mantener ecualizada la lnea de transmisin.
JP24A / JP24B / JP25A / JP25B -- Posicin Cerrado ---- R de terminacin Activa.
JP24A / JP24B / JP25A / JP25B -- Posicin Abierto --- Sin R de terminacin.
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
24
Jumpers JP26A / JP26B.
Ubicacin: Placa Principal EDUKIT08.
Funcin: Seleccin de Modos de funcionamiento del puerto Serial SCI2.
Se dispone de jumpers para seleccionar alguno de los tres (3) modos de funcionamiento
distintos del Puerto Serial SCI2 disponible para el usuario en el sistema. Los modos de
funcionamiento del puerto Serial SCI2 son solo en el nivel fsico del mismo, esto quiere
decir que no se producen modificaciones de niveles de lgica o protocolos, sino en el
aspecto fsico de cmo se realiza la comunicacin.
Modos de funcionamiento disponibles:
1) Puerto Serial (UART) con nivel RS-232C (CN7 DB9 Hembra).
2) Puerto Serial (UART) con nivel RS-485 para usar en las modalidades anteriormente
descriptas (CN8_IN / CN8_OUT / CN9_IN / CN9_OUT).
3) Puerto Serial Infrarrojo (IrDA - SIR) para comunicaciones inalmbricas de hasta
1 mts y hasta 115,2 KBPS. El mdulo de Demodulacin / Modulacin IrDA solo est
disponible en el MCU MC908AP32 contenido en la placa PLUGIN_AP, por lo que
el usuario deber implementar esta funcionalidad por SOFT para obtener una
comunicacin infrarroja.
JP26A / JP26B ---- en Posicin 1 ----- Puerto Serial con nivel RS-232C.
JP26A / JP26B ---- en Posicin 2 ----- Puerto Serial con nivel RS-485.
JP26A / JP26B ---- en Posicin 3 ----- Puerto Serial Infrarrojo IRDA SIR.
6.2 Asignacin de Lneas en el sistema EDUKIT08.
Para obtener las mximas prestaciones del sistema didctico EDUKIT08, se han
configurado los distintas lneas de los perifricos contenidos en la placa principal
Motherboard, las placas PLUG_IN y los distintos microcontroladores contenidos en
cada una de ellas para obtener la mxima independencia de funcionamiento entre ellos.
Es por este motivo que el usuario notar que en algunos casos se ha optado por utilizar un
puerto I/O incompleto en lugar de uno completo, esto se debe a que existen funciones
que se superponen en las lneas de estos y con ello no se podra obtener el mximo de
independencia de funcionamiento de los distintos perifricos que componen la placa.
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
25
CONTROL DE DISPLAY LCD INTELIGENTE (LCD1).
Bus de Datos:
Lnea del MCU
HC9S08
Placa PLUGIN_AW Lnea Perifrico Configurar como:
PTB0 a PTB3 DT0 a DT3 D0 a D3 Puerto Output
PTB4 a PTB7 DT4 a DT7 D4 a D7 Puerto output.
Lneas de Control:
Lnea del MCU
HC9S08
Placa PLUGIN_AW Lnea Perifrico Configurar como:
PTA7 CTRL1 E negado Puerto Output
PTA6 CTRL2 RS negado Puerto Output
PTC4 CTRL3 R/W Puerto Output
PTC6 CTRL4 Backlight (activo
alto)
Puerto Output
CONTROL DISPLAY 7 SEGMENTOS LEDs 4 DGITOS (DSP1 a DSP4).
Bus de datos:
Lnea del MCU
HC9S08
Placa PLUGIN_AW Lnea Perifrico Configurar como:
PTB0 DT0 Segmento a. puerto output
PTB1 DT1 Segmento b. puerto output
PTB2 DT2 Segmento c. puerto output
PTB3 DT3 Segmento d. puerto output
PTB4 DT4 Segmento e. puerto output
PTB5 DT5 Segmento f. puerto output
PTB6 DT6 Segmento g. puerto output
PTB7 DT7 Segmento D.P. puerto output
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
26
Lneas de Control:
Lnea del MCU
HC9S08
Placa PLUGIN_AW Lnea Perifrico Configurar como:
PTA7 CTRL1 DSP1 (Activo alto). puerto output
PTA6 CTRL2 DSP2 (Activo alto). puerto output
PTC4 CTRL3 DSP3 (Activo alto). puerto output
PTC6 CTRL4 DSP4 (Activo alto). puerto output
JUMPERS: JP17 a JP20 ----- habilitan / deshabilitan ---- DISPLAY 7 Segmentos.
JP15 ----- DISPLAY LCD on / off (VDD del LCD on / off)
JP16 ------ Backlight on / off (independientemente de CTRL4).
Para el LCD inteligente se pueden utilizar rutinas de manejo a 8 BITS y a 4 BITS del Bus
de datos.
En el DISPLAY 7 Segmentos se puede utilizar tambin el punto decimal que servir para
distintas aplicaciones. Manejar este Display por multiplexacin de dgitos.
Backlight del LCD del tipo ON / OFF controlable por lnea de control CTRL4 (60 mA de
consumo).
LED INDICADORES DE USO GENERAL Y OTROS.
Lnea del MCU
HC9S08
Placa PLUGIN_AW Lnea Perifrico Configurar como:
PTA4 LD1 LED 1 uso general
(activo bajo)
puerto output
PTA5 LD2 LED 2 uso general
(activo alto)
puerto output
PTC1 SDA
LED 10 uso general
(activo bajo) / pin SDA
del I2C (input/output)
Indicador de actividad en
SDA para comunicacin
I2C
Puerto Output para
uso general e Input /
Output para I2C
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
27
Nmero de LED Nombre funcin
LD3 SIST. ACTIVO Se enciende cuando el sistema est activo (Modo
Monitor / Modo Usuario Activos) (sistema
energizado, +VDD / +VHIGH, etc.)
LD4 PWM Led de alta potencia utilizado para la prctica de
PWM (Modulacin por Ancho de Pulso)
LD5 TX_RS485 Muestra actividad en lnea TX de la RS-485
LD6 RX_RS485 Muestra actividad en lnea RX de la RS-485
LD7/LD8/LD9 Modos ICAP Indican las 7 configuraciones ICAP disponibles
LD11 ACT. MON08 Muestra actividad durante la comunicacin
MON08 utilizada en la familia HC908.
No est activo con la familia HC9S08.
PULSADORES PARA KBI y USO GENERAL.
Lnea del MCU
HC9S08
Placa PLUGIN_AW Lnea Perifrico Configurar como:
PTG4 KB1 SW1 pulsador uso
p/ KBI o gral.
puerto input.
PTG3 KB2 SW2 pulsador uso
p/ KBI o gral.
puerto input.
PTD3 KB3 SW3 pulsador uso
p/ KBI o gral.
puerto input.
PTD2 KB4 SW4 pulsador uso
p/ KBI o gral.
puerto input.
Nmero de
Pulsador
Nombre Funcin
SW5 RESET Pulsador de RESET general del sistema
SW6 ICAP Pulsador de seleccin del nmero de
configuracin ICAP elegida.
SW7 IRQ Pulsador de IRQ Externa (Buffered) (aislada
de la alta tensin durante el modo monitor en
los HC908) Funcin normal en los HC9S08.
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
28
MODO MONITOR MON08.
NO DISPONIBLE EN LA PLACA PLUGIN_AW (HC9S08).
VREFH/L, VDDA / VSSA / VDD / VSS ----- todos a +VDD o VSS segn
corresponda.
OSC1 ---- oscilador buffereado de 20.000 MHZ ---- FBUS = OSC / 2 = 10 MHZ
Como mximo si registro FDIV = 1 y FBUS = 1,25 MHZ si FDIV = 8.
IRQ1 ----- TENSION NORMAL (+5V), disponible para usar en forma externa o por
medio de un Pulsador (SW7) separada por un buffer conversor de nivel
(IRQ_B). Test point disponibles TP14 (+8V / 0V) y TP15 (+5V / 0V).
RESET ----- TENSION NORMAL (+5V). Pulsador de Reset externo SW5.
MODULO TIMER PWM:
Lnea del MCU
HC9S08
Placa PLUGIN_AW Lnea Perifrico Configurar como:
PTF0 (TPM1 CH2) PWM PWM Puerto Output
PWM unbuffered /
Buffered.
Maneja un LED de alto rendimiento LD4 con Driver de corriente a transistor.
La intensidad ir cambiando segn el ciclo de servicio del PWM
Test Point ----- TP2 ---- Seal PWM al LED LD4.
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
29
MODULO TIMER ICAP:
Lnea del MCU
HC9S08
Placa PLUGIN_AW Lnea Perifrico Configurar como:
PTF5 (TPM2 CH1) ICAP ICAP (U12) Puerto INPUT
Input Capture.
La seal para el ICAP ser generada por el MC908QY4ACPE (U12) con distintos anchos
de pulso y frecuencias seleccionados por medio del pulsador SW6 y leds LD7 a LD9 que
se dispone en el entorno de U12.
La generacin de la seal para el ICAP se selecciona desde el JUMPER JP22 (ver
circuito) y se ejecuta esa funcin como prioritaria. Si se selecciona SPI con JP22, solo se
ejecuta esa funcin como prioritaria.
Test Point ------ TP7 ----- Seales rectangulares con diferentes frecuencias
y ciclos de servicio (Duty Cycle).
Seal de ICAP:
El microcontrolador U12 generar una seal rectangular por PWM a los efectos que el
microcontrolador AW pueda medir su frecuencia y ancho de pulso por medio del mdulo
ICAP. Existen 8 modalidades que proveen distintas frecuencia y ancho de pulso, a saber:
Modo 0 => Frecuencia 200Hz Duty cycle 25%
Modo 1 => Frecuencia 200Hz Duty cycle 50%
Modo 2 => Frecuencia 200Hz Duty cycle 75%
Modo 3 => Frecuencia 400Hz Duty cycle 25%
Modo 4 => Frecuencia 400Hz Duty cycle 50%
Modo 5 => Frecuencia 1KHz Duty cycle 15%
Modo 6 => Frecuencia 1KHz Duty cycle 40%
Modo 7 => Frecuencia 1KHz Duty cycle 60%
LD9 LD8 LD7 MODO
OFF OFF OFF Modo 0
OFF OFF ON Modo 1
OFF ON OFF Modo 2
OFF ON ON Modo 3
ON OFF OFF Modo 4
ON OFF ON Modo 5
ON ON OFF Modo 6
ON ON ON Modo 7
LD7
LD8
LD9
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
30
Las modalidades de PWM pueden variarse de 2 maneras:
a- Utilizando el mdulo SPI para lo cual debe ponerse el jumper JP22 en la posicin
1-2 y empleando los comandos que se explicaron al comienzo.
b- Utilizando el pulsador SW6 con el jumper JP22 en la posicin 2-3. Cada vez que se
oprime el pulsador se pasa de una modalidad de PWM a la siguiente.
Ambas formas de uso son excluyentes, es decir que si se usa SPI para controlar la
modalidad de PWM no puede usarse el pulsador SW6.
Ver NOTA 5 y NOTA 6 al final de este manual para saber cuales son las prcticas que
utilizan las funciones ICAP y SPI.
MODULO CONVERSOR A/D:
Lnea del MCU Placa PLUGIN Lnea Perifrico Configurar como:
PTD0 (A/D CH1) A/D A/D Puerto INPUT A/D
CH1 (channel 1).
Se dispone de dos entradas a sensar:
- LM335Z (U7) para medir temperatura ambiente.
- PRESET (PR2) para medir tensin desde 0V a +5V.
Se pueden realizar rutinas de conversin a 8 y 10 bits de resolucin. Conversin Continua,
simple conversin, y conversin por interrupcin.
JUMPERS:
JP21 ------ Seleccin entre LM335Z y PRESET.
Test point ----- TP1 ---- Se lee valor analgico de tensin a convertir.
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
31
MODULO TIMER:
Como mdulo TIMER de 16 bits no tiene salida al mundo exterior, pero pueden hacerse
varias rutinas usndolo como, por ejemplo, Programa calesita o de tareas temporizadas
utilizando la modalidad Timer Overflow (TOV) por interrupcin que posee este mdulo.
Demoras de debounce anti rebotes para pulsadores, demoras para parpadeo de leds, y
otras aplicaciones solo limitadas por la imaginacin del usuario.
Modulo RTI (Real Time Interrupt Module):
Aqu se puede hacer una rutina de un RTS (Real Time System) usando el XTAL de
32,768KHZ externo o el oscilador interno de 1KHZ y generando una interrupcin cada
n milisegundos. Tambin se puede implementar un RTC (Real Time Clock) con el
mismo esquema circuital pero generando una interrupcin cada 1 Segundo.
Se puede implementar un Reloj con Calendario (HH:MM:SS DD:MM:AA) con
correccin por ao bisiesto y mostrarlo por el Display LCD.
Usar el sistema EDUKIT08 en Modo Usuario con el FLL activado y el cristal de la
placa PLUGIN_AW de 32,768 Khz (JP1 en posicin 1-2) o el oscilador interno de
1Khz disponible en el MC9S08AWxx.
MODULOS SERIALES ASINCRNICOS:
Mdulo SCI1:
Lnea del MCU
HC9S08
Placa PLUGIN_AW Lnea Perifrico Configurar como:
PTE1 SC1RxD PIN 3 (Tx_PC1)
CN6. convertida a
RS 232C
Puerto Input
PTE0 SC1TxD PIN 2 (Rx_PC1)
CN6. convertida a
RS-232C
Puerto Output
Se pueden implementar rutinas desde las bsicas para la recepcin y transmisin de un byte
cualquiera, otra que pueda recibir el byte emitido por un Hyperterminal y enve de vuelta
el carcter posterior. Se puede utilizar transmisin por polling de Flag empty y por
interrupcin cuando el buffer est vaco. Distintos Baud Rates con la misma FBUS. Todas
las rutinas con 8 N 1 o con otras relaciones de bits de Datos / paridad / Stop.
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
32
Test point ----- TP3 y TP4 para ver las seales en nivel TTL.
Mdulo SCI2:
Lnea del MCU
HC9S08
Placa PLUGIN_AW Lnea Perifrico Configurar como:
PTC5 SC2RxD Segn lo
seleccionado por
JP26A / JP26B
convertida a RS-
232C / RS-485 /
Infrarrojo (IRDA).
Puerto Input
PTC3 SC2TxD Segn lo
seleccionado por
JP26A / JP26B
convertida a RS-
232C / RS-485 /
Infrarrojo (IRDA).
Puerto Output
La seleccin del modo de trabajo se hace con JP26A / JP26B.
Modo RS-232:
Se pueden desarrollar rutinas similares a las del SCI1 con el agregado de una que conecte
(GateWay) a los dos mdulos SCI para intercambiar variables que son RECIBIDAS a una
velocidad y TRANSMITIDAS a otra velocidad... Por ejemplo, recibir a 9600 BPS y
transmitir a 19.200 o similar.....
Modo RS-485:
Se puede desarrollar rutinas bsicas para lograr un conversor simple RS-232 (por SCI1) a
RS-485 (por SCI2) para comunicar dos PCs entre s a larga distancia.
Otra rutina es implementar una red simple tipo MASTER / SLAVE con un nodo MASTER
y otros SLAVES. Los SLAVES enviarn valores de variables (conversor A/D, pulsadores,
y otras aplicaciones que el usuario necesite) que podrn ser mostradas por LCD o por
PC.....
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
33
Modo Infrarrojo (Puerto IRDA):
No se dispone del mdulo decodificador / codificador IR (que posee el HC908AP32) en
el MCU MC9S08AW60 conectado al chip de Vishay (TFDU 4300) para comunicar una
placa contra otra placa en forma inalmbrica por infrarrojo sin usar el stack IRDA (soft),
solo la capa fsica del IRDA - SIR. Se deber implementar la decodificacin /
codificacin IR por medio de rutinas de soft.
Utilizar el puerto SCI1 (como simples puertos I/Os) de cada placa para conectarlo a
sendas PCs para formar la conexin inalmbrica. Otra variante puede ser enviar variables
de una placa a otra en forma inalmbrica y mostrarla por LCD o display 7 segmentos.
Distancia de comunicacin: 1 mts garantizado por norma IRDA SIR
Test point ----- TP5 y TP6 para ver las seales en nivel TTL.
MODULO SPI:
Lnea del MCU
HC9S08
Placa PLUGIN_AW Lnea Perifrico Configurar como:
PTE5 (MISO) MISO_C Va a pin MISO del
QY4A (U12)
Puerto INPUT.
PTE6 (MOSI) MOSI_C Va a pin MOSI del
QY4A (U12)
Puerto OUTPUT.
PTE4 (SS Master) SS_C Est conectado a
+VDD por una R
(Master)
Puerto INPUT.
PTE7 (SPSCLK) SPSCLK_C Va a pin SPSCLK
del QY4A (U12)
Puerto OUTPUT.
El AW60 dispone de un mdulo de SPI completo, se configurar al AW60 como MASTER
y se hablar contra el esclavo (U12) a la velocidad que permita la rutina implementada en
el MCU QY4A. (ver Gua de Prcticas contenida en el CD ROM de instalacin)
Test point ------ TP8 / TP9 / TP11.
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
34
Comunicacin por SPI:
La misma puede cumplir 2 funciones:
a- Leer un valor de tabla del microcontrolador QY4 (U12), comportndose como si
fuera una memoria del tipo SPI.
b- Controlar la seal de PWM generada por el microcontrolador QY4 (U12) en el pin
ICAP (para efectuar la funcin ICAP) como se hara por el pulsador SW6.
Para cumplir estas funciones se envan 3 bytes por SPI desde el microcontrolador
MC9S08AW60, y por razones obvias de la comunicacin SPI se reciben 3 bytes en el
microcontrolador MC9S08AW60 como respuesta.
Estos 3 bytes son:
Byte 1: Comando.
Byte 2: Address / Modo.
Byte 3: Ficticio (byte no vlido, solo a los efectos de demora de tiempo).
Para utilizar al microcontrolador QY4 (U12) como una memoria SPI se debe hacer el byte
1 de comando igual a 10h y el byte 2 se comporta como el address que se utiliza para
ndice de una tabla en la memoria Flash del microcontrolador QY4 (U12), mientras que el
Byte 3 puede contener cualquier valor, ya que es usado como demora de tiempo.
El microcontrolador QY4 devuelve 3 bytes por SPI. El primero y el segundo siempre son
iguales a 0h y deben ser descartados. El tercero es el byte ledo de la tabla.
Para controlar la seal de PWM generada por el microcontrolador QY4 (U12) debe
hacerse el byte 1 de comando igual a 20h y el byte 2 expresa la modalidad en que se
desea poner a la seal de PWM. Es un byte que puede tomar valores de 0 a 7.
El tercer Byte puede tomar cualquier valor (Byte Ficticio).
Ver la descripcin de las funciones de ICAP para mas detalles.
Ver NOTA 5 y NOTA 6 al final de este manual para saber cuales son las prcticas que
utilizan las funciones ICAP y SPI.
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
35
MODULO I2C:
Lnea del MCU Placa PLUGIN Lnea Perifrico Configurar como:
PTC1 (SDA) SDA Pin bi direccional
del I2C SDA de
la memoria
24LC256
Puerto Input / Output
PTC0 (SCL) SCL Master clock del
I2C y pin SCL de
la memoria
24LC256
Puerto Output.
El sistema EDUKIT08 dispone de una memoria EEPROM con interface I2C del tipo
24LC256 conectada a las lneas I2C del MCU de la placa PLUGIN elegida.
(ver Gua de Prcticas contenida en el CD ROM de instalacin)
Test Point ----- TP12 / TP13 ------ seales SDA y SCL del Bus I2C.
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
36
7.0 - Sistema CodeWarrior for HC(S)08,
de Freescale Semiconductor.
El sistema CodeWarrior es un entorno integrado de trabajo (IDE) de uso profesional
que rene en un mismo entorno un compilador de cdigo Assembler y cdigo C, un
linkeador y un debugger de cdigo assembler fuente / cdigo C, y que puede ser
ampliado segn las necesidades del usuario.
El entorno de trabajo CodeWarrior es bsicamente el mismo desde microcontroladores
muy pequeos de 8 Bits hasta microcontroladores complejos de 32 Bits. Este aspecto es
muy interesante ya que acostumbra al diseador con microcontroladores a moverse
dentro de un entorno nico y a no encontrarse con un mundo nuevo cada vez que efecta
la migracin de un proyecto con un microcontrolador de 8 Bits a otro de 16 o 32 Bits.
Existen varias versiones del sistema CodeWarrior, cada una de ellas soporta una serie de
familias de microcontroladores de distinta complejidad y aplicaciones.
Por ejemplo, para movernos dentro del sistema didctico EDUKIT08, las versiones que
se pueden utilizar son las siguientes:
CodeWarrior 5.0: apto para MCUs de la familia HC908 y HC9S08, puede
instalarse en PCs o Notebooks con sistemas operativos Windows 98SE / Me / XP y
no requiere de grandes exigencias del hardware de la PC, con procesadores Pentium
III o similar y 128 Mbytes de RAM es suficiente. La versin gratuita permite
compilar sin lmites cdigo assembler y hasta 16 Kbytes en cdigo C. Esta
versin solo es recomendada para PCs antiguas, con muy pocos recursos,
ya que no soporta muy bien herramientas como el R(S)_POD o similares.
CodeWarrior 5.1: apto para MCUs de la familia HC908, HC9S08 y RS08, puede
instalarse en PCs o Notebooks con sistemas operativos Windows XP o superior y
requiere de procesadores Pentium IV o equivalentes y ms de 256 Mbytes de RAM.
Posee un muy buen nivel de actualizaciones y soporta muchas herramientas
distintas. La versin gratuita permite compilar sin lmites cdigo assembler y
hasta 32Kbytes en cdigo C.
CodeWarrior 6.0/6.1/6.2: Son las ltimas versiones disponibles, aptas para MCUs
de la familia HC908, HC9S08, RS08 y la nueva Serie Flexis de 8 / 32 Bits (S08 /
V1 ColdFire). Puede instalarse en PCs o Notebooks con sistemas operativas
Windows XP o superior y requiere de procesadores Pentium IV o superiores y ms
de 512 Mbytes de RAM.
Posee un muy buen nivel de actualizaciones y soporta muchas herramientas
distintas. La versin gratuita permite compilar sin lmites cdigo assembler y
hasta 32Kbytes en cdigo C para la familia HC9S08 y 64Kbytes para la
familia Flexis HC9S08 / V1 ColdFire (versiones recomendadas).
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
37
En esta seccin trabajaremos con la versin 5.0 (la ms limitada de todas) del
CodeWarrior, ya que su forma de manejo es similar en todas las versiones posteriores.
La versin "5.0" ofrece ensamblado de cdigo fuente en forma ilimitada (assembler) y
provee capacidades de Debugging muy interesantes an para programadores adelantados.
Esta herramienta poderosa, combina un Ambiente de Desarrollo Integrado de Alta
perfomance (I.D.E) con:
- Simulacin Completa del Chip y programacin de la memoria FLASH desde el
sistema EDUKIT08.
- Un Compilador ANSI C (16K Bytes de cdigo) altamente optimizado y un
Debugger en nivel fuente C, Generacin automtica de cdigo C con "Processor
Expert" desde unidades.
Ejecutar una seccin de programacin o debugging con proyectos basados en entornos
CodeWarrior IDE es tan simple como efectuar un doble "click" en el nombre del proyecto
(el formato es "nombredelproyecto.mcp") desde el archivo almacenado. Comenzar un
nuevo proyecto es un poco ms complejo, pero los tutoriales, FAQs y guas rpidas de
comienzo son fciles de seguir y ayudan a construir un nuevo proyecto, usando "templates"
pre-construidos, en muy poco tiempo.
(Ver www.freescale.com y seleccionar.....
"CodeWarrior For HC(S)08 Microcontrollers".)
7.1 Instalacin del entorno CodeWarrior.
Aqu se mostrarn los pasos para instalar el CodeWarrior 5.0 contenido en el CD ROM
CodeWarrior del KIT bsico del EDUKIT08. Sin embargo, se sugiere instalar el
CodeWarrior 6.1 contenido en el CD ROM PLUGIN_AW INSTALACIN que
forma parte del kit PLUGIN_AW para trabajar con la familia HC9S08.
Pasos a seguir:
1) Introduzca el CD ROM con la etiqueta electrnica CodeWarrior 5.0 en el lector de la
PC o Notebook a utilizar y seleccione la siguiente ruta:
D:\ CodeWarrior 5.0
2) Ejecutar el archivo Launch de dicho directorio y nos aparecer la siguiente
pantalla ......
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
38
3) Elegir la opcin Launch the Installer para comenzar con la instalacin
automtica.
4) Aparecer una pantalla de Bienvenida y se deber seguir atentamente las
indicaciones de las sucesivas pantallas a lo largo de la instalacin que nos irn
guiando paso a paso en la misma.
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
39
5) Una vez concluida la instalacin, procederemos a lanzar el CodeWarrior 5.0 IDE
Seleccionando Inicio Programas Freescale CodeWarrior HC08 V5.x
CodeWarrior IDE (como se ve en la figura, o bien instalando un icono de acceso
directo del CodeWarrior IDE).
6) Haciendo click en el icono de acceso directo del escritorio o bien en la opcin
Codewarrior IDE de la ventana de programas mostrada anteriormente, se nos
abrir la siguiente pantalla de presentacin......
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
40
Siempre que se tenga tildada la opcin Display on Startup se abrir la ventana con
opciones de comienzo de trabajo con el sistema que facilitarn nuestro aprendizaje en el
mismo.
Al cerrar esta pantalla, se nos abrir otra conteniendo tips (consejos / sugerencias) que
nos irn mostrando las distintas posibilidades que nos brinda este poderoso entorno.
Actualizacin del sistema CodeWarrior.
Los sistemas CodeWarrior disponen de la facilidad de actualizacin va Internet lo que
posibilita mantener al da nuestro sistema de desarrollo ante la aparicin de nuevos
dispositivos, correcciones o mejoras, ejemplos de aplicacin, etc.
Es indispensable que en la PC o Notebook elegida para la instalacin del sistema
CodeWarrior se disponga de una conexin a Internet, ya sea en forma directa (modem)
o bien por medio de la red en donde la misma se encuentre conectada. Se sugiere disponer
de una conexin a Internet del tipo Banda Ancha debido a la cantidad de informacin
que suele intercambiarse durante los procesos de actualizacin del entorno
Las versiones demo del CodeWarrior 5.0 / 5.1 / 6.x contenidas en los CD ROMs de
cortesa, requieren de actualizaciones para funcionar correctamente con el sistema
EDUKIT08.
Para ello se proceder de la siguiente forma:
1) Ejecutar la aplicacin CodeWarrior 5.0 / 5.1 / 6.x IDE.
2) Cerrar la pantalla de presentacin Startup y la pantalla Tip subyacente.
3) Hacer click en la opcin Help de la Barra de Herramientas como se
puede observar en la figura.
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
41
4) Hacer Click en la opcin Check for updates to CodeWarrior.....
5) Se desplegar una pantalla de actualizacin y procederemos a hacer click en next
para avanzar en el proceso, segn se muestra en la figura.
6) En la siguiente pantalla nos mostrar todos las actualizaciones disponibles y
deberemos elegir todas (tildando las casillas) las referidas a los sistemas 5.0/5.1/6.x
para una correcta actualizacin.
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
42
A partir de esta pantalla se irn mostrando los progresos de las descargas y las posteriores
instalaciones una a una a lo largo de todo el proceso de actualizacin.
Si se produjera algn error durante la instalacin de alguno de los paquetes de
actualizacin, el sistema lo corregir en forma automtica en posteriores intentos.
Se sugiere actualizar a los sistemas CodeWarrior en forma peridica.
7.2 Comenzando a trabajar con el entorno CodeWarrior.
El siguiente ejemplo ilustrar como programar y depurar cdigo en un MCU HC9S08
desde un entorno CodeWarrior IDE.
Aqu se darn los pasos principales en la programacin de la memoria FLASH con
CodeWarrior en modo Background y como comenzar una seccin de debug (depuracin
en Tiempo Real).
Nuestro ejemplo consistir en implementar un pequeo programa en lenguaje ensamblador
que efectue una interrupcin en forma peridica cada n milisegundos basado en el uso
del Timer (TPM1) en modo TOV (Timer Overflow). Este sencillo programa nos servir
como base para ejecutar un nmero de tareas ms complejas en forma peridica de modo
similar a como lo hara un sistema orientado a tareas ms complejo.
Primeramente configuraremos al sistema EDUKIT08 para trabajar con el MCU
MC9S08AW60CFUE que es el microcontrolador disponible en la placa PLUGIN_AW
que viene con el kit de personalizacin para la familia HC9S08.
Procederemos a instalar la placa de personalizacin PLUGIN_AW en la placa principal
(MotherBoard) del sistema EDUKIT08, segn lo indicado en la seccin
4.0.- (Especificaciones Generales - Detalles de montaje Placas PLUGIN).
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
43
Como se haba comentado en prrafos anteriores del manual, el sistema didctico
EDUKIT08 necesita de una herramienta BDM_POD externa conectada al conector
CN10 para poder trabajar con las familias HC9S08 / Serie Flexis S08 / V1 ColdFire.
En este ejemplo usaremos el sistema R(S)_POD conectado a un puerto USB 2.0 de la
PC o Notebook elegida, segn el siguiente esquma:
Placa principal
( Motherboard )
EDUKIT08
USB
PC / Notebook
CodeWarrior
Fuente
AC/DC
12V@ 500Ma
Placa Personalizacin
PLUGIN_AW
Solo usar con
USBMULTILINK o
R(S)_POD en modo
Sin alimentacin
al circuito externo.
BDM R(S)_POD /
USBMULTILINKBDME
Conector
BDM 6 pines
CN 10
CN5
Detalle de conexin del arns del BDM
R(S)_POD y el conector CN10 (BDM
HC9S08) en el EDUKIT08.
Hacer coincidir la ranura de pin 1 del
conector IDC 6 del arns con la indicacin
de pin 1 en CN 10.
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
44
Conexiones sistemas EDUKIT08 + PLUGIN_AW + R(S)_POD + PC + Fuente DC.
El orden de conexin ser el siguiente:
1) Configurar las placas EDUKIT08, PLUGIN_AW y R(S)_POD segn lo indicado en
los prrafos posteriores.
2) Conectar cable serial USB 2.0 Tipo A-B al R(S)_POD y a la PC o Notebook (como se
v en la figura) y debe encenderse LED LD2 (USB_EN) del R(S)_POD.
3) Conectar cabezal IDC 6 del Arns del R(S)_POD al conector CN10 del EDUKIT08
cuidando de respetar las marcas de PIN 1 de ambos conectores (como se ve en la
figura).
4) Conectar Plug de alimentacin externa al conector CN5 y deber encenderse el LED
LD3 (SIS. ACTIVO) indicando que el sistema se encuentra activo y energizado
(+VDD en todo el sistema EDUKIT08) y tambin debe encenderse el LED LD3
(MCU_PWR) indicando la presencia de +VDD en el conector BDM CN10.
Placa PLUGIN_AW
insertada en el EDUKIT08
Alimentacin Externa
12V @ 500mA
Sistema R(S)_POD
Pin 1
Conector
BDM
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
45
De esta forma la configuracin final ser:
Placa PLUGIN_AW:
JP1 ---- Placa PLUGIN_AW ---- Posicin 2-3 (oscilador externo 20 Mhz).
Placa EDUKIT08 (MotherBoard):
JP2A / JP2B / JP2C --- Placa Principal ----- No importa la posicin (No se usa).
JP3 --- Placa Principal ---- Posicin 2-3 (Placa alimentada en forma continua).
JP4 --- Placa Principal ---- Posicin 1-2 (+VDD en pin RESET)
JP5 --- Placa Principal ---- Posicin Abierto.
JP6 --- Placa Principal ---- Posicin Abierto.
JP15 / JP16 --- Placa Principal ---- Posicin Abierto (Display LCD OFF).
JP17/JP18/JP19/JP20 --- Placa Principal ---- Posicin Abierto.
(Display 7 Segmentos LEDs OFF).
Conector CN5 (Power) ---- Conectar fuente externa AC / DC de 12V @ 500 mA.
Sistema BDM R(S)_POD:
JP1 --- Placa Principal ---- Posicin 1-2. (BDM alimentado por el EDUKIT08).
JP2 --- Placa Principal ---- Posicin Cerrado (LED Power habilitado).
JP3 --- Placa Principal ---- Posicin 1-2 (modo por defecto).
Arns BDM 6 hilos IDC 6 ------ Conectar a CN10 en EDUKIT08
Cabe recordar que como utilizaremos el puerto USB 2.0 de nuestro sistema para
comunicarnos, se deber comprobar que se hayan instalado los drivers necesarios,
provistos con la herramienta R(S)_POD (o USBMULTILINKBDME si se eligi esta),
para que la PC o Notebook utilizada interprete como una unida vlida conectada al puerto
USB fsico, ya que en el entorno de trabajo integrado CodeWarrior utilizaremos la opcin
de dicha herramienta como medio vlido para comunicarnos (ver Manual de Usuario del
R(S)_POD o del USBMULTILINKBDME).
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
46
Configurado nuestro sistema, procederemos a iniciar nuestro programa en el sistema
CodeWarrior 6.x efectuando los siguientes pasos:
Al ejecutar el CodeWarrior IDE, se nos abrir una ventana de opciones como se ve en la
figura 1.
Figura 1.- Pantalla Startup con opciones de ayuda.
Elegiremos la opcin Create New Project para armar nuestro nuevo proyecto.....
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
47
1) Se nos abrir una pantalla donde configuraremos la familia y dispositivo en particular a
utilizar para nuestro proyecto (MC9S08AW60CFUE) segn se puede ver en la figura 2.
Figura 2.- Pantalla de configuracin de Familia, dispositivo y tipo de
conexin.
Como se observa en la figura 2, se ha elegido la familia HC9S08, dispositivo
MC9S08AWCFUE y en cuanto a la conexin con la herramienta debe elegirse la
opcin HCS08 Open Source BDM ya que es la opcin universal de conexin para los
sistemas de desarrollo como el R(S)_POD, que basan su funcionamiento en esta interface
de cdigo abierto.
2) Luego se ingresar en la pantalla de configuracin del proyecto donde elegiremos
generacin de lenguaje ASSEMBLY (en el ejemplo se ha elegido la opcin Absolute
Assembly que no contempla relocalizacin de archivos), y nombraremos a nuestro
proyecto con el nombre Proyecto_AW.mcp, segn se puede ver en la figura 3.
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
48
Figura 3.- Pantalla de eleccin de lenguaje, nombre / ubicacin del proyecto.
Figura 4.- Pantalla de adicin de archivos al proyecto.
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
49
Al hacer click en el botn siguiente pasamos a una pantalla (Figura 4.-) que nos
permite adicionar cualquier archivo al proyecto, para incluirlo en nuestro trabajo.
En nuestro caso, saltaremos esta opcin e iremos a la prxima pantalla.
Figura 5.- Pantalla de eleccin o no de generacin de cdigo asistido
(Processor Expert).
En la pantalla que se observa en la figura 5.-, se puede elegir la generacin de cdigo de
inicializacin de los distintos perifricos asistida o no. Nosotros elegiremos utilizar la
generacin de cdigo asistida, por medio del aplicativo Processor Expert, que nos ir
guiando paso a paso en la inicializacin de los distintos perifricos del MCU elegido.
Al hacer click en el botn Finalizar, se generarn todos los archivos del proyecto, se
lanzar la pantalla principal de trabajo del mismo y se podr ver una interface grfica con
los pines y los distintos mdulos que constituyen el MCU (Figura 6.-).
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
50
Figura 6.- Pantalla principal del proyecto e interface grfica de generacin de
cdigo (Processor Expert).
Hacer click en el icono Select CPU Package y elegir el encapsulado
MC9S908AWCFU que es el correcto utilizado en nuestro kit, si es que no fuera el
generado por el Processor Expert.
Ahora nos queda generar el cdigo de inicializacin del Timer para producir una
interrupcin peridica que ser la base de nuestro sistema de disparo de tareas,
inicializar los puertos I/O, los registros de configuracin, etc., etc.
Para hacer esto, usaremos el generador de cdigo asistido Processor Expert haciendo
click primeramente en el modulo CPU (en el dibujo del MCU) para configurar el Clock
del sistema y otros aspectos como se observa en la figura 7.-
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
51
Figura 7.- Pantalla del mdulo de CPU.
Hacer click en Clock Settings y configurar el mdulo de CPU para:
Clock ---- Externo ---- 20,000Mhz (lo inyectar EDUKIT08 por pin OSC1).
External Clock Source ---- External Oscillator
Xtal Range ----- High Frecuency
Oscillator Operation Mode ----- High Gain
Clock Divider ----- 2 (FBUS / 2)
Internal Bus Clock ---- 5 MHZ
Loss of Clock ---- Disabled
FLL Clock ---- Desabled
Stop Instruction ----- NO
Maskable CPU Interrupts ----- Interrupts Enabled
Internal Peripherals ---- Dejar valores por defecto.
FLASH ---- Dejar valores por defecto.
I/O Modules ---- Dejar valores por defecto.
CPU Interrupts ---- Dejar valores por defecto.
Vector de Reset apuntando a la etiqueta _Startup
SWI deshabilitada.
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
52
Figura 8.- Pantalla con los detalles de configuracin del CPU.
Hacer click en el botn O.K para finalizar con esta pantalla y a continuacin
procederemos a configurar el mdulo de Timer (TPM1) ingresando al mismo como
muestra en la figura 9.-
Figura 9.- Pantalla del Mdulo de Timer.
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
53
Ahora es el turno de configurar el mdulo del TIMER TPM1 segn lo siguiente:
Clock Source Select ---- Fixed System Clock
Prescaler = 32 ----- FBUS = 10,0000 MHz (Fixed System Clock = 5 MHZ).
Perodo del timer = 100 ms (Modulo Counter = 15700)
Modo de funcionamiento ----- Timer Overflow Interrupt (Vtpm1ovf).
Overflow Interrupt = habilitado.
Nombre de la interrupcin = isrVtpm1ovf
Inicializacin = Comienzo de la cuenta (arranque del timer).
Figura 10.- Pantalla configuracin del TIMER
Una vez que se ha configurado el mdulo de TIMER TPM1 (hacer click en el botn O.K),
procederemos a configurar los puertos I/O segn lo siguiente:
PORTA ---- DDRA = % 11110000 ---- PTA = % 00010000.
PORTB ----- DDRB = % 11111111 ---- PTB = % 00000000.
PORTC ----- DDRC = % 01011001 ---- PTC = % 00001001.
PORTD ----- DDRD = % 00000000 ---- PTD = % 00000000.
PORTE ----- DDRE = % 11000001 ---- PTE = % 00010001.
PORTF ----- DDRF = % 00000001 ---- PTF = % 00000000.
PORTG ----- DDRG = % 00000000 ---- PTG = % 00000000.
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
54
Esta configuracin de puertos I/O es la recomendada para realizar la mayora de las
prcticas con los diferentes perifricos en el sistema EDUKIT08 con la placa
PLUGIN_AW (ver 6.2 Asignacin de lneas en el sistema EDUKIT08).
Figura 11.- Pantallas de configuracin de puertos (PORTA / PORTB / PORTC /
PORTD / PORTE / PORTF / PORTG).
Configurar cada puerto I/O en forma individual y hacer click en botn O.K para finalizar
la configuracin en cada uno desde el PORTA hasta el PORTG (tener en cuenta que
PTG5 / PTG6 no estn disponibles pues son utilizadas por el oscilador)
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
55
Si luego se presiona el botn Generation Code , el generador de cdigo del Processor
Expert generar cdigo y nos mostrar una ventana explicando los pasos a seguir para
incorporarlo efectivamente al resto del programa.
Figura 12.- Pantalla de generacin de Cdigo que producir archivos bajo
el Nombre MCUinit para inicializar el MCU.
Figura 13.- Pantalla de ayuda para integrar el cdigo generado al proyecto.
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
56
Segn lo sugerido por la ventana de ayuda una vez generado el cdigo, procedemos a
comentar y descomentar lo siguiente (solo para el CodeWarrior 5.0, en otras versiones
posteriores, solo verificar que as suceda):
Comentar en el archivo Project.prm la lnea --- VECTOR 0 _Startup /* Reset
vector ......
Con una barra cruzada y asterisco (/*) delante de la sentencia y luego salvarlo.
Descomentar en el archivo main.asm la lnea JSR MCU_int para que de esta
forma en el programa principal se pueda invocar a la sub rutina MCU_int que
inicializa al MCU.
Luego de realizar esas modificaciones sugeridas por el Processor Expert (si fueran
necesarias), introduciremos nuestras lneas de cdigo en la sub rutina de interrupcin
por Timer Overflow (isrVtpm1ovf) que est contenida en la sub-rutina MCUinit.inc
para realizar, por ejemplo, un Toggle (inversin de estado) del puerto PTA4 (LED 1
del EDUKIT08) cada vez que atendamos la interrupcin propiamente dicha. En este
punto podemos poner todas nuestras tareas en forma de llamado a sub rutina que se irn
ejecutando una a una cada 100 ms.
XDEF isrVtpm1ovf
isrVtpm1ovf:
; Write your interrupt code here ...
BCLR TPM1SC_TOF,TPM1SC ;Limpio bit TOF del timer1
BRCLR PTAD_PTAD4,PTAD,OFF_PUERTO ;Invierto estado puerto PTA4
BCLR PTAD_PTAD4,PTAD ;Enciendo LED 1 del EDUKIT08
BRA FIN_TIMOvr ;salto a fin rutina
OFF_PUERTO:
BSET PTAD_PTAD4,PTAD ;Apago LED 1 del EDUKIT08
FIN_TIMOvr:
RTI
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
57
Figura 15.- Agregado de nuestras lneas de cdigo en la rutina de manejo de la
interrupcin por Timer Overflow (isrVtpm1ovf).
Como se puede ver en la Figura 15.-, el archivo MCUinit.inc (dentro de la carpeta
Generated Code), es un archivo include generado por el Processor Expert que contiene
todo el cdigo necesario para inicializar a los distintos perifricos del MCU de una forma
sencilla y muy rpida. El archivo principal main.asm (dentro de la carpeta Source)
incluir a la sub rutina MCUinit y la invocar con un JSR (Jump to Subrutine) en un
punto del programa como se puede ver en la Figura 16.-
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
58
Figura 16.- Rutina principal main.asm conteniendo a la sub rutina MCUinit.
Una vez introducido nuestro cdigo, debemos compilarlo haciendo click en el botn
Make en la barra de proyecto o en la barra de herramientas general. Si no hemos
tenido algn error de compilacin estaremos y en condiciones de pasar a la etapa de
EMULACION EN TIEMPO REAL de nuestro programa.
Botn Make
Botn Debug
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
59
Para realizar ello, primero deberemos establecer una conexin entre el CodeWarrior 6.x y
nuestro sistema de desarrollo EDUKIT08 que iremos configurando a lo largo de las
siguientes pantallas luego de hacer click en el botn Debug (fecha verde en la barra
de proyecto).....
Figura 17.- Pantalla de debug abriendose y cartel indicando que la memoria
FLASH del MCU HC9S08 ser borrada en forma general.
Luego de hacer click en el botn Debug se nos abrir la pantalla de Debug (Emulacin
en Tiempo Real) y adems un cartel emergente que nos indicar que la memoria FLASH
de nuestro MCU HC9S08 (en nuestro caso el MC9S08AW60CFUE contenido en la placa
PLUGIN_AW) ser borrada en forma general (mass erase).
Procederemos a hacer click en el botn O.K para continuar, y luego de ello, y de
algunas pantallas intermedias que nos indicarn el proceso de borrado y grabacin de la
memoria FLASH con el cdigo generado por nuestra aplicacin, se abrir finalmente la
pantalla principal de Emulacin en Tiempo Real (Real Time Debugger) como se puede
observar en la Figura 18.-
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
60
Figura 18.- Pantalla de Emulacin en Tiempo Real (Real Time Debuger).
Pues bien, ya tenemos la pantalla principal de Debugging (Emulacin en Tiempo Real)
y solo nos resta correr nuestro programa haciendo Click en el icono con la flechita
verde (Run / Continue) para poder ver la seal cuadrada de 200 ms de perodo que
obtendremos en el puerto PTA4 de nuestro sistema didctico, segn nos muestran las
figuras 19 y 20.
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
61
Figura 19.- Sistema Corriendo en Tiempo Real (Debugging).
Figura 20.- Led LD1 parpadeando con un perodo de 200 ms.
LED 1
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
62
Para detenerlo solo tendremos que hacer click en el botn Halt de la barra de
herramientas, se detendr inmediatamente la ejecucin del programa y se podrn ver los
distintos valores de los registros del MCU, del CPU y de las variables involucradas.
Para aprovechar realmente la posibilidad de Emulacin en Tiempo Real (Debugger), es
necesario incluir un o varios Breakpoints en algunos puntos de inters de nuestro
programa para detener la ejecucin normal del mismo en esos puntos y poder rescatar los
valores de las variables a examinar justo en ese momento.
Por ejemplo, en nuestro ejemplo anterior, se introducir un breakpoint en las lneas de
cdigo que se han agregado en la interrupcin por Timer Overflow, justo en la lnea
donde se apaga el LED LD1.
Para ello, se introducir un Breakpoint en la lnea elegida simplemente ubicando el
puntero en dicha lnea y haciendo click en el botn derecho del mouse se abrir una
ventana con distintas opciones, se elegir Set Breakpoint haciendo click en la
opcin.......
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
63
Como resultado de ello, aparecer una flecha Roja con una barra indicando donde se
ha colocado el breakpoint como se puede observar en la figura superior.
A continuacin, ya se est en condiciones de correr la aplicacin con el Debugger
haciendo Click en la flechita Verde de la barra de herramientas......
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
64
Pantalla del Debugger con el programa detenido en el breakpoint .....
Breve introduccin a las Caractersticas del Real Time Debugger.
El modo Real - Time Debugger en el sistema CodeWarrior permite aprovechar todas las
caractersticas del mdulo BDM + On-Chip ICE que posee la familia HC9S08 lo que le
brinda al desarrollador una gran cantidad de recursos tiles para la depuracin de
programas complejos. Por ejemplo, no solo se dispone de Breakpoints simples, sino que
tambin pueden efectuarse Breakpoints condicionales con distintas alternativas de
condiciones, Watchpoints o puntos de observacin de contenidos de memorias por
escritura o lectura de la misma, observacin en pantalla del valor de variables en tiempo
real mientras el programa est corriendo, y otras muchas funciones que facilitan la
depuracin de cdigo.
Para poder mostrar algunas de estas caractersticas excepcionales que poseen en forma
conjunta el CodeWarrior y el HC9S08, modificaremos nuestro programa original de
ejemplo agregndole algunas variables como contadores de encendidos y apagados del
LED 1 y saltos condicionales para sus puestas a cero.
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
65
He aqu el nuevo cdigo ......
En el programa main.asm ...
En el programa MCUinit.inc .....
XDEF isrVtpm1ovf
isrVtpm1ovf:
; Write your interrupt code here ...
BCLR TPM1SC_TOF,TPM1SC ;Limpio bit TOF del timer1
BRCLR PTAD_PTAD4,PTAD,OFF_PUERTO ;Invierto estado puerto PTA4
BCLR PTAD_PTAD4,PTAD ;Enciendo LED 1 del EDUKIT08
INC N_encend ;Incremento contador de encendidos
LDA N_encend ;del LED1 hasta 255
CMP #$FF ;
BEQ R_CDOR_ENC ;
BRA FIN_TIMOvr ;salto a fin rutina
Modificamos el comienzo de la zona de
RAM para alojar variables con
direccionamiento directo (desde $70 a $FF)
Variables agregadas:
N_encend
N_apagad
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
66
R_CDOR_ENC:
CLR N_encend ;Limpio contador de encendidos
BRA FIN_TIMOvr ;salto a fin de rutina
OFF_PUERTO:
BSET PTAD_PTAD4,PTAD ;Apago LED 1 del EDUKIT08
INC N_apagad ;Incremento contador de apagados
LDA N_apagad ;del LED1 hasta 255
CMP #$FF ;
BEQ R_CDOR_APA ;
BRA FIN_TIMOvr ;salto a fin rutina
R_CDOR_APA:
CLR N_apagad ;Limpio contador de apagados
BRA FIN_TIMOvr ;salto a fin de rutina
FIN_TIMOvr:
RTI
; end of isrVtpm1ovf
Mirando las variables en Tiempo Real en Data Window:
Una de las caractersticas interesantes que disponemos en el conjunto CodeWarrior +
BDM On-Chip ICE y que solo es comn en Herramientas de desarrollo de muy alto costo
de otras marcas en la posibilidad de ver en pantalla y en Tiempo Real, el valor de las
variables utilizadas en un programa mientras el mismo est ejecutndose, sin introducir
demoras en la ejecucin.
Aqu cabe aclarar que, es virtualmente imposible y sin sentido, ver el contenido de las
variables con igual velocidad al cambio de su contenido, pero lo que en realidad sucede,
es que el usuario puede observar el contenido de las variables del programa de forma
peridica por medio de un refresco de pantalla en un intervalo de tiempo ajustable para
poder analizar el contenido de estas a lo largo del tiempo.
En nuestro ejemplo, haremos lo siguiente:
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
67
Con el programa ya compilado y en la pantalla de Emulacin en Tiempo Real (Real Time
Debugger), haremos click en la barra de herramientas en la opcin Window y
elegiremos la opcin DATA como se muestra en la Figura 21.- .
Figura 21.- Opcin Window desplegada en el Real Time Debugger.
Al hacer click en DATA nos aparecer esta opcin en la barra de herramientas y al hacer
click en ella elegiremos las opciones Mode y luego Periodical.... para establecer el
modo de refresco peridico de la informacin en pantalla segn se muestra en la
Figura 22.-
Figura 22.- Opciones de refresco de la informacin en pantalla.
Al hacer esto, se nos abrir una pantalla que nos permitir configurar el tiempo de
refresco de la informacin en pantalla (en la zona Data Window) con intervalos de
ajuste de a 100 mSeg , como se puede observar en la Figura 23.-
Elegir un tiempo de refresco de 100 mSeg. y la modalidad de refrescar las variables
peridicamente an con el sistema detenido y hacer click en O.K.
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
68
Figura 23.- Configuracin del tiempo de refresco de las variables (Data Window).
Luego, ejecutar el programa en tiempo real (Click en flecha RUN) y se podr observar
como las variables N_encend y N_apagad se van actualizando cada 100 mSeg en
pantalla en Data Window como se observa en la Figura 24.- (los valores que cambian el
CW los indica en color rojo)
Figura 24.- Programa corriendo y mostrando en pantalla las variables en tiempo real.
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
69
Deteniendo el programa por acceso a la escritura / lectura de una variable.
Esta caracterstica nos permite detener (Halt) un programa cuando el mismo accede a una
posicin de memoria en RAM o variable en sus distintas variantes como acceso en modo
lectura, acceso en modo escritura y por ltimo acceso tanto en escritura como lectura.
El hecho de poder detener un programa cuando una variable en especial es accedida por
alguna lnea de cdigo del mismo, es muy interesante para la depuracin de programas
complejos, ya que muchas veces se producen alteraciones o accesos a estas variables por
errores en el diseo del programa o por circunstancias no tenidas en cuenta por el
diseador.
En nuestro ejemplo, tomaremos la variable N_encend (nmero de encendidos del
LED1) y configuraremos el debugger para que se genere un Breakpoint por acceso a
escritura en dicha variable. Para ello seguiremos los siguientes pasos:
1) Ubicaremos el cursor en la ventana Data, justo en la posicin de la variable
N_encend y haremos click con el botn derecho del mouse sobre la misma.
2) Elegiremos la opcin Set Trigger Address A y Write Access como se muestra en
la fugura superior. Al hacer click sobre esta ltima opcin, aparecer una barra vertical
a roja a la izquierda de la variable elegida como se puede ver en la Figura 25.-
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
70
Figura 25.- Variable N_encend configurada para generar un Breakpoint
cuando se acceda a ella en modo escritura.
Una vez configurado nuestro breakpoint, procederemos a correr nuestro programa en
tiempo real (flechita verde de la barra de herramientas) y veremos que se detiene en la
lnea de cdigo mostrada en la Figura 26.-
Figura 26.-
Vemos que nuestro programa se ha detenido en la lnea de cdigo posterior a
CLR N_encend ya que fue la responsable de modificar el valor de la variable en modo
escritura. Si continuamos adelante con el programa, haciendo nuevamente click en el botn
Start / Continue, veremos que el mismo se detiene en la lnea de cdigo posterior a la
que escribe sobre la variable N_encend un nuevo valor como se muestra en la
Figura 27.-
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
71
Figura 27.-
Las otras variantes de acceso a lectura y acceso a escritura / lectura pueden
implementarse de igual forma que en la mostrada en el ejemplo.
Deteniendo el programa al alcanzar un valor determinado en una variable.
Esta variante nos permite detener la ejecucin de un programa cuando una variable elegida
haya alcanzado un valor determinado, lo que nos otorga una gran flexibilidad de introducir
un Breakpoint que solo sea efectivo al cumplirse una condicin de un valor determinado,
por ejemplo, cuando tenemos que depurar un programa de comunicaciones y solo
queremos detenerlo cuando este haya recibido un carcter especfico desde el exterior y
dejarlo correr si esa condicin no se hace presente.
Para nuestro ejemplo, elegiremos la variable N_apagad y haremos que el programa se
detenga cuando la misma alcance el valor decimal 20 ($14) y solo en esa condicin.
Para ello seguiremos los siguiente pasos:
1) Con el cursor ubicado sobre la variable N_apagad de la ventana Data haremos
click con el botn derecho del mouse y elegiremos las opciones Set trigger Address A y
luego Write Access haciendo click en esta ltima. Hasta aqu es similar a lo hecho en el
ejemplo anterior como se ve en la Figura 28.-
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
72
Figura 28.-
3) Con el cursor posicionado en la variable ya marcada, hacer nuevamente click con el
botn derecho del mouse en la opcin Open Trigger Settings Dialog y al hacer
click sobre la opcin se abrir una ventana de configuracin de los modos de disparo
del breakpoint como se ve en las Figuras 29.- y 30.-
Figura 29.-
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
73
Figura 30.-
3) Con la ventana Trigger Module Settings abierta, elegir la opcin Memory
access at Address A and value on data bus match como se ve en la figura 31.-
Figura 31.-
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
74
4) Con la opcin as elegida, la ventana se modificar permitiendo ingresar el Match
Value (valor a igualar) que ser $14 en nuestro ejemplo como se muestra en la
figura 32.-
Figura 32.-
A continuacin corremos en tiempo real nuestro programa de ejemplo y veremos que al
cabo de unos segundos el mismo se detiene al encontrar la condicin especificada en el
breakpoint, o sea cuando la variable N_apagad alcance el valor de $14 o 20 en decimal
como se puede observar en la figura 33.-
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
75
Figura 33.-
Deteniendo el programa por medio de una combinacin de Breakpoints.
Esta modalidad es una de las ms complejas y es muy til cuando que quiere detener la
ejecucin de un programa cuando se dan dos condiciones (A, B) de disparo de un
Breakpoint en programas complejos donde tenemos que estar seguros que nuestro
programa pas por una lnea de cdigo en particular y luego por otra lnea, lo que nos
asegura que se han cumplido ciertas condiciones en nuestro programa.
En nuestro humilde ejemplo, solo pretenderemos mostrar que, por ejemplo, el LED1 haya
sido encendido por la lnea de cdigo correspondiente dentro de la sub rutina de atencin
de interupcin del Timer TPM1 incorporada en la rutina de inicializacin MCUinit y
que luego de ello al salir de la misma, detener nuestro programa justo cuando este ejecute
la instruccin BRA mainloop que nos asegura que el LED1 se encontrar encendido y
el programa fuera de la interrupcin por timer.
Para ello seguiremos los siguientes pasos:
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
76
1) Ubicaremos en la ventana de cdigo (Source), la lnea INC N_encend y con el
botn derecho del mouse estableceremos un Breakpoint A en dicha lnea, lo que
quedar indicado con una A de color rojo en el extremo izquierdo de dicha lnea,
como se puede ver en la Figura 34.-
Figura 34.-
3) A continuacin ubicaremos en la misma ventana Source la lnea de cdigo
BRA mainloop y estableceremos un Breakpoint B en dicha lnea, lo que
quedar indicado con una B de color rojo en el extremo izquierdo de dicha lnea,
como se puede ver en la Figura 35.-
Figura 35.-
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
77
3) En este ltimo breakpoint haremos click con el botn derecho del mouse y elegiremos la
opcin Open Triger Settings Dialog y luego elegiremos la opcin Instruction at
Address A then at Addres B was executed como se muestra en la Figura 36.-
Figura 36.-
Con ello hemos preparado al sistema para detenerse solo si se cumplen ambas condiciones
de disparo (A y luego B) y a continuacin procederemos a correr el programa.
Luego de unos de instantes, la ejecucin del programa se detendr en la lnea de cdigo
BRA mainloop y con el LED1 encendido tal como habiamos planificado, como se
muestra en la Figura 37.-
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
78
Figura 37.-
Hasta aqu se han visto los aspectos principales de uso del entorno integrado CodeWarrior,
sugerimos al lector ampliar sus conocimientos por medio del uso de la opcin Help que
dispone el entorno, la lectura detallada de la nota de aplicaciones AN2596 Using the
HCS08 Family On-Chip In-Circuit Emulator (ICE) y adems consultar los numerosos
manuales y tutoriales disponibles en el sitio web de Freescale
(www.freescale.com/codewarrior ).
En el CD ROM de instalacin, tambin se puede encontrar una carpeta bajo el nombre
Bibliografa CodeWarrior que contiene todo lo mencionado anteriormente, ms una
gran cantidad de informacin til para aprender con dicho entorno.
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
79
8.0 Ubicacin fsica de Conectores e interfaces de comunicacin.
Posicin correcta de 2 placas EDUKIT08 para comunicacin IRDA.
CN5
POWER PLUG
CN1
USB MON08
CN2
RS-232C MON08
LCD1
Display LCD 16 x 2 Con Backlight
PR1
Contraste
DSP1 / DSP4
Display 7 Segmentos
CN6
RS-232C
SCI 1
CN7
RS-232C
SCI 2
CN8_IN / CN8_OUT
TX RS - 485
CN9_IN / CN9_OUT
RX RS - 485
Puerto IRDA
CN10
BDM
HC9S08
F1 / FUSE
SW4 SW3 SW2 SW1
PR2
Vin A/D
Temp
A/D
LD4
PWM
LD7 / LD9
SW6
GND
CN3
CN4
SW7
SW5
LD6
LD5
LD11
LD3
LD10
LD1
LD2
Placa PLUGINxx
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
80
Conexin tpica entre 2 PCs y el sistema EDUKIT08 utilizado como Gateway
(comunicacin a distintas velocidades) entre puertos RS-232C / RS-232C.
Asignacin de Pines en conectores DB9 Hembras CN6 / CN7 (RS 232C)
Pin Nro Funcin
1 N.C.
2 RX_PC
3 TX_PC
4 N.C
5 GND
6 N.C.
7 N.C.
8 N.C.
9 N.C.
Cable Serial
Tipo Null Modem
DB9 / DB9
(Macho / Hembra)
Cable Serial
Tipo Null Modem
DB9 / DB9
(Macho / Hembra)
EDUKIT08
PC
RS 232C
COM x
PC
RS 232C
COM x
CN6 / CN7
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
81
Notas Importantes:
Nota 1:
Para una mejor comprensin del sistema EDUKIT08 se sugiere efectuar las numerosas
prcticas contenidas en el CD ROM de instalacin del Kit en la carpeta PRACTICAS
y leer atentamente la Gua de trabajos Prcticos contenida en dicha carpeta.
Nota 2:
Para aquellos estudiantes avanzados que pretendan tener un mayor dominio del sistema
EDUKIT08 para realizar prcticas adicionales a las ya dispuestas, se sugiere consultar los
diagramas elctricos de todo el sistema contenidos en la carpeta ESQUEMATICOS del
CD ROM de instalacin.
Nota 3:
Los usuarios que deseen profundizar conocimientos del manejo del mdulo SCI Infrarrojo
(IRDA) se sugiere leer atentamente la Seccin 14 Infrared Serial Communications
Interface Module (IRSCI) del manual de Datos Tcnicos del MCU MC68HC908AP
contenido en el CD ROM de instalacin.
Nota 4:
El sistema EDUKIT08 dispone de un sitio web especial donde se podr encontrar nuevas
prcticas de los distintos mdulos de las familias de 8 y 32 Bits de Freescale, material
adicional, correcciones u observaciones de ingeniera, novedades como placas de
expansin, nuevas placas PLUGIN, as como todo otro material relacionado con el
sistema didctico.
El link es: www.edudevices.com.ar
Nota 5:
ICAP01.asm
Muestra en el LCD la frecuencia y el ancho de pulso de la seal generada por el
microcontrolador QY4 (U12) utilizando el mdulo ICAP. En este caso el cambio de
modalidad se hace por medio del pulsador SW6 por lo cual la prctica requiere el jumper
JP22 en la posicin 2-3.
ICAP02.asm
Es semejante a la prctica ICAP01.asm pero se diferencia en que el cambio de modalidad
en la seal de PWM se hace por medio de la comunicacin SPI. Inicialmente el
microcontrolador HC9S08AW60 (contenido en la placa PLUGIN_AW) establece la
modalidad 0 y el programa comienza a medir frecuencia y ancho de pulso.
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
82
Si el usuario oprime el pulsador SW1 pasa a un modo de seleccin de seal de PWM. All
puede elegir entre las 8 modalidades. Al oprimir SW1 nuevamente se inicia la medicin
por ICAP.
Nota 6:
SPI01.asm
Muestra en el LCD las leyendas:
Address: XXX
Data: YYY
Donde el microcontrolador HC9S08AW60 (contenido en la placa PLUGIN_AW)
consultar la direccin XXX de la tabla del microcontrolador QY4 (U12) por SPI ,
obteniendo como resultado el byte YYY que muestra en el LCD.
Con los pulsadores SW1 y SW2 puede cambiar la direccin XXX entre 0 y 255. Cada vez
que se la cambi la direccin el microcontrolador HC9S08AW60 consultar nuevamente
por SPI para leer la tabla.
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
83
9.0 Gua Rpida de uso.
A continuacin se darn los pasos mnimos a efectuar para hacer uso del sistema didctico
EDUKIT08 en todos sus modos de funcionamiento.
Modo Monitor MON08 (Borrado / Grabacin / Emulacin en Tiempo Real):
(Solo VALIDO para placa PLUGIN_AP (HC908)!!)
1) Verificar que la placa PLUGIN_AP se encuentra correctamente conectada en el Area
de PLUGIN de la placa principal segn las indicaciones grficas que poseen ambas.
2) Configurar los Jumpers de la siguiente forma:
JP1 ---- Placa PLUGIN_AP ---- Posicin 2-3 (oscilador externo 20 Mhz).
JP2A / JP2B / JP2C --- Placa Principal
Posicin 1-2 ---- Uso del Puerto Serial RS-232C CN2 al COMx de la PC.
(usar fuente de alimentacin Externa!!).
Posicin 2-3 ---- Uso del Puerto Serial USB CN1 al puerto USB 2.0 de la PC.
(No usar fuente de alimentacin Externa!!).
JP3 --- Placa Principal ---- Posicin 1-2 (Control de alimentacin por DTR).
JP4 --- Placa Principal ---- Posicin 2-3 (+VHIGH en pin RESET)
JP5 --- Placa Principal ---- Posicin Cerrado (Manejo del pin de Reset)
JP6 --- Placa Principal ---- Posicin Cerrado (Manejo del pin de IRQ)
Otros Jumpers configurar segn los distintos perifricos que se quieran utilizar (ver
seccin asignacin de jumpers).
3) Si se utiliza el Puerto Serial USB CN1 para la comunicacin EDUKIT08 PC, se
deber proceder a la instalacin de los Drivers USB necesarios para que el sistema
operativo de la PC reconozca el sistema EDUKIT08 (ver seccin instalacin del
puerto de comunicacin).
4) Instalar el entorno de trabajo integrado WinIDE (PKG08SZ) segn las indicaciones de
la seccin Instalacin del Entorno WinIDE.
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
84
5) Grabar y Ejecutar en el entorno WinIDE EDUKIT08 los programas demos de
prctica segn las indicaciones de cada uno de ellos.
Modo Usuario (Ejecucin de los programas en Flash):
(Para HC908 sin uso de la PC, placa PLUGIN_AP)
(Para HC9S08 / Serie Flexis HC9S08 / Serie Flexis V1 ColdFire, placas PLUGIN_xx)
1) Tener en cuenta de descargar el programa (grabar en memoria Flash del MCU) a
ejecutar antes de entrar en el modo usuario, sin conexin a PC (Solo en HC908).
En las dems familias de MCUs, el sistema EDUKIT08 estar en Modo Usuario por
defecto y podr entrar o salir de este modo o del Modo Background solo por accin
de la herramienta BDM externa conectada al conector CN10 (Al desconectar el arns
de la herramienta de CN10, y luego efectuar un Reset del sistema EDUKIT08 este
correr en Modo Usuario ejecutando el programa del usuario sin uso de herramienta
alguna).
2) Configurar los jumpers del sistema segn lo siguiente:
JP1 ---- Placa PLUGIN_AP ----- Posicin 1-2 (oscilador Xtal 32,768 Khz y PLL)
(Tener en cuenta de habilitar las lneas de cdigo de
configuracin del PLL para que este genere la
frecuencia de Bus (FBUS) deseada)
Posicin 2-3 (oscilador Externo 20 Mhz sin PLL)
(Tener en cuenta de comentar lneas de cdigo de
configuracin del PLL para que este no funcione.
JP1 ---- Placas PLUGIN_xx ----- Posicin 1-2 (oscilador Xtal 32,768 Khz y FLL)
(Tener en cuenta de habilitar en el CodeWarrior las
lneas de cdigo de configuracin del FLL para que
este genere la frecuencia de Bus (FBUS) deseada)
Posicin 2-3 (oscilador Externo 20 Mhz sin FLL)
(Tener en cuenta de configurar al CodeWarrior para
que el FLL no funcione y tomar como referencia el
oscilador externo.
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
85
JP2A/JP2B/JP2C ---- Placa Principal ---- No importa la posicin (no conectar a la PC
por CN1)
JP3 ---- Placa Principal ----- Posicin 2-3 (Sistema siempre alimentado DTR = 0)
JP4 ---- Placa Principal ----- Posicin 1-2 (+VDD en pin RESET)
JP5 ---- Placa Principal ---- Posicin Abierto (No hay manejo del pin RESET en HC908).
JP6 ---- Placa Principal ----- Posicin Abierto (No hay manejo del pin IRQ en HC908).
Otros Jumpers configurar segn los distintos perifricos que se quieran utilizar (ver
seccin asignacin de jumpers).
3) Proceder a alimentar al sistema EDUKIT08 con una fuente externa por medio del
conector CN5 Power PLUG en la placa principal del sistema.
4) Si la aplicacin no tiene un buen arranque (no se ejecuta correctamente) presionar el
pulsador SW5 (RESET) para generar un reset general del sistema y un comienzo
controlado del programa de aplicacin.
Modo Usuario / Modo Background en HC9S08 / HC9S08 Flexis / V1 Coldfire:
5) Si lo que se pretende es depurar un programa (borrar / grabar / emular) por medio del
mdulo BDM entonces hacer lo siguiente:
5_1) Conectar la herramienta de emulacin BDM (R(S)_POD /
USBMULTILINKBDME) al conector BDM CN10 en la placa principal del
sistema EDUKIT08.
5_2) Proceder a alimentar al sistema EDUKIT08 con una fuente externa por medio del
conector CN5 Power PLUG en la placa principal del sistema.
5_3) Ejecutar el entorno CodeWarrior, junto con la herramienta elegida segn las
indicaciones del manual de usuario de la placa PLUG_IN elegida.
PLUGIN_AW Manual de Usuario Versin 1.0 EduDevices
Diseado por: Ing. Daniel Di Lella www.edudevices.com.ar
D.F.A.E
86
6) Si lo que se pretende es correr un programa en el modo usuario, ya grabado en la
memoria Flash del MCU, entonces hacer lo siguiente:
6_1) Proceder a alimentar al sistema EDUKIT08 con una fuente externa por medio del
conector CN5 Power PLUG en la placa principal del sistema.
6_2) Si la aplicacin no tiene un buen arranque (no se ejecuta correctamente) presionar
el pulsador SW5 (RESET) para generar un reset general del sistema y un comienzo
controlado del programa de aplicacin.

Das könnte Ihnen auch gefallen