2.1 Motivo de la elecciónread.pudn.com/downloads184/sourcecode/compiler/862355/2_HCS12.pdf · tal...

24
2 2 EL MICROCONTROLADOR HCS12 2.1 Motivo de la elección Nos hemos decantado por este microcontrolador fundamentalmente por su similitud y compatibilidad con el 68HC11, que es el que hemos estado utilizando hasta ahora. También ha sido un factor determinante la disponibilidad. Al comenzar el proyecto se pensaba trabajar con un Motorola ColdFire, pero se descartó esa posibilidad debido a la dificultad de encontrar algún distribuidor al que comprarlo en cantidades pequeñas. En cambio el HCS12 está disponible en Farnell a un precio razonable: 26€. Como veremos más adelante, el HCS12 posee características muy potentes que cumplen de sobra con las exigencias de nuestros próximos proyectos. Además, existe en la web una gran cantidad de información sobre este micro. El HCS12 se ha convertido en poco tiempo en un micro muy popular, lo que supone una ventaja a tener en cuenta. En Farnell encontramos disponibles 4 modelos de la familia HCS12: MC9S12DP256BCPV MC9S12DG256BCFU MC9S12A256BCPV MC9S12A256BCFU Las referencias se interpretan como sigue: MC: Estado del producto. MC: totalmente cualificado; XC: Parcialmente cualificado; KMC y KXC: muestra. 9: Tipo de memoria. 7=OTP, 8=EEPROM, 9=FLASH. En la familia HCS12 la memoria principal es de tipo Flash, por lo que todos los modelos son “MC9S12”. S12: Núcleo. DG___B: Subfamilia. Entre otras cosas da una idea de los periféricos que podemos encontrar. 256: Cantidad de memoria Flash en kB.

Transcript of 2.1 Motivo de la elecciónread.pudn.com/downloads184/sourcecode/compiler/862355/2_HCS12.pdf · tal...

22 EELL MMIICCRROOCCOONNTTRROOLLAADDOORR HHCCSS1122

2.1 Motivo de la elección Nos hemos decantado por este microcontrolador fundamentalmente por su similitud y compatibilidad con el 68HC11, que es el que hemos estado utilizando hasta ahora. También ha sido un factor determinante la disponibilidad. Al comenzar el proyecto se pensaba trabajar con un Motorola ColdFire, pero se descartó esa posibilidad debido a la dificultad de encontrar algún distribuidor al que comprarlo en cantidades pequeñas. En cambio el HCS12 está disponible en Farnell a un precio razonable: 26€. Como veremos más adelante, el HCS12 posee características muy potentes que cumplen de sobra con las exigencias de nuestros próximos proyectos. Además, existe en la web una gran cantidad de información sobre este micro. El HCS12 se ha convertido en poco tiempo en un micro muy popular, lo que supone una ventaja a tener en cuenta. En Farnell encontramos disponibles 4 modelos de la familia HCS12:

MC9S12DP256BCPV MC9S12DG256BCFU MC9S12A256BCPV MC9S12A256BCFU

Las referencias se interpretan como sigue:

MC: Estado del producto. MC: totalmente cualificado; XC: Parcialmente cualificado; KMC y KXC: muestra. 9: Tipo de memoria. 7=OTP, 8=EEPROM, 9=FLASH. En la familia HCS12 la memoria principal es de tipo Flash, por lo que todos los modelos son “MC9S12”. S12: Núcleo. DG___B: Subfamilia. Entre otras cosas da una idea de los periféricos que podemos encontrar. 256: Cantidad de memoria Flash en kB.

GRYS-ELAI-Documentos Internos

Javier Alberola Perales 34

C: Rango de temperaturas. C:-40ºC a 85ºC; V:-40ºC a 105ºC; MM: -40ºC a 125ºC. FU: Encapsulado. FU=80QFP, PU=112LQFP.

Los dos últimos fueron descartados por no tener bus CAN, y de entre los dos primeros nos quedamos con el segundo por su menor número de patillas (80 frente a 112), que nos facilitaría el diseño de la placa contando con unas prestaciones similares. No obstante debemos decir que el primer modelo es tal vez el más utilizado por los aficionados, y que hasta ahora ha sido el “buque insignia” de la flota de los HCS12 por su gran cantidad de periféricos.

2.2 Características generales

