Atmel vs Microchip

Estado
Cerrado para nuevas respuestas.
:D:D:D:D:D:D:D me hace gracia la expresión. Si es cavernícola jajaajjjjajaa, ¿Por qué enseñan C con turbo C en institutos?

Por algo será. ¿Concepto de programación?

Un saludo.

No, porque los cavernícolas :)lol:) de los docentes no saben utilizar las excelentes herramientas que te dá Linux y GCC, por eso.

Turbo C era muy lindo para la década del '90, ya estamos en 2014 .... :rolleyes:

Que preferís, esto:

turbo-c.png


O esto:

CodeBlocks.png


Incluso en windows funciona el codeblocks, pero ahí puede que tengas problemas para acceder a las interrupciones.

Ojo, yo aprendí C también con TurboC, lo digo por experiencia.
 
Última edición:
El buen turbo C, yo tambien aprendi ahi, no es que sean cabernicolas, al menos aca es muy dificil que en las escuelas se tenga el sistema linux en las PC, y en gran medida se debe a que hoy por hoy no venden equipos oem sin sistema operativo y obvio la escuela tampoco se va preocupar por estar cambiando el SO a los tambaches de PC que compran.
 
Como que esto ya cambió de Atmel VS Microchip a un debate de lenguajes de programación.
no se si es un debate de programacion... pero lo que uno aprende sobre ellos. en sus comentarios.... aplicados a los PIC y ATMEL.... es algo que no se discute.. los leeo chicos... no aflojen es muy intructivo... y didactico.... (y) (y) (y) ..merece mis felicitaciones.....:aplauso: :aplauso: :aplauso:
 
Última edición:
es verdad se desvio tanto como un carrito de supermercado con llantita chueca

la pregunta es por que los americanos usan AVR y en empresas de origen americano piden que sepas programar AVR.
si uno dice Pic en ASM casi casi te dicen estas despedido :LOL:

bueno cuando se trabaja con C es muy o casi nula la diferencia entre una arquitectura a otra cuando se trata de prender un led o un rele :D
 
bueno amigo.... TRILO-BYTE..eso nosbria decirte..pero en lo que yo e buscado..para lo que nesesito...la mayoria delos montajes..son con AVR..y tanto uno como el otro ( PIC )...los ejemplos que me pasaron son asm y c ...lo curioso que en todas las aplicaciones como ejemplo
Dim8led2.gif
a esto que hace lo mismo Ver el archivo adjunto 104197 son comerciales... y las con dos asm y c
 
Última edición:
casi no te entendi estas como mi novia que escribe una cosa por otra :LOL:
ahora cuando buscas una cosa la puedes encontrar en ASM, C , basic ,pascal
pero tanto como AVR y PIC el diseño varia deacuerdo a quien lo diseño
alomejor el que lo desarrollo en AVR era buen programador y no nesecito usar mas hardware esterno

y el que lo diseño en PIC era un chavito taringuero que no sabia ni que e hiso una porqueria pero a fin de cuentas tubo un resultado satisfactorio

no se sabe aun asi creo que no hay que hablar mal de PIC o de AVR

mas bien la ineptitud es de uno mismo :LOL:
 
si uno dice Pic en ASM casi casi te dicen estas despedido :LOL:

No, te preguntan si también sabes C. Si sabes C y asm muy bien, te contratan a ti antes que solo uno de C. El de C y asm sabe más, se defiende mejor, hace más cosas, y resuelve más problemas.

Si el de C solo sabe mucho y el de C y asm no tanto, pues cogen al de C, eso si, está buscando a otro que sepa un poco de todo.

Lo comento porque estuve aprndiendo asm del 8085, 8086 y 8088 que ons obligaban en electrónica, también asm para PIC. El tema de C si lo quieres aprender es por tu cuenta, en plan autodidacta.

En cuanto a Turbo C, recuerdo que unos amigos se quejaban en la universidad ese compilador del año de la pera. los profesores dicen que es lo que hay, ajajjajajaj.

En nuestro caso nos obliga a usar Python, Java, Visual Basic .net 2010 y lenguaje de cuarta generación como SQL Server y MySQL.

