Hola a todos.
Llevo una semana completa aprendiendo todo sobre esta familia de Freescale de 8 bits, los HCS08; luego de un año por fuera, por fuerza mayor, he vuelto a esta familia, dispuesto a sacrificar parte de mi tiempo libre, y dedicarle las pestañadas que se merece
; para entender la arquitectura interna, pero sobre todo, saber como dominar los HCS08 sin ayuda del muy poderoso Procesador Expert, solo con lenguaje C, que es como deberíamos aprender a programar las diferentes familias.
No tengo nada en contra de los que usan los métodos "facilistas" de hoy en día, como en CCS(PIC), Procesador Expert y hasta el Arduino
; mas bien, lo que busco es que conozcamos bien el procesador con el que estamos trabajando, sin importar la familia, marca o el nivel de dificultad del proyecto. Hace unos días en este mismo foro, encontré una frase, que desafortunadamente ya no encuentro; de un miembro de TodoPic, y él mencionaba la importancia de saber programar primero en Assembler y luego escalar a lenguajes de alto nivel, pero no los facilistas, como los que ya cité, si no el lenguaje puro como tal, ya que con esto aprendíamos a conocer el procesador más a fondo, hacer código más eficiente, a seleccionar la subfamilia más adecuada a nuestra necesidad pero sobre todo, para evitarnos dolores de cabeza cuando tuviéramos errores de compilado.
Entiendo perfectamente que estos tiempos que corren...CORREN!!! y nos pueden dejar atrás,y que por eso nacen esas alternativas "facilistas" , y nosotros las tomamos como fundamentales y básicas para hacer nuestros códigos
; pero a la hora de tener problemas quedamos perdidos, o si queremos hacer algo más a nuestro circuito, recurrimos a hardware adicional, hard que muchas veces nos podríamos haber ahorrado si conociéramos lo que es capás de hacer nuestro procesador y eso se logra, según aquel forero y mi persona, programando en lenguaje de alto nivel pero pensando en Assembler y la única forma de hacerlo así es haber pasado por assembler...
Bueno, quiero empezar a escribir un curso sobre HCS08, acá en el foro, con su teoría y práctica, como en la escuelita
..nada haríamos con solo teoría y nada llamativo, como lo son las prácticas o montajes
; pero para este propósito, necesito la ayuda de los más veteranos con Freescale, para que cuando tenga un error en mi teoría aprendida me la hagan saber; o si tienen algo más que agregarle, o comentarios, experiencias e ideas, también las digan, así aprenderemos más al respecto...se apuntan?
Como base de referencia estoy estudiando el libro de Fabio Pereira, HCS08 Unleashed , también recurro a los datasheet y AN de la web oficial de Freescale...por ejemplo, ya terminé el capitulo que explica muy bien los diferentes parámetros de configuración que tienen estos micros, como el LVD , LVDW , COP, del registro SOPT y hasta las diferentes causas que producen el Reset y como saber cuál fue la causa dentro del programa
. El curso es en lenguaje C Ansi el que se usa en CW ..uso el CW10.1 por estar en linux , pero los ejemplos del libro están para el CW 6.2 .. la verdad hasta ahora las 5 prácticas que he hecho me han salido bien, uso actualmente el pequeño S08QA4, de 8 pines, y estoy armando placas base para JM16 , QE8 y QG8 que son los que tengo en el momento..apenas para empezar
En espera de sus sugerencias y comentarios para empezar a escribir lo aprendido.
Saludos
PD: Les dejo el link del mensaje que no encontraba
Mensaje , gracias FuYiVape
//****************************************************************************************************************************************************************
//**************************************************************************************************************************
/* Bueno para este curso, creo que la mejor opción para trabar sería en MC9S08JMxx, puede ser el JM16, JM32 o el JM60 ; ya que tiene todo lo necesario para nuestras aplicaciones más comunes como:
- 6 Puertos , con más de 30 pines I/O
- Usart
- SPI
- I2C
- USB 2.0
- PWM
- Timer
- ADC de 12 bits
- ACPM , Comparador análogo
Alimentación a 5V. Ahora estoy diseñando la placa pra un JM16 con 44 pines LQFP a modo de placa prueba para poner en el protoboard.
/* El libro es el de Fabio Pereira: HCS08 Unleashed
/* A medida que vallamos progresando en el curso pondré algunas imágenes del libro, como los recuadros y las tablas de especificaciones de las diferentes subfamilias, registros, configuraciones y todo lo demás, no es un copy-paste, si no mi exposición de lo leído y de la práctica que siempre haré antes de escribirla acá.
/* Creo que el problema más grande que encuentra un aficionado o estudiante a la hora de comenzar con freescale es el programador, ya que no es tan fácil de encontrar uno casero para los HCS08; pero si persisten pueden hacerse a uno comprándolo en
Witztronics , en el sitio de descarga del OSBDM están todos los documentos y archivos para hacerse un
USBDM y en los foros de
Freescale ...hay más información.
/* Les recomiendo en lo posible buscar el JB16 ya que es el que tiene bootloader de fábrica y no necesitas de un programador adicional..o si consiguen un JM60 con el bootloader, mucho mejor
..
En Colombia pueden conseguir el programador en Medellín; o el de Octoplus que viene con bootloader y no haría falta de un programador.
/* La práctica hace al maestro..
/* A pesar de que trabajo con el CW 10.1 el CW 6.2 sirve, ya que los ejemplos del libro están hechos ahí..y como es Ansi C sin usar el Procesador Expert, pues no tendremos problema alguno.
Esta semana sacó el impreso para el JM16, ya si alguno tiene un JM diferente, pues sería bueno que se armara uno y lo compartiera...
Por ahora, seguiré editando este primer post, para que no se nos pierda el curso en el interior.
Saludos