Si además quieres enviarnos un Artículo para el Blog y redes sociales, pulsa el siguiente botón:
Hola:
Hoy he leído lo que para mí es una de las noticias más tristes: Microchip pretende comprar Atmel, junto con ON semiconductor. De momento son sólo negociaciones, pero parece que tarde o temprano acabará siendo una OPA hostil. 😥
Desde hoy en adelante empezaré a pensar en ARMarme en el tema de micros... 👿
O mejor, pasarme al VHDL 😈
Claro, a no ser que Microchip mantenga la línea AVR, y de paso empieze a poner las cosas en castellano 😀
¿Que opináis del tema?
Hola:
Me dio por probar AVR que hice un minimanual muy simple.
http://electronica-pic.blogspot.com/2011/01/teensy-20.html " onclick="window.open(this.href);return false;
En cuanto a microcontroladores, me dio una época por buscar todas las marcas que hay y saber cuantos hay. Siempre estaba viendo los PIC, AVR, ARM, FreeScale.... Debe haber más que no recuerdo y me topé con una lista publicado en mi Blog. Seguro que me faltan muchos más PIC que no tengo añadido.
* ARM
* Atmel
* Cypress
* Diodes
* Ember
* Energy Micro
* Fairchildsemi
* FreeScale
* FTDIchip
* Fujitsu
* Hitachi
* Holtek
* IDT
* Infineon
* Intersil
* JMicron
* LSI
* Maxim-IC
* Micrel
* Microchip
* Microsemi
* National
* NEC
* Nuvoton
* Oki
* On Semi
* Parallax
* Philips
* Picaxe
* Rabbit
* Renesas
* Rohm
* Samsung
* Semtech
* Silabs
* STMicroelectronics
* TI
* Toshiba
* Winbond USA
* Xmos
Tienes para artarte.
Ah, lo bueno de MPLAB ahora, que por fin se está preparando uno hecho con Java y para Windows, Mac y Linux con NetBeans. Por ahora está la beta 5 del MPLAB X y cada vez mejor. Aún en paralelo seguirá actualizando el MPLAB de toda la vida.
http://ww1.microchip.com/downloads/mplab/X_Beta/index.html " onclick="window.open(this.href);return false;
Saludo.
Creo que hay que objetivar un poco y separar un poco los posibles casos, ya que no es lo mismo un novato que nunca ha tocado un micro que una aplicación de millones de productos de tirada que casos puntuales de tiradas más cortas, pongamos 100 unidades.
Creo, y va a ser difícil de convencerme de lo contrario, que para aprender a programar micros, poco hay mejor que un PIC 16f84. Sencillo y funcional. Rápido de aprender y eficaz para hacer cosas básicas como las luces del coche fantástico. Evolucionar y seguir con una segunda parte de ampliación de conocimientos con programación de C embebido usando AVR's creo que sería una continuación básica y lo conveniente (otra cosa es que se haga). De ahí a los ARM, el paso es más fácil. Empezar directamente con ARM's Cortex M3 es una locura para cualquier novato.
Por cierto, el hecho que en PIC se siga recurriendo a ASM es debido a varios factores: escasa capacidad de procesamiento comparado con otros micros, y dificultad de generar código ensamblado eficiente desde C debido a la arquitectura interna. Hace tiempo hice una propuesta que nadie se dignó a replicar, comparando simplemente el código ensamblador de un sumador de 256 bytes hecho en C para AVR con el equivalente en PIC (familia 16f por un lado, 18f por otro), para comparar la eficiencia a la hora de hacer lo mismo de diferentes maneras y con diferentes arquitecturas. Creo que es un buen ejemplo para ilustrar diferencias, potencias, filosofías, arquitecturas, etc.
Por lo que respecta a aplicaciones 'comerciales', si la tirada es muy grande, hay aplicaciones en las que un ARM nunca va a tener mucho sentido (un termómetro, por ejemplo), y otras donde incluso siendo más caro un ARM, el valor añadido compensa sobradamente. Hasta en la automoción se están usando cada vez más los ARM en detrimento de arquitecturas propias de los grandes fabricantes de este ramo (fujitsu, renesas, hitachi).
Para tiradas comerciales pequeñas (donde estoy yo currando ahora mismo), el cambio tecnológico es aún más abismal. Se están abriendo paso cada vez más los sistemas tipo Beagleboard/IGEP, linux embebido, ethernet, etc, en aplicaciones cada vez más 'masivamente paralelas', pero donde el tiempo de desarrollo de SW se ve muy condicionado, y por tanto se sigue usando mucho el LabView (un dinosaurio zombie que debería haber sido aniquilado hace mucho tiempo), el VisualStudio (el IDE y las librerías llevan muchas ventajas sobre las aplicaciones de Linux Embebido con las que empiezo a trabajar), y otras herramientas como los sistemas de visión (hay poco en linux, y menos en embebido... por ahora) hacen que sea difícil hacer entrar todavía estas tecnologías, si bien queda claro que es el futuro.
Si a todo esto le añadimos el reciente anuncio de Zynq, la cosa parece que va a acabar siendo un tsunami que acabe con lo que ya hay hecho, pero el desarrollo y las herramientas no sólo están verdes, si no que hay que cambiar de filosofía (de 'chip', tanto en el sentido metafórico, como en el más real).
Aunque sigo haciendo cosas con AVR en mis escasos ratos libres que me deja la niña (año y medio ya), en el trabajo tenemos claro dos cosas: ARM cortex M? para los sistemas que no queda más remedio que estén embebidos, y ARM's grandes con Linux embebido en el resto, con FPGA cada vez más abundantes (me remito, una vez más al Zynq). Sistemas distribuidos, red en profusión, y mezclas de PC/Windows con SBC's y Linux.
En automoción no se aleja tanto la filosofía. ARM's con aceleradoras gráficas, Linux embebido, networking sobre fibra óptica, etc, están en la hoja de ruta de nuevos proyectos que ya son casi una realidad.
Por otro lado, y como último apunte. Los microcontroladores pertenecen al dominio del tiempo real, donde difícilmente se llegarán a meter los microprocesadores (como los ARM's 'grandes') con linux. Son dos mundos distintos que cada vez conviven más, pero con requerimientos totalmente diferentes. No es de extrañar que los Zynq estos usen el ARM dual core interno para ciertas tareas, pero tengan micros software (Microblaze, por ejemplo) que se encarguen de las tareas de tiempo real, además del HW adecuado para acelerar tales fines.
Por cierto, Meta, creo que Xilinx y Altera, probablemente (por confirmar) Lattice y Actel tienen micros también, aunque algunos de ellos son 'raros' (definidos por 'software').
Hola:
http://www.xilinx.com " onclick="window.open(this.href);return false;
http://www.altera.com " onclick="window.open(this.href);return false;
http://www.latticesemi.com " onclick="window.open(this.href);return false;
y
Actel parace FPGA, por eso no lo he añadido. Sólo busco microcontroladores tipo PIC.
En cuanto a sistemas Linux embedido me encanta, cada vez más fuerte, eso si, lleva unos 10 años, como si no estuviera, si te metes a estemundo te enteras, la mayoría de la gente pasa un kilo de todo.
Se dice que para aprener es bueno el http://www.pic16f84a.org " onclick="window.open(this.href);return false; . La verdad es que si, luego te familiarisas con los demás. Es bueno aprender primero ASM, luego el C que sino el trabajo se te hace pesado.
Saludo.
Si dejamos aparte el tema de 'micros software' (hay varios 'core IP' de PIC, AVR y lo que te parezca disponibles gratuitos para cualquier plataforma FPGA), Xilinx tiene los Virtex que llevan PowerPC's integrados, y ahora han sacado los Zynq con ARM Cortex A12 dualcore (como los que están a punto de salir de TI OMAP4, para las tablet Galaxy TAB y derivados, por ejemplo) integrados 'hardware'. Altera si no los tiene, están trabajando en el mismo tipo de producto (con el mismo core, por ejemplo).
Así que ahora les está dando a la mayoría de fabricantes de FPGA de integrar microcontroladores en sus core, aunque en realidad sean más microprocesadores con algunos periféricos. Justo el camino inverso del Cypress PSoC (el 3 y el 5) y la 'original' (el primer producto con este concepto) FPSLIC de Atmel (más de 10 años han pasado ya), y los posteriores AT91 configurables (ARM920 + FPGA).
Personalmente, si pudiese conseguir unos pocos Zynq, dejaba de lado las plataformas OMAP con las que estoy trabajando (a las cual añado de momento un Spartan).