2.2.1 Núcleo El HCS12 utiliza el mismo modelo de programación del 68HC11. El juego de instrucciones del HC11 se ha mantenido en su totalidad, aunque unos pocos mnemónicos han cambiado.

El modelo de programación es idéntico al del 68HC11

Plataforma de desarrollo basada en el microcontrolador HCS12

Octubre 2004 35

Mnemónicos que cambian con respecto al 68HC11

Con el objeto de lograr una ejecución más eficiente se ha mejorado la CPU en los siguientes aspectos:

Bus de datos de 16 bits pudiendo direccionar bytes impares y existiendo instrucciones que manejan bytes.

Frecuencia del bus interno hasta 25MHz.

Se han añadido 66 instrucciones nuevas, incluidas las de lógica

borrosa.

Nuevos modos de direccionamiento e indexación, orientados a mejorar la eficiencia de códigos compilados.

Algunas instrucciones heredadas del 68HC11 tienen ahora un código

objeto de menor tamaño.

Las instrucciones de multiplicación y división heredadas del 68HC11 pasan de ejecutarse en 10 y 41 ciclos a ejecutarse en 3 y 12. Las 6 nuevas instrucciones de multiplicación y división son igualmente rápidas.

Otras características reseñables del núcleo del HCS12 son:

Procesamiento de instrucciones es similar al del 68HC11, con 3 vectores de Reset.

GRYS-ELAI-Documentos Internos

Javier Alberola Perales 36

Oscilador Colpitts de bajo consumo. COP (Computer operating Properly)

Clock Monitor (Activa un reloj interno si falla el externo).

Modo de depuración BDM (Background Debug Mode), con

intervención mínima de la CPU. Modos de bajo consumo.

Breakpoints hardware.

2.2.2 Periféricos y memoria Estos elementos varían de un modelo a otro, por lo que nos limitaremos a enumerar los del modelo elegido, el DG256, que es uno de los más completos.

Puertos de 8 y 4 bits con posibilidad de interrupción ante la detección de un flanco descendente o ascendente. Las 65 líneas son configurables como entradas o salidas a niveles TTL. Algunos puertos pueden configurar sus salidas a colector abierto, permitiendo realizar puertas AND cableadas (wired-AND)

256kB de Flash, 4kB de EEPROM y 12kB de RAM. La memoria

puede ser remapeada, y puede protegerse el acceso a determinadas áreas.

8 líneas de conversor A/D de 10 bits, con patilla para disparo

externo. La conversión dura un mínimo de 7us, aunque puede bajarse la resolución a 8 bits para reducir ese tiempo.

7 generadores de PWM de 8 bits o 4 de 16 bits con periodo y duty

programables independientemente. Ponen a nuestra disposición una gran variedad de frecuencias, y si se desea las distintas salidas se pueden alinear respecto de los flancos ascendentes o descendentes.

Contador de 16 bits con preescaler de 7 bits, con dos acumuladores

de pulsos, 8 comparadores de salida (OC) y 8 capturadores de entrada (IC).

Plataforma de desarrollo basada en el microcontrolador HCS12

Octubre 2004 37

3 puertos serie síncronos de alta velocidad (SPI).

2 puertos serie asíncronos (SCI)

Bus I2C. No soporta el direccionamiento de 10 bits.

Bus CAN 2.0 A y B con velocidad de hasta 1Mbps. El filtro de

identificación puede ser configurado a 2 x 32 bit, 4 x 16 bit o 8 x 8 bit. Incluye funciones de autotest y wake-up.

Posibilidad de acceder al bus paralelo interno.

Regulador interno de 2.5V para alimentar la CPU, reloj, PLL y el

resto de la lógica interna. Bomba de carga interna para obtener la tensión necesaria para

programar la memoria Flash (13.8V). A continuación se muestra un diagrama de bloques de la versión DP del HCS12, el modelo más completo actualmente. Nuestro modelo, el DG256B, al tener 80 patillas en vez de 112, no dispone de los pines cuyos nombres están en negrita. Tampoco posee el módulo para comunicaciones J1850 (un bus similar al CAN pero no tan popular), y sólo dispone de 2 puertos CAN, no de 5.

GRYS-ELAI-Documentos Internos

Javier Alberola Perales 38

Diagrama de bloques del MC9S12DP256.