Yo quería aprender C/C++ y C#, no tube suerte en ese aspecto. Estoypor comprar un buen libro de C# en el futuro, ahora quiero comprar el Arduino y algunos de sus libros. Si, se que comprar libros para muchos es de tontos, pero están mejor detallados en algunos sentidos como guía para los que no saben nada. Con ayuda de Internet ya eres un bestia, jajajajaja, buscando infirmación, claro.

Ya de un avez por todas, quiero hacer circuitos complejos, usando memorias Micro SD, control de disco duro, por poner un ejemplo tonto, controlar Samsung Galaxy S4 con Arduino, que haga de Interfaz y controle dispositivos hasta por Internet e incluso Wi-fi, bluetooth o lo que sea, cosas así. Por eso del ASM solo lo quiero para cosas sencillas. C para todo.

Arduino bluetooth.
https://play.google.com/store/apps/details?id=com.app.control&hl=es

Vídeo tutoriales Arduino. (Sólo pongo el primer vídeo).

Dejaré un poco asm y C para PIC y me centro ya con AVR de una vez por todas. Eso si, probaré AVR con fundamento que no sea la placa para probarlo. Y sobre todo los ARM de las narices.

El que me llama los libros en Inglés son los PIC32 el de 80 MHz, no sabía que sea tan fácil de programar más que los PIC de 8 bits en algunos aspectos. PIC32 a 200 MHz es muy nuevo pero se recomienda.

Hay PIC32 del encapsulado DIP para ponerlos a protoboard de 28 y 40 pines , lo han probado pero para mi me parece que tener esos PIC32 habiendo PIC18F no hace mucha falta, solo Microchip lo hizo porque se lo han pedido muchos usuarios y de hecho se vende.

Total, PIC32 está bien si usas pantallas a color con tratamiento de imágenes.

A experimentar con AVR que no pasa nada.

Saludo.
 
bueno amigo.... TRILO-BYTE..eso nosbria decirte..pero en lo que yo e buscado..para lo que nesesito...la mayoria delos montajes..son con AVR..y tanto uno como el otro ( PIC )...los ejemplos que me pasaron son asm y c ...lo curioso que en todas las aplicaciones como ejemplo

Yo creo que es como dice TRILO-BYTE (que se cambio el nick... :LOL:), es más por quien lo diseño y que resultado quería obtener (el diseño PIC maneja más canales).

Dos cosas que me llaman la atención del diseño en PIC:

1- El uso de los TDA para el manejo de los mosfet no se justifican, segurante podría usar los puertos del PIC directamente, ya que esos mosfet con 5v en gate conducen bien.

2- Tal vez el segundo PIC se podría evitar si se usa shifters/codificadores o algo similar para obtener los puertos restantes, incluso me animo que podría multiplexar y eso resultaría más sencillo.

Meta dijo:
En nuestro caso nos obliga a usar Python, Java, Visual Basic .net 2010 y lenguaje de cuarta generación como SQL Server y MySQL.

Yo quería aprender C/C++ y C#, no tube suerte en ese aspecto. Estoypor comprar un buen libro de C# en el futuro, ahora quiero comprar el Arduino y algunos de sus libros. Si, se que comprar libros para muchos es de tontos, pero están mejor detallados en algunos sentidos como guía para los que no saben nada. Con ayuda de Internet ya eres un bestia, jajajajaja, buscando infirmación, claro.

Ya de un avez por todas, quiero hacer circuitos complejos, usando memorias Micro SD, control de disco duro, por poner un ejemplo tonto, controlar Samsung Galaxy S4 con Arduino, que haga de Interfaz y controle dispositivos hasta por Internet e incluso Wi-fi, bluetooth o lo que sea, cosas así. Por eso del ASM solo lo quiero para cosas sencillas. C para todo.

Ven, es el autor del hilo el que hace off-topic con otros lenguajes, después yo me prendo :oops:.
 
Última edición:
Si, ajjaja, del 2008.

Em cuanto a la tecnología de los PIC, a estas alturas han cambiado muy poco por temas de compatibilidad.

Así que escojas el µC que escojas, al final conseguirás lo que quieres.

¿Cuántos de aquí solo están aprendiendo sin hacer proyectos sencillos como final y ser usado a diaro?

Saludo.
 
La cuestion no es el microcontrolador, la cuestion es el programador, he visto cada cosa tan bien hecha y con un mugroso pic16f84, por otro lado todo debe ser a la medida, por ejemplo el PIC12C508, la mayoria diria "Y un micro con 6 patitas disponibles para que me sirve" y ahi esta el famoso chip de la PS1, cuantos micros de estos se habran vendido para dicha aplicacion, por otro lado tengo el mano varios circuitos de las baterias de la marca HP y cada circuito trae un micro attiny13, tambien hace poco destape una xoom de motorola y tambien encontre varios micros de atmel, lo cierto es que he visto mas aplicaciones "comerciales" donde se usan los AVR que aplicaciones comerciales donde se use PIC.

Ya deberian cerrar este tema, esa eterna pelea entre microchipm, atmel, texas, y cuanto fabricante exista, nunca nunca va terminar, sencillamente porque cada quien elige el que le va mejor y por ese motivo lo defiende.

Yo sigo con AVR y me gusta, tambien la serie 430 de Ti.
 
Con hay que cerrar nada, vendrán más personas en el futuro.

No peeles, solo se dan opiniones respetables te guste o no.

De todas maneras, me quedaré con dos marcas. PIC y AVR por ahora bajo Arduino.

Los programadores ahora que los mensionan, también cuentan.
 
insisto arduino es un avr travestido asi como mi nick que se cambio :LOL:
pues arduino como digo un colega mio es como programar en CCS

pero cuando se inician con arduino no saben programar C con un compilador de los facilitos

y como dicen

es cuestion de programador que el hardware
yo use el Codewarrior sin hacer uso del prosesador experto y debo decir que no es la gran ciencia solo es cuestion de tener fuerte los fundamentos de C

usando el prosesador experto yo creo que asesina el arduino solo que las placas de freescale son aun menos conocidas

otra cosa que me doy cuenta cuando alguien adora el pic16f84 , o el atmega 8
y mas cuando aman el ASM
es por que sus maestros de la escuela, univercidad , etc. les enseñaron a programar y se quedan con los grabadores y el compilador
ademas que cuando uno es estudiante no puede comprar mas y te quedas con lo que te sobro. :unsure:

asi que pienso que creen que esos micros son lo maximo bueno eso me paso con el pic18f4550 aunque mi primer micro como tal fue el 16f84 y lo odio :LOL:
 
No es novedad, para Atmel AtmelStudio + Arduino, combinación que agrada y el lenguaje es C estandar. Almenos así se pueden programar AVR travestidos y normales en un solo IDE :D y para microchip PIC, bueno ya tienen el MPLABX multiplataforma.
En mi opinión con esos dos basta y al igual que muchos, cuando se programa en C no se nota taanta diferencia.

AtmStu6Ardu.png

Sobre el hardware, bueno eso ya depende después de todo son totalmente diferentes, temas que ya se han tratado anteriormente.
 
Yo creo que es como dice TRILO-BYTE (que se cambio el nick... :LOL:), es más por quien lo diseño y que resultado quería obtener (el diseño PIC maneja más canales).

Dos cosas que me llaman la atención del diseño en PIC:

1- El uso de los TDA para el manejo de los mosfet no se justifican, segurante podría usar los puertos del PIC directamente, ya que esos mosfet con 5v en gate conducen bien.

2- Tal vez el segundo PIC se podría evitar si se usa shifters/codificadores o algo similar para obtener los puertos restantes, incluso me animo que podría multiplexar y eso resultaría más sencillo.



Ven, es el autor del hilo el que hace off-topic con otros lenguajes, después yo me prendo :oops:.
eeehhh amigo..bueno los ASM y C que me pasaron manejan 8 canales los dos en el esquema del ATTINY2313 (sobran puertos ) estan cuatro PERO.en el montaje son 8 yo no se los puedo mostrar..( es una lastima ) pero los dos montajes hacen lo mismo o sea el mismo efecto... pero lo que queria desmostrar con eso... es que los dos estan desarrolados con C y ASM
 
Eso, no importa si dicen que el Arduino es un AVR disfrazado, eso serán los PICAXE y peor por que te venden el mismo PIC pero más caro, al menos el Arduino incluye "accesorios" que cuestan considerablemente más para una persona que intentara recrear una sola placa que comprar una hecha y tienes todo el código fuente a tu disposición, si quieres subirte al siguiente nivel puedes trastear directamente esas funciones y lo que aún no entiendas lo manejas en lenguaje Arduino.

El año pasado tuve un proyecto en el que no tenia tiempo para aprender a controlar el chip ARM Cortex-M4F de la LaunchPad Stellaris, la programé inicialmente en lenguaje Arduino (usando Energía) y más adelante cuando fui corrigiendo mis funciones reemplacé varias del lenguaje Arduino por las indicadas en la Stellaris Peripheral Driver Library, pero eso fue gracias a que aún me quedó tiempo de aprender a emplear algunas funciones, cosa que me hubiese desesperado si desde un principio me hubiese puesto a programar el ARM de esa forma y probablemente no me hubiese quedado tiempo para entregar el proyecto.

Ahora Energía es tan popular que hasta Texas Instruments está implementando el soporte para importar los sketches en la nueva versión de Code Composer Studio 6, podrás usar las mismas funciones simples de aprender pero conservando toda la ventaja de su IDE y el debug incorporado en las LaunchPads.
 
Última edición:
eeehhh amigo..bueno los ASM y C que me pasaron manejan 8 canales los dos en el esquema del ATTINY2313 (sobran puertos ) estan cuatro PERO.en el montaje son 8 yo no se los puedo mostrar..( es una lastima ) pero los dos montajes hacen lo mismo o sea el mismo efecto... pero lo que queria desmostrar con eso... es que los dos estan desarrolados con C y ASM

Es cierto en el esquemático no se ve, incluso al igual que los Atmega podrías usar el oscilador interno a 8 MHz obtenés 2 puertos más.

Pero bue... habría que comparar el precio de ese ATTINY con el PIC usado, tal vez un PIC con más puertos y santo remedio.
 
JEjejejje, con las maneras de hablar de Arduino y disfrases o travestidos.

Para probarlo no está mal, se que es mejor usar el C natural de su compilador oficial. Ya que estoy hasta las narices del ASM, y la primera vez usando código binario para sumar, restar y cosas de estas casi me da algo. jajajajaaj. :D

Arduino, aunque use sistema disfrasado o travestido (como se nota el desprecio de Arduino) lo llaman software con capa para fasilitar la entrada al mundo de los microcontroladores casi cualquier persona. Si realmente les gusta y quiere un control total del AVR o cualquier otra firma, mejor usar el C estandar.

CCS antes se usaba mucho y últimamente le están dando por todas partes meterce con C18, ahora XC8, XC16 o el XC32 en C o como nuevo para PIC el C++.

ASM y binario lo he probado, un poco de C18 para probar y tengo un libro de ASM y C del CCS. No tengo que dejar de curiosear como es realmente Arduino para hacer proyectos muy rápidos y no pegarme media vida con asm de las narices. Me gusta pero para cosas pequeñas, proyectos grandes es una locura.

Total, tengo intención d eaprender Arduino y CCS (aunque este no me guste). Más adelante XC8 porque tiene más documenteción y ejemplos en la propia Microchip. En el futuro no es de extrañar que squen libros en español como tienen asm y CCS.

3a2cdaff0d31afb0c5f24b96af0cbc57_large.jpg


Estoy cansdo de parneder un lenguaje y hace poca cosa con el hardware porque hay algo que me atasco. Jejeej, con C o Arduino se hace muy rápido. Cosa que hoy en día si trabajas, no tienes tiempo.
 
En mi PC este hilo tiene actualmente 28 páginas. es buena técinca de esconder información en un mar de datos. El tema original del hilo tiene su justificación para un electrónico que quiere iniciarse en microcontroladores, escuche y lee de estas 2 familias de controladores y busca información. Ustedes creen que leer al momento 28 páginas y centenares de respuestas en un hilo va ser de ayuda para el lector? Si así lo vreen, adelante!

Pero si Ustedes como yo tienen un tiempo limitado, el título del hilo siuena como que vale hecharle una mirada, to do lo que hacen, al menos eso hago yo, es mirar en la útima y quizá en la primera página del hilo.

Yo creo que es de primordial importancia separar contribuciones al tema original de un hilo de los comentarios.

Habiendo escrito esto y por creer que un novato tiene el derecho de encontrar argumentos para hacer su propia decisión educada por que camino ir, quiero agregar mi dato a este hilo.

Atmel o PIC son equivalentes, decidete por una de las familias de controladores dependiendo de para cual en tu entorno encuentres personas que te asistan durante tu aprendisaje inicial y porterior.

Un controlador de una de las 2 fuentes nombradas aquí es adecuado para milllares de uso y en el internet se encuentran ejemplos para casi todo tipo de usos.

Si la intención es iniciarse de forma seria, quizá con ambiciones para una carrera, es mi opinión, que ambas familias de controladores y las variantes utilizadas son cosa del pasado y no las consideraría adecuadas. Ay, aquí me caen a golpes! :)

Porque tengo esta opinión? vayamos paso por paso a analizar esto!

Costo y disponibilidad:
Tradicionalemente controladores de uno u otro tipo discutido aquí son de bajo costo y tienen buena disponibilidad.

Herramientas:
Las herramientas son disponibles de forma gratuita y en lengua cristiana, lo que para aquellos no tan familiares con el inglés hace el aprendisaje mas facil.
Las herramientas consisten en tales para la programación y para la busqueda de errores y la verificación del programa que se está desarrollando. Aquí las herramienttas discutidas en el hilo consisten básicamente de 3 tipos:

ASM, o Assembler:
Esta herramienta de programación usa directamente las sentencias del controlador escogido. Buena práctica es escribir "subrutinas" para cosas que siempre se vuelven a necesitar y usar estas en vez de programas a nivel de las sentencias del controlador, muy cercano a lo físico del controlador.
Porque escribo lo de las subrutinas? Pues en cierto sentido esto significa crearse su propia lengua de programación y así ASM se vuelve algo entre lo que usualemente se nombra programación en assembler y el uso de una lengua de programación, que en cierto sentido no es mas que esto, un nivel de abstración entre las sentencias físicas del controlador. Que ventaja tiene esto?
Pues por un lado se vuelve mas sencillo leer un programa escrito en assembler y que usa de forma sistemática subrutinas con nombres que autoexpliquen la función de esta subrutina.
Por otro lado una subrutina que ha demostrado funcionar bien, reduce la probabilidad de errores de programación al usarse estas.
Tercero usando tales subrutinas e ir ampliando la base de subrutinas aumenta la productividad del programador por permitir programar mas rápido y con menos probabilidad de error.

Habiendo escrito esto quizá entendemos que lenguas como "C", Basic u otros no son mas que el resultado de programadores que llevaron la técnica del desaroolo de subrutinas a un nuevo nivel.

Herramientas de programación que no son assembler, se definen por un nombre, sea basic o C como ejemplos, consisten históricamente de 2 tipos:

Lengua de interpretación y lengua de compilación!

Una lengua de programación del tipo interpretador, y Basic era una tal, son escritas con una semántica que fascilita la lectura y el entendimiento, pero que cuando se ejecuta traduce en este momento los elementos de la lengua a un formato que la hardware del controlador entiende, una serie de "0" y "1" en organisaciones de 8, 16, 32 o mas bits por unidad. Para mas facil leer tal código se describen las 16 permutaciones posibles de 4 bits, 4 "0" y "1", también llamado "nibles" con algo que se llama "hex" que consiste de 16 posibles valores de "0" a "9" y de allí "A", "B", "C"" ... hasta "F".

Un compilador hace esta traducción anteriormente a su ejecutación y el proceso se llama compilación y genera un documento que tiene la extensión "*.hex".

Durante mucho tiempo todo programador se reía de la ineficiencia de lenguas interpretadas y juraba que solo una lengua compilada era adecuada. Esto empezó a cambiar cuando lenguas como "Java" aparecieron.

Queda finalmente el proceso de la verificación de un programa escrito y la búsqueda, a veces tediosa, de los errores en ese programa. Aquí la simulación era y es una parte de las herramientas usadas, donde el programa no ejecutado dentro del controlador, sino en el PC usando la herramienta del simulador. la razón para esto es que una software hace la parte de un controlador físico haciendo posible así un sin fín de técnicas de grandísmima ayuda para la programación. Pero quedaba la incertidumbre, que una simulación no es el original y que en el entrono definitivo efectos son posibles que hacen un programa fallas que funcionó perfectamente en el simulador.

Herramientas para reducir o eleiminar esta discrepancia eran carísimas y fuera del alcanze de muchos!

Habiendo presentado las herramientas de forma muy básica y los criterios para un novata de ir por una u otra familia de controladores del tipo Atmel AVR o del tipo PIC, quiero presentar porqué un novato debería ir por otra ruta si tiene mayores ambiciones dentro del entorno económico y de disponibilidad en cosa de sistemas embebidos, lo que creo poder justamente denominar el tipo de sistemas discutidos.

El futuro en sistemas embebidos no es del tipo de controladores discutidos aquí, sino de de aquellos del tipo "ARM Cortex M*". Controladores de este tipo son controladores para sistemas embebidos a diferencia de "procesadores" como los que funcionan en PC como aquellos del tipo 8086 y/o Pentium! En primera aproximación controladores son unidades de procesamiento con el foco en las funciones periféricas incluidas y que no necesariamente requieren de memoria externa y que no usan sistemas operacionales como Linux o Windows, sino que no usan un sistema operacional o algo que se llama RTOS, Real Time Operating System, sistema de operación de tiempo real. Ejemplo en ARM son FreeRTOS. La diferencia básica entre un RTOS y los sistemas operacionales tradicionales es que estos permiten que un sistema reacione en un tiempo predicible.

ARM es una empresa que no produce controladores o procesadores, pero que desarrolla estos y los licencia a empresas que entonces definen sus productos a base de lo aquirido por tal licencia. ARM es increiblemente exitoso y prácticamente to productor de controladores y procesadores tiene en su portfolio productos que usan tal licencia. Se especula que hasta Intel esta metiendose en esto!

El resultado es que todos los proveedores basan sus controladores en la misma licencia y que como consecuencia de esta licencia están obligados a ofrecer de acuerdo a una especificación llamada CMSIS, una biblioteca para cada función periférica que incluye en sus controladores del tipo ARM Cortex M*. Los elementos de tal biblioteca son algo lejanamente similiar a lo que llamé subrutina cuando presenté el tema "Assembler". Lo bueno de CMSIS es que existe en todo controlador ARM Cortex M* y que todas las periferias del mismo tipo son usadas en la programación por el mismo "API", "aplication programing interface" o "interfaz de programación para aplicaciones". El resultado de esto es, que cualquier programa escrito para el controlador ARM Cortex M* de algún proveedor puede ser portado a uno de otro proveedor que tenga el mismo set de funciones periféricas usadas por el programa con un mínimo de esfuerzo!

Esto es de un imenso beneficio para todos, pero en especial también para personas con menos recursos económicos y a mi opinión decide sobre la alternativa de programación entre assembler o una lengua interpretada o compilada, es el programa compilado. Esto no excluye de crear propias sentencias usando assembler para lograr una realización óptima, pero la justificación será válida en menos y menos casos!

Pero también el procso de miniaturisación en la producción de controladores, por la técnica de los semiconductores, influencia de forma decisiva porque no veo un auge en un futuro para controladores de los tipos tradicionales y que impacta el costo por el cual se pueden adquirir estos controladores!

El problema de los proveedores de controladores no es la complejidad y el tamaño del circuito en una componente que da como resultado un controlador, es el tamaño del pedazo de silicio que resulta del número de pines. La miniaturisación ya ha llegado desde algunos años a tal punto que controladores no llenan con sus circuitos el espacio disponible en el chip! El término que describe esto compara una caracterisación de cicuitos integrados:

"Pad Limited" o "Core Limited"

Pad es el nombre imgles del elemento sobre un chip de silicio al cual se solda un cablecito, frecuentemente de oro, para unir un Pin de un empaque al circuito integrado. este tiene cierto tamaño y en la circunferencia del chip solo cabe un número limitado de estos. de allí, si un circuito integrado define su tamaño a razón del número de pads requerido entonces el diseño se llama pad limited.

El interior del pedazito de silicio lo llaman "core". Debido a la miniaturisación los circuitos requieren menos y menos espacio, por lo cual queda espacio sin usar.

Ahora el costo de producción de un circuito integrado en lo que al silicio se refiere es fijo por wafer, así se llama el disco de silicio sobre el cual se producen los circuits a integrar. Cuando mas pequeño un circuito, mas caben en el disco, wafer y mayor es el divisor que reparte el costo en cada componente. El resultado es que los proveedores usan este espacio para meter cosas adicionales.

Pero sigamos mirando la cuestión bajo el aspecto del costo. Una componente moderna como un ARM Cortex M* usa las tecnologías mas avanzadas en su producción, por lo cual el ancho digital de las extructuiras de 32 bit de los ARM Cortex M* a comparación de los 8 o 16 bit de Atmel AVR o PIC no representa una desventaja desde el punto del costo, pero si la posibilidad de beneficiarse de la enorme capacidad de potencia de procesamiento que resulta de los 32 bits a comparación de las estructuras tradicionales. Un ARM Cortex M0 no cuesta mas que un Atmel AVR o un PIC.

Mientras que los Atmel y los PIC tienen una arquitectura tradicional que ha entrado en los años, los ARM Cortex M* se benefician de los últimos avances tecnologicos en materia de diseño de controladores.

Pero tambien en las herramientas y la calidad de las bibliotecas de acuerdo a la especificación CMSIS se beneficia de esta situación. Como los productos ofertados por los proveedores son reemplazables comparativamente facilmente por los clientes debido a CMSIS, los proveedores requieren esfuerzos especiales para manterner sus clientes.

Un argumento es la obligación de ofertar sus productos a precios competitivos en un mercado muy competitivo. De allí el aspecto del costo y la disponibilidad!

Eficiencia y potencia:
Los proveedores no solo ponen todos sus esfuerzos en definir y crear circuitos integrados que justifiquen para un cliente usar sus productos, sino que también tienen un interés vital en que la calidad de las bibliotecas de acuerdo a CMSIS que están obligados a ofrecer debido al contrato de licencia con ARM asegure que las posibilidades del circuito integrado se manifeste en la aplicación manejada por el programa.
No acaba allí! Lo mismo es aplicable al entorno de programación, la tal llamada IDE. Como ejemplo. NXP, antes Philips, ofrecía como IDE y de forma gratuita una ofrecida por "Code Red" y que se basa en un quasi estandard la herramienta "Eclipse". Pues debido a la importancia estrtégica para NXP, NXP adquirió Code Red, doblo el límite del tamaño de código de la versión gratuita de 256 kBytes a 512 kBytes! Quién aquí a escrito código de mas de 512 kBytes? El costo para ampliar a la versión ilimitada es módico.

Pero también el aspecto de la verificación de un programa y de la eliminación de errores y problemas en estos modernos controladores ha dado un salto revolucionario, y esto de forma gratuita o casi gratuita. En vez de tener que utilizar un simulador, es posible descargar y ejecutar el programa en esta fase en el controlador objetivo y en la placa final. La interfaz mágica que permite esto es la interfaz JTAG.

Para ganar los millares de programadores y ingenieros electrónicos que hoy usan componetes como los Atmel o los PIC, pero también para ganar la batalla por los clientes grandes, los proveedores facilitan cosas fantásticas, las placas de evaluación! STMicroelectronics, provedor del los PIC ofrece por precios bajísimos y regala frecuentemente placas como la STM32F0-Discovery. El STM32F0, un ARM Cortex Mo viene en esta placa de solo aproximadamente 95x53mm con un conector USB y un "Embedded ST-LINK/V2". Yo, que fui mas aficionado a los Atmel AVR después de intensos estudios me fui con NXP y sus LPCXpresso. Una de las razones, y confieso mi inabilidad de establecer las herramientas de programación a base de Eclipse por falta de conocimientos, amé que la IDE no solo es autoconfigurada durante la instalación, sino que conoce las placas LPCXpresso, en mi caso la LPCXpresso 1769. por un precio de solo 19,80 Euros por una placa con un super controlador, un LPC1769, un ARM Cortex M3. Un LPC800 solo cuesta 0.968 Euros, el LPC1769 un Cortex M3 en comparación 7,21 Euros.
 
Estado
Cerrado para nuevas respuestas.
Atrás
Arriba