Plataforma de desarrollo basada en el microcontrolador HCS12

Octubre 2004 39

Patillaje del MC9S12DG256BCFU, la versión elegida para nuestro proyecto.

GRYS-ELAI-Documentos Internos

Javier Alberola Perales 40

2.3 Modos de funcionamiento La CPU del HCS12 tiene 8 modos de funcionamiento, que se seleccionan mediante las entradas MODA, MODB y MODC/BKGD. Estas entradas se leen durante el flanco ascendente de la señal de Reset; tras ese instante estas patillas tienen otras funciones. Estos modos de funcionamiento hacen referencia la manera con que se trabaja con el puerto paralelo y con el BDM. El siguiente cuadro muestra los modos de funcionamiento de la CPU en función de los niveles de tensión presentes en MODA, MODB y MODC al efectuar el reset. También se especifica el modo en que se usa el puerto paralelo o puerto de expansión.

Modos normales: No permiten el acceso desde el exterior a ciertos

registros de control para que no sean modificados accidental o malintencionadamente. Se puede cambiar de un modo normal a otro modo normal durante el funcionamiento, pero sólo una vez.

Modos especiales o modos de emulación: Permiten acceder a los

registros de control y modificarlos. Se puede cambiar de un modo especial a otro modo especial durante el funcionamiento tantas veces

Plataforma de desarrollo basada en el microcontrolador HCS12

Octubre 2004 41

como se quiera. Es posible además pasar de un modo especial a un modo normal, pero no a la inversa.

Modos Peripheral (110) y Special Peripheral (010): Son modos

reservados, que sólo se utilizan durante la fabricación del micro. Al modo Special Peripheral se le llama también Special Test.

Modos Single Chip: Permiten usar las líneas de los puertos A y B

como E/S normales.

Expanded Wide: los puertos A y B se convierten en un bus paralelo de 16 bits de datos y direcciones, en el que se multiplexan las líneas de direcciones con las de datos.

Modos Expanded Narrow: los puertos A y B se convierten en un

bus paralelo de 8 bits de datos y 16 bits de direcciones, en el que se multiplexa el bus de datos con la parte baja del bus de direcciones.

Nosotros trabajaremos sólo con el modo Normal Single Chip.

2.4 BDM (Background Debug Mode) El BDM (Background Debug Mode) es un sistema de depuración que apenas interfiere en la ejecución de los procesos de la CPU, por lo que la depuración es prácticamente a tiempo real. El BDM es similar al JTAG aunque las interferencias son un poco mayores ya que dicho bus contiene una pequeña capa de software (programa residente) que se encarga de monitorizar la ejecución y obtener los valores instantáneos de cada registro. Últimamente los desarrolladores de JTAG están tendiendo a ampliar la capacidad de su sistema incluyendo capas de software en algunos casos. Por contra, los desarrolladores de BDM intentan llevarlo todo al hardware o al menos, colocar el software en memorias independientes, etc. Al final ambos métodos tienen una frontera cada vez menos nítida. Para trabajar con el BDM se requiere, aparte del software de comunicaciones (a instalar en el PC), un interface o POD que conectaremos por un lado a algún puerto del PC y por el otro al conector BDM de nuestra tarjeta.

GRYS-ELAI-Documentos Internos

Javier Alberola Perales 42

Conexión de un POD vía puerto paralelo.

Cuando se trabaja con el BDM, el PC puede enviar al HCS12 instrucciones de dos tipos: Hardware y Firmware. Las instrucciones Hardware se utilizan para leer o escribir en las distintas posiciones de memoria, y también para pasar al modo BDM activo. Las instrucciones Firmware se utilizan para leer y escribir en los registros de la CPU tales como contador de programa, puntero de pila, etc. y para salir del modo BDM activo. Los comandos Firmware sólo pueden ser ejecutados cuando el BDM está activo, mientras que los comandos Hardware pueden ser ejecutados en cualquier momento, salvo excepciones.

El BDM puede ser utilizado en todos los modos de funcionamiento de la CPU, pero sólo en el Special Single Chip está habilitado y activo desde el principio. En los otros modos habrá que habilitarlo y/o activarlo. El siguiente dibujo representa un conector BDM. La patilla Vfp (Voltage flash programming) se utiliza para suministrar al micro la tensión necesaria para grabar la memoria Flash. Pero, como comentábamos anteriormente, los HCS12 disponen de una bomba de carga interna con la que pueden obtener esa tensión, y por tanto en nuestra tarjeta la patilla Vfp del conector no irá conectada a ningún sitio. Esta es una de las diferencias entre el 68HC12 y el HCS12.

Plataforma de desarrollo basada en el microcontrolador HCS12

Octubre 2004 43

Conector BDM

2.5 El firmware D-Bug12 El conector BDM se utiliza también para la programación en circuito de las memorias Flash y EEPROM. El 68HC11 tenía grabado en su ROM un programa de descarga, llamado Bootstrap, gracias al cual podía ser programado directamente desde el PC vía puerto serie, sin que mediase más hardware que un circuito adaptador de niveles tipo MAX232. En el HCS12 en principio esto no es posible, lo que nos obliga a comprarnos un POD. Sin embargo, es posible grabar en la Flash del HCS12 un programa residente de manera que, a partir de entonces, el micro pueda ser programado sin necesidad de un POD, a través del puerto serie o de cualquier otro puerto disponible en la tarjeta. El programa D-Bug12 permite, entre otras cosas, programar la tarjeta directamente desde el puerto serie sin utilizar un POD. Muchas tarjetas de evaluación para HCS12 vienen con ese firmware, por lo que la adquisición de una de ellas nos evitaría la necesidad de comprar un POD, aunque podría ser interesante tenerlo para aprovechar las virtudes de la depuración BDM. Otra de las funciones del programa D-Bug12 es que permite que nuestra tarjeta funcione como un POD. Es decir, que con una tarjeta cuyo micro tenga el firmware D-Bug12 podrá ser utilizada para grabar la memoria de otros HCS12 o para depurar sus programas. El D-Bug12 tiene cuatro modos de funcionamiento que podremos seleccionar modificando el nivel lógico de las patillas PAD00 y PAD01:

GRYS-ELAI-Documentos Internos

Javier Alberola Perales 44

1.- Modo EVB (Evaluation Board): Seleccionaremos este modo cuando queramos utilizar el depurador residente D-Bug12, o para cargar programas en la EEPROM sin utilizar un pod. El PC se comunica con la tarjeta vía RS-232 (típicamente a través del SCI0) mediante un software tipo Hyper-Terminal. Este programa está presente en todos los PCs que funcionan bajo Windows, y podemos acceder a él haciendo clic en el botón de Inicio/ Programas/ Accesorios/ Comunicaciones/ Hyper-Terminal.

2.- Modo Jump to EEPROM: Tras el reset se ejecuta el programa

del usuario contenido en la EEPROM.

3.- Modo POD: La tarjeta funciona como POD o interface BDM/RS-232 entre el PC y otra tarjeta. La tarjeta que hace de POD se conecta al cable BDM en el terminal BDM out. Este modo permite programar el HCS12 (de la tarjeta que no hace de POD) aunque éste no tenga cargado ningún firmware como el D-Bug12.

4.- Modo Bootload: Tras pulsar el reset se ejecuta el Bootloader o

programa de bootload (descarga). Permite grabar la memoria Flash vía puerto serie sin que medie un POD. Al cargar el programa se borrará parte del programa D-Bug12, concretamente la parte del depurador residente y la que hace que la tarjeta pueda funcionar como POD. Sin embargo no se borrará la parte correspondiente al programa de descarga, ya que se encuentra en una zona protegida de la Flash. Si queremos, podremos restaurar el D-Bug12 por completo cargándolo de nuevo en modo Bootload. Este proceso tarda entre 10 y 15 minutos.

Plataforma de desarrollo basada en el microcontrolador HCS12

Octubre 2004 45

El programa D-Bug12 y su manual están disponibles gratuitamente en la web de Motorola.

2.6 Herramientas e información disponibles

2.6.1 Herramientas software Generalmente se trata de entornos de desarrollo (IDEs) que comprenden un editor de texto, compilador C++, simulador, programa ensamblador y enlazador, generando directamente código objeto (.S19). Son compatibles con determinados POD, de manera que se puede realizar la depuración y la grabación de la memoria desde el mismo entorno de desarrollo. Contienen potentes funciones y plantillas de código que nos permitirán centrarnos más en el propio programa en lugar de preocuparnos tanto por si hemos inicializado tal o cual registro. También incluyen varios algoritmos de optimización de código. Su precio puede resultar elevado para entornos no profesionales, pero existen versiones de evaluación (un mes), o ediciones que no caducan pero limitadas a unos pocos kB de código, lo cual es más que suficiente para empezar. Las herramientas más utilizadas son, con diferencia, las siguientes:

Codewarrior: Entorno de desarrollo creado por la empresa Metrowerks, recientemente comprada por Motorola. Es el compilador “oficial” y el más caro ($2,994.00 la versión Standard y $5,394.00 la versión Professional). La Special Edition es gratuita y está limitada a 4kB de código.

Cosmic IDEA: IDE más barato que el Codewarrior y, para algunos,

superior a él. El compilador y el debugger se pueden adquirir por separado. Existe una versión de evaluación (Eval 12) limitada a 1kB ó 150 líneas de código.

Imagecraft ICC12: Compilador C. Sin duda la opción con mejor

calidad-precio. La versión Standard cuesta $199 y la profesional $349, y no deja de ser una herramienta potente. Es más sencillo y fácil de usar que los anteriores. Hay una versión demo limitada a 45 días.

GRYS-ELAI-Documentos Internos

Javier Alberola Perales 46

NoICE: Popular software de depuración y grabación de la Flash. Está disponible una versión de evaluación completamente funcional durante 30 días. Es compatible con el POD ComPod12, entre otros.

Entorno de desarrollo Codewarrior

2.6.2 Pods Podemos encontrarlos con distintas características y precios, de la mano de diversos fabricantes. Nos limitaremos aquí a enumerar los más representativos:

Axiom DB12BDM: Se comunica con el PC vía puerto serie hasta a 38.4kbps. La frecuencia del reloj de la tarjeta debe estar entre 2 y 16MHz. Soporta los modelos HC12A4, 912B32, 912BC32, 912D60,

Plataforma de desarrollo basada en el microcontrolador HCS12

Octubre 2004 47

912DA128, 912DG128, 912DT128. Compatible con CodeWarrior, Cosmic, ICC12, GCC y otros.

Elektronikladen ComPod12: Compatible con una gran cantidad de

modelos de 68HC12 y HCS12, incluido el DG. Incluye el sencillo software StarProg, con el que podremos grabar la Flash y la EEPROM del microcontrolador. Es la opción elegida para este proyecto, por estar disponible en Aliatron (Portugal) a un precio de 142€.

P&E: Ofrece el BDM Multilink, que detecta automáticamente la

frecuencia de trabajo del bus interno del micro, por lo que no hay que configurar nada. Su precio es de 272€ en Farnell. A un precio menor, y con características similares a los PODs de Axiom y Elektronikladen, teníamos el Cable12, pero se ha dejado de fabricar. Por último, está disponible un modelo que se conecta al PC vía USB: el USB-ML-12. Sus características son similares a las del BDM Multilink.

Noral: Su Flex-BDM/68HC12 es algo más complejo internamente,

lo que le permite una flexibilidad superior a la de otros PODs. Por ejemplo, permite trabajar con un reloj externo al microcontrolador.

Tantino: POD con conexión USB de la casa Hitex.

Kevin Ross BDM12: POD diseñado por Kevin Ross. Se puede pedir

el kit montado o los componentes, la placa para soldarlos y la placa. Incluye un PIC ya programado, que es el que realiza la conversión del protocolo. Es el más barato: 59.95€.

ComPod12, el POD elegido para este proyecto.

GRYS-ELAI-Documentos Internos

Javier Alberola Perales 48

Software de Axiom para depuración y grabación de la memoria.

Antes de comprar uno debemos asegurarnos de que soporte los modelos de HCS12 que nos proponemos programar, pues en ocasiones hay incompatibilidades. También deberemos verificar la compatibilidad con nuestro software de depuración si dispusiéramos de él. El software para grabar la Flash/EEPROM generalmente es gratuito o viene incluido con el POD.

2.6.3 Emuladores Además de PODs existen en el mercado emuladores para el HCS12. Sin embargo, debido a su elevado precio, no nos hemos planteado la adquisición de uno, y menos teniendo la posibilidad de emplear la depuración BDM, que es casi como una emulación. No obstante se detallan a continuación los principales fabricantes, por si el lector estuviera interesado en adquirir uno.

Hitex i-System Lauterbach Nohau Noral

Plataforma de desarrollo basada en el microcontrolador HCS12

Octubre 2004 49

2.6.4 Tarjetas de evaluación Hay muchas marcas y modelos. Las más básicas son muy similares: incluyen la circuitería de reloj, el circuito de reset, el lazo de compensación del PLL, un regulador lineal tipo 7805 y los transceptores para la comunicación RS-232 y CAN, si el micro lo soporta. Algunas incorporan un área de prototipos. Otras más avanzadas incorporan chips de memoria externa, conversores D/A, adaptador USB, LIN, LCD, etc. Dado que un microcontrolador se concibe como una solución integrada en un chip, habría que preguntarse hasta qué punto tiene sentido el añadir muchos periféricos externos en lugar de buscar un micro que dispusiera ya de ellos.

2.6.4.1 Motorola Incluye lo básico para trabajar con el micro: el circuito de reloj, PLL, reset y MAX232. En su Flash trae grabado el programa D-Bug12, por lo que no necesitaremos un POD para programarla.

Tarjeta de evaluación de Motorola.

GRYS-ELAI-Documentos Internos

Javier Alberola Perales 50

2.6.4.2 Elektronikladen La tarjeta T-Board es la más sencilla que este fabricante alemán ofrece para el HCS12. Al igual que ocurre con el resto de sus tarjetas de evaluación, sus esquemas están diponibles en la web, lo que nos puede ser de gran ayuda a la hora de diseñar nuestra propia tarjeta. Precisamente para este proyecto se ha tomado ésta como punto de partida. Incluye el micro DP y, aparte de los circuitos básicos, incluye un potenciómetro para trabajar con el ATD, una barra de leds, un buzzer, microswitches y un led bicolor para experimentar con el PWM. Está preparada con un par de jumpers para poder trabajar con el D-Bug12 en sus distintos modos y, por supuesto, tiene conectores BDM de entrada y salida. La disposición de los pines permite conectar la tarjeta a una de ampliación de memoria (256kB) sin necesidad de cables.

Tarjeta T-Board

La S12 Compact es algo más compleja que la anterior. Incluye USB, y un conversor A/D de mayor resolución que el integrado en el HCS12, conversor D/A, reloj de tiempo real (para calendarios, etc) y ampliación de memoria Flash.

Plataforma de desarrollo basada en el microcontrolador HCS12

Octubre 2004 51

Tarjeta S-12 Compact

El módulo Chip S12 no es una tarjeta de evaluación propiamente dicha. Permite trabajar con el HCS12 en una protoboard como si se tratase de un chip en formato DIP, pero incluyendo la circuitería de reloj, reset, PLL, RS-232, CAN y memoria externa. No tiene nada que ver con los Stamps (Basic Stamp, JStamp, etc) los cuales llevan un intérprete de algún lenguaje de alto nivel que permite programarlos directamente en dicho lenguaje.

Tarjeta de evaluación para el módulo Chip S12

GRYS-ELAI-Documentos Internos

Javier Alberola Perales 52

Tarjeta Chip S12

2.6.4.3 Hitex

Su tarjeta EVA-S12 incluye:

LEDs para la visualización de las salidas pulsadores Switches para simulación de entradas Soporte mara modos expandidos Regulador de tensión Conector BDM Interface para LIN y RS-232 5 transceptores Conectores de expansión Área de prototipos.

2.6.5 Sistemas operativos CMX Systems desarrolla sistemas operativos multitarea para microprocesadores y microcontroladores de 8 y 16 bits. Existe una versión soportada por el HCS12, cuyas características podremos ver en http://www.cmx.com/rtx.htm.

2.6.6 Páginas web, foros y libros Dado el parecido de las familias 68HC12 y HCS12, la información disponible para los primeros nos será igualmente útil de cara a terminar nuestro proyecto. Como veremos, actualmente casi toda la documentación hacer referencia a los 68HC12, porque llevan mucho más tiempo en el mercado. La información muchas veces no se actualiza porque casi todo

Plataforma de desarrollo basada en el microcontrolador HCS12

Octubre 2004 53

sigue siendo compatible con los HCS12, e incluso muchas de las herramientas hardware y software sirven igualmente para una u otra familia.

2.6.6.1 Páginas web El lector encontrará en la bibliografía de este capítulo y de algunos otros muchos links a los que acudir en busca de información, aunque, para el que empieza, la cantidad de referencias citadas puede resultar excesiva. El mejor punto de partida sería la página web del fabricante, www.motorola.com , aunque podríamos añadir otra de referencia obligada: la página de Oliver Thamm sobre los 68HC12 y HCS12 (http://elmicro.com/hc12web/). Aquí encontraremos gran cantidad de links clasificados por temas e idiomas, foros, bibliografía, etc.

2.6.6.2 Foros Hay muchos, pero quisiera citar aquí los que realmente me han ayudado en este proyecto:

Microbótica: En español. Principiantes y expertos se reúnen aquí para compartir sus conocimientos de microrrobótica, tratando temas como electrónica, programación, estructuras, sistemas GPS… Para inscribirse: [email protected]

68HC12: En inglés. Aquí encontraremos ingenieros y proyectistas

de empresas como Motorola, Nohau, Elektronikladen, etc. Como su nombre indica, los temas se centran en los microcontroladores 68HC12 y HCS12. Para inscribirse: [email protected]

2.6.6.3 Libros Para este proyecto no se consultado ningún libro sobre el 68HC12/HCS12, pues con la documentación disponible en internet ha sido suficiente. No obstante citamos a continuación tres de ellos. Título: Software and Hardware Engineering - Motorola M68HC12 Autores: FREDRICK M. CADY, Montana State University, y JAMES SIBIGTROTH, Motorola Company Precio: $64.95

GRYS-ELAI-Documentos Internos

Javier Alberola Perales 54

Título: Programming the Motorola M68HC12 Family Autor: Gordon Doughman (ingeniero de Motorola, autor de numerosas notas de aplicación sobre el 68HC12/HCS12 y perteneciente al foro 68HC12) Precio: 27.97$ en www.amazon.com

Título: 68HC12 Microcontroller Autores: Daniel J. Pack y Steven F. Barrett Precio: 68$ en www.amazon.com

Plataforma de desarrollo basada en el microcontrolador HCS12

Octubre 2004 55

Documentación introductoria (Motorola)

EB376/D. A comparison of the MC9S12DP256 (mask set 0K36N) versus the HC12.

EB376. A comparison of the MC9S12DP256 (mask set 0K36N) versus the HC12.

AN1284/D. Transporting M68HC11 Code to M68HC12 Devices. The Motorola HCS12 Family of Microcontrollers Introducing the MC68HC12 Introduction to the 68HC12 Microcontroller

Manuales 9S12DG256B (Motorola)

S12ATD10B8CV2/D Analog to Digital Converter S12ATD10B8CV2/D Clock and Reset Generator S12MSCANV2/D CAN S12VREGV1/D Voltage Rebulator S12ECT16B8CV1/D Enhanced Capture Timer S12SPIV2/D SPI S12SCIV2/D SCI S12PWM8B8CV1/D PWM S12DP256PIMV2/D Port Integration Module S12IICV2/D I2C HCS12FTS256KUG/D Flash Memory HCS12EETS4KUG/D EEPROM 9S12DP256BDGV2/D Device User Guide S12CPU15UG/D Core

Esquemas de tarjetas

T-Board S-12 Compact K-Board (kopf)

GRYS-ELAI-Documentos Internos

Javier Alberola Perales 56

Páginas web

http://e-www.motorola.com/webapp/sps/site/overview.jsp?nodeId=03t3ZGpnLn8636 http://elmicro.com/hc12web/ http://www.seattlerobotics.org/encoder/jan97/The68HC12.html www.elektronikladen.de/en_index.html www.metrowerks.com www.cosmic-software.com www.imagecraft.com www.pemicro.com http://www.hitex.com/index_com.html http://www.noicedebugger.com/ www.noral.com www.technologicalarts.com www.kevinro.com/products.html www.axman.com http://www.noicedebugger.com/help/bdm12.htm#INSTALL http://www.asystelectronic.si/DistributorCorner3/Faq/ICE_HC12/ http://www.macraigor.com/zenofbdm.pdf http://courses.ece.uiuc.edu/ece345/hc12.htm http://eet.etec.wwu.edu/CPU12/podcfg.html http://www.technologicalarts.com/myfiles/links.html