TODOPIC

Otros Microcontroladores / Dispositivos programables => Microcontroladores ARM => Mensaje iniciado por: QIQE en 10 de Septiembre de 2010, 21:03:09

Título: Nuevo con Cortex-m3
Publicado por: QIQE en 10 de Septiembre de 2010, 21:03:09
Hola, hace poco compré una pequeña placa de evaluacion con un stm 32 y venia con ejemplos, hasta ahora había programado pics con CCS, y algun atmel con winavr.
Pero al abrir los proyectos con keil, veo que tiene un archivo para cada periferico, esta todo demasiado desperdigado, alguien tiene algun manual tipo paso a paso para empezar a programar los micros de esta familia o alguna sugerencia de como empezar, muchas gracias.
Título: Re: Nuevo con Cortex-m3
Publicado por: psykhon en 11 de Septiembre de 2010, 09:39:21
no es que esta desperdigado, es la manera correcta de separar el codigo. Lo que sufris es debido a que estas pasando de una arquitectura pequeña a una mas grande con muchisimas mas posibilidades y es necesario alguna manera de emprolijar el codigo o se vuelve extremadamente dificil de entender y administrar. En cuanto a la documentacion, nuevamente, estas entrando en un territorio mas profesional y la mayoria de las veces se aplica la famosa frase de Linus Trovalds, que cuando le preguntaron por la documentacion del codigo del kernel de linux dijo: "Use the source, Luke"  :D :D :D.
No desanimes y metele horas culo que de a poco se levanta la neblina y vas a ver que extenso y potente es este mundo. Lo que podamos hacer para ayudarte, con gusto lo haremos.

Título: Re: Nuevo con Cortex-m3
Publicado por: manwenwe en 11 de Septiembre de 2010, 10:30:14
no es que esta desperdigado, es la manera correcta de separar el codigo. Lo que sufris es debido a que estas pasando de una arquitectura pequeña a una mas grande con muchisimas mas posibilidades y es necesario alguna manera de emprolijar el codigo o se vuelve extremadamente dificil de entender y administrar. En cuanto a la documentacion, nuevamente, estas entrando en un territorio mas profesional y la mayoria de las veces se aplica la famosa frase de Linus Trovalds, que cuando le preguntaron por la documentacion del codigo del kernel de linux dijo: "Use the source, Luke"  :D :D :D.
No desanimes y metele horas culo que de a poco se levanta la neblina y vas a ver que extenso y potente es este mundo. Lo que podamos hacer para ayudarte, con gusto lo haremos.

me pica la curiosidad... hace tiempo que ando interesado en probar un ARM: simplemente por comparar con PIC32 (las comparativas que he leido casi siempre dejan mejor a ARM que a MIPS) y no quedárme atado a un único fabricante/arquitectura.

¿Reálmente son tan potentes? ¿qué me recomendais para empezar? Hay tantos modelos y fabricantes que no se por donde cogerlo ¿NXP, TI, Freescale,etc...?

Me gustaría algo así:

- Micro de 32 bits. Al menos 100Mhz. De MIPS no hablo xq no se cómo van en esta arquitectura.
- Perífericos comunes (ADC, USART, SPI, I2C USB OTG, etc.). Si tiene controlador gráfico mejor que mejor.
- Encapsulado TQFP (algo que se pueda soldar fácil...nada de BGA ;-))
- IDE intuitiva.

Bueno espero no pedir mucho. Más bien algún consejillo...

Salu2!
Título: Re: Nuevo con Cortex-m3
Publicado por: QIQE en 11 de Septiembre de 2010, 11:11:56
Bueno poco a poco, es cierto, creo que he dado un paso demasiado grande, seguiré compilando y estirandome de los pelos, y trataré de reportar aqui mis problemas, aunque mi pregunta estaba encaminada a si alguien conoce algun libro/manual de primeros pasos.

manwenwe  yo compré el stm32 por ebay en una placa de evaluacion con 2 uarts 1 can 1 ethernet dos pantallas graficas microfono altavoz etc etc.
pero tambien me tentaba el lpc, por ebay puedes encontrar chinos con precios ajustados para empezar.
Título: Re: Nuevo con Cortex-m3
Publicado por: manwenwe en 11 de Septiembre de 2010, 11:31:51
No suelo ser partidiario de las placas de evaluación, nunca les saco todo el jugo por falta de tiempo: es una pena xq son caras. De todas formas cambiando de arquitectura creo que sería muy conveniente empezar por una placa de evaluación...

Se me olvidó comentar que sería genial empezar con una IDE y un compilador que fuesen gratis: no puedo permitirme (mi empresa ;-)) pagar 2mil $ por un software que no tengo claro si voy a utilizar usualmente.

Ánimo QIQE si empiezo por STM ya comentaremos...XD

Salu2
Título: Re: Nuevo con Cortex-m3
Publicado por: scientist en 11 de Septiembre de 2010, 18:38:43
Yo recomiendo extensamente el IDE de LPCXpresso, que es para los cortex m0 y m3 de las familia LPC, me ha gustado bastante, ademas que permite compilar hasta 128kb gratuitos, si necesitas de mas tamaño de compilacion, te venden la IDE por solo 256 US para 256kb y 512US por 512kb, una ganga comparado con los demas, puedes empezar con el famosisimo LPCxpresso, que solo es un programador y una tarjeta adaptable, para hacer tus pruebas, por solo 20Euros o 30 US, excelente esta tarjeta, yo tengo  la lpc1114 que es la familia mas pequeña de los cortex, pero el programador que trae te permite programar inclusive los ARM9 que tiene NXP, yo me quiero comprar la nueva LPC1768, aqui unas fotos

http://www.embeddedartists.com/ (http://www.embeddedartists.com/)

(http://www.embeddedartists.com/products/images/xpr_lpc1768_350.jpg)
Título: Re: Nuevo con Cortex-m3
Publicado por: cristian_elect en 11 de Septiembre de 2010, 23:48:26
Yo comencé con luminarymicro por que en ese tiempo era lo más barato ahora han subido un poco pero lo bueno que te trae librerías y ejemplos más completa  que he  visto sobre las demás marcas y además en en los foros hay más ejemplos  y recibe ayuda de los expertos de la marca.
Título: Re: Nuevo con Cortex-m3
Publicado por: manwenwe en 12 de Septiembre de 2010, 07:52:27
Buenas,

el LCDXpresso tiene muy buena pinta. Y el LPC1768 parece muy completo. Otra cosa que me atra mucho es que la IDE está basada en ECLIPSE. Sólo me queda saber: ¿cómo está el tema de las librerías? sin ellas no soy nadie jejeje y en Microchip aq a veces tienen sus bugs... tienes librerías y ejemplos de todo que ayudan muchisimo...

Salud2
Título: Re: Nuevo con Cortex-m3
Publicado por: scientist en 12 de Septiembre de 2010, 10:55:39
cuando descargas el LPCXpresso, tiene un boton para importar ejemplos, cuando lo presionas, te envia a la carpeta donde se encuentran todos los ejemplos de los perifericos que tiene, asi que el comienzo y curva de aprendizaje es muy rapido

(http://img828.imageshack.us/img828/8789/lpcxpresso.th.png) (http://img828.imageshack.us/i/lpcxpresso.png/)

Uploaded with ImageShack.us (http://imageshack.us)
Título: Re: Nuevo con Cortex-m3
Publicado por: manwenwe en 12 de Septiembre de 2010, 17:09:00
cuando descargas el LPCXpresso, tiene un boton para importar ejemplos, cuando lo presionas, te envia a la carpeta donde se encuentran todos los ejemplos de los perifericos que tiene, asi que el comienzo y curva de aprendizaje es muy rapido

Gracias x toda la info. Le eché un vistazo a los ejemplos y tiene buena pinta. Ade+ me reafirmo: Eclipse es una pasada  de IDE ;-). También he visto que hay librerías gratis para periféricos más complejos: USB Host/Device, Ethernet, etc. Lo que me da un poco de pena es que la GUI (librería gráfica) que tienen es muy flojita y las "third party" tiene pinta de valer un riñor (Menthor Graphics p.e.)... en fín, no se puede tener todo jeje.

A ver si esta semana me pido la placa XD. Espero poder aportar a partir de ahora a este subforo ;-)

Saludos y gracias a tod@s.
Título: Re: Nuevo con Cortex-m3
Publicado por: scientist en 12 de Septiembre de 2010, 17:15:10
ok, yo todavia no me he metido a esto de las librerias graficas ni nada del GUI con LCD y touchscreen, estoy planteandome que para ese tipo de aplicaciones, mejor me paso a una plataforma como linux y qt embebido para rapido desarrollo de aplicaciones, y dejar las aplicaciones bajas a los micros sin SO como estos LPC que son muy buenos, saludos
Título: Re: Nuevo con Cortex-m3
Publicado por: manwenwe en 12 de Septiembre de 2010, 17:36:07
Yo sólo he trabajado con la GUI de Microchip: empezó flojilla pero han ido mejorando la librería y las utilidades. Aún así no me acaba de convencer el rendimiento del micro cuando lo cargas de tareas + gráficos + touchscreen. Estoy emepzando en probar la GPU que han sacado (si se le puede llamar GPU XD): PIC24FJ256DA210. Si tp me convence pues intentaré meterme en linux yo tb. De hecho hace tiempo que estoy pensando en empezar con RTOSs: pensé en adquirir alguno para PIC pero con el tiempo me he ido dando cuenta que sería mejor idea ir directamente a algun linux embebido que es más portable: 3000mil $ de licencia para una única familia de micros me parece una pasada...

Scientist: espero que si empiezas con algún OS para ARM nos cuentes como te va...

Saludos.
Título: Re: Nuevo con Cortex-m3
Publicado por: scientist en 12 de Septiembre de 2010, 19:07:08
Te cuento que para las familias LPC1114, LPC1343 y LPC1768 ya existe el PORT del FreeRTOS, que es gratuito, ya he hecho algunas cosas con FreeRTOS, es un excelente RTOS, aun mejor documentación, y existen algunas cosas q no me gustan, recomiendo que si se va a utilizar seriamente el RTOS, no se utilice un  microcontrolador con menos de 32Kb de memoria RAM, ya que despues te come muchos recursos las colas, semaforos, y demas herramientas que te provee un RTOS, y despues dices, haa, ya que habia pensado como sincronizar mi tarea, y ahora no me da la RAM  :D :D pensando asi, el mas indicado para utilizar el FreeRTOS es el LPC1768, esto es con los NXP, y ademas pienso en linux, por que habiendo ahora tantas board no tan caras y que soportan este SO, entonces es más facil comprar estas placas, desarrollar la placa de expansion para la aplicacion en particular, y desarrollar rapidamente la aplicacion que necesitas, con mas seguridad que te provee un SO como linux, haciendo tu server, etc, etc, pienso comprarme una mini6410 para empezar a jugar con el QT, aunque sino quieres invertir, puedes desarrollar en la PC y simular como va el programa en QT. Saludos
Título: Re: Nuevo con Cortex-m3
Publicado por: manwenwe en 13 de Septiembre de 2010, 16:36:11
Hace tiempo estuve leyendo sobre FreeRTOS y en algunos foros se comentaba que tenía bastantes limitaciones y bugs: aq por lo que comentas no es tanto así (quizá simplemente lo hayan mejorado).

Reálmente me va a ser dificil empezar ya que jamás programé micros bajo Linux (mis experiencias en Linux se limitan a configuración de servidores de red) y tp tengo experiencia con RTOSs: me va a tocar empaparme de threads, semaforos,etc...XD. Asi que hasta que no termine el proyecto actual, basado en PIC32, en el trabajo (mínimo 6 meses) no puedo plantearme migrar: si me dejan los jefes claro jeje.

De mientras iré leyendo y probaré la LCDXpresso.

Gracias por los consejos/comentarios scientist.
Título: Re: Nuevo con Cortex-m3
Publicado por: QIQE en 19 de Septiembre de 2010, 13:03:11
Hablando de placas de bajo coste Click Click (http://www.st.com/mcu/contentid-133-110-STM32VLDISCOVERY.html)

Tengo que buscar mas info de ella pero bueno 10€ no es precio para nada descabellado.
Título: Re: Nuevo con Cortex-m3
Publicado por: scientist en 19 de Septiembre de 2010, 13:53:13
Apenas ayer la cheque, para los que creen que el mercado hobbysta se ha convertido en un mercado serio, aqui estan las pruebas, saludos
Título: Re: Nuevo con Cortex-m3
Publicado por: jgpeiro06 en 24 de Septiembre de 2010, 11:12:56
Hola,

yo compre la LPCxpresso con un LPC1343 para experimetar con los con los cortex m3, al final regalé la placa ya que no era lo que necesitaba. Estos son los pros y contras que le encontré:
+ es barata, solo 20€ placa + depurador
+ tiene IDE y compilador de C y C++ gratuitos.
+ El IDE permite ver los registros de cada periferico en la depuracion, con todos los nombres de los registros y sus bits.
+ Tiene una implementacion de las librerias printf que permite mostrar el texto en la consola del IDE
- En la versión LPC1343 apenas cabe ningún programa en C++ que use las librerias estandar iostream.
- El compilador genera un código muy largo para hacer operaciones en coma flotante ( creo que en los PIC24 se hacian en menos instrucciones ).
- El programador/depurador que trae, llamado LPCLink no funciona con otros IDE que no sean de CodeRed, y solo programa una docena de micros de NXP.
- La parte del micro solo trae un cristal y un LED.
- Aunque la el programador se puede separar, no es facil de cortar.

(http://akizukidenshi.com/img/goods/1/M-03598.JPG)

al tiempo descubrí CoLinkEx, una placa similar, pero Open Source y, a mi juicio, mucho mas "cuidada".
+ es barata, 20€ y te dan el codigo + esquematicos + PCB por si te la quieres hacer a tu manera.
+ Permite programar varios micros de distintas marcas como NXP, ST, Texas...
+ Es compatible con CoIDE y con otros como Keil o IAR
+ La placa trae programador/depurador y un LPC1114 con varios perifericos como:
    2 pulsadores ( reset y boot )
    4 leds
    memoria EEPROM I2C
    sensor de temperatura I2C
    Conversor a RS-232
+ Tiene IDE y compilador de C gratuitos.
+ Se puede actualizar el firmware del programador/depurador por USB.
+ Tienen un RTOS llamado CoOS muy completo
+ Viene "semi" recortada para que se pueda cortar facilmente con la mano.
- No se puede programar en C++
- La depuración con el IDE es muy basica. No puedes ver comodamente los registros de los perifericos.

(http://www.coocox.org/images/Cortex-M0/colinkex.png)

En conjunto yo prefiero CoLinkEx mucho antes que LPCxpresso, pero al final me compré otras herramientas para trabajar, algo mas caras, pero mejores aun en relacion calidad/precio.
Como IDE uso Keil uVision, que soporta todos los micros basados en ARM y trae simulador completo (con perifericos). ( se puede descargar desde el emule )
Como compilador Sourcery G++ para ARM, que esta basado en GCC y permite compilar para CortexM3 muchos programas open source escritos para linux. ( es gratuito )
Como depurador he comprado un clon del ULINK2, para el IDE keil, que soporta casi todos los micros basados en ARM de los fabricantes mas importantes como Texas, ST, NXP, Atmel... Como es una copia china, cuesta la sexta parte del original, y viene con un CD con el Keil Uvision y un Keygen.
Como placa he comprado la STM32 Red Bull, con un STM32, FLASH y SRAM externas, lector de SD y una TFT de 3.2 pulgadas.
Yo compre los últimos dos por separado, pero aquí están los 2 por 520yuanes o 57 €!!!
Ulink2 + RedBull (http://youa.baidu.com/item/7b390119aa847123400cbc88)

(http://www.powermcu.com/photo/redbull28+ULINK/4.jpg)


Título: Re: Nuevo con Cortex-m3
Publicado por: scientist en 24 de Septiembre de 2010, 12:26:36
 :shock: :shock: :shock: Lo compraste directamente desde la pagina en chino? saludos (muy cierto, las herramientas baratas, usualmente tienen algunas limitaciones)
Título: Re: Nuevo con Cortex-m3
Publicado por: jgpeiro06 en 24 de Septiembre de 2010, 12:42:08
Citar
Lo compraste directamente desde la pagina en chino?
No, las compre por separado, ya que no conocía esa pagina china.
El ULINK2 lo compré por 33€ aqui: http://www.satistronics.com/arm-ulink2-usbjtag-adapter-emulator-debugger-for-flash-programming-and-debugging_p2820.html (http://www.satistronics.com/arm-ulink2-usbjtag-adapter-emulator-debugger-for-flash-programming-and-debugging_p2820.html)
La STM32 RedBull la compre por 56# aqui: http://cgi.ebay.com/STM32F103ZET6-development-board-3-2-TFT-module-/120615243151?pt=BI_Electrical_Equipment_Tools&hash=item1c153a8d8f#ht_1677wt_911 (http://cgi.ebay.com/STM32F103ZET6-development-board-3-2-TFT-module-/120615243151?pt=BI_Electrical_Equipment_Tools&hash=item1c153a8d8f#ht_1677wt_911)

De todas maneras, la pagina en chino se queda bastante bien con el traductor de google.
http://translate.google.com.uy/translate?u=http://youa.baidu.com/item/7b390119aa847123400cbc88&sl=zh-CN&tl=es&hl=&ie=UTF-8 (http://translate.google.com.uy/translate?u=http://youa.baidu.com/item/7b390119aa847123400cbc88&sl=zh-CN&tl=es&hl=&ie=UTF-8)
Título: Re: Nuevo con Cortex-m3
Publicado por: RICHI777 en 24 de Septiembre de 2010, 15:33:39
Hola, muy bueno las comparativas ! Preguntita el "Sourcery G++ para ARM" lo compraste ?

Saludos !
Título: Re: Nuevo con Cortex-m3
Publicado por: scientist en 24 de Septiembre de 2010, 15:36:40
gracias, yo tengo los dos tambien, el lpcxpresso y el colinkex, creo que las dos herramientas son buenas, hay que recordar que los micros lpc cortex m0, fueron hechos para competir en el mercado de los micros de 8 bits, es por eso que no tienen mucho poder, pero a mi me han gustado bastante, ya se ha comentado en otro foro acerca de esta tematica, lo que si es de notar, el ide que ofrece lpcxpresso es gratuita y con muchos ejemplos para empezar, la verdad no me ha gustado mucho el ide de coocox, y prefiero utilizar el keil para realizar programas con el colinkex, solo una cuestion, hasta donde lei, el colinkex solo soporta el keil, pregunte en el foro de la pagina si pensaban añadir el iar, y me contestaron que seria una de las mejoras posibles, el que si es compatible es el colink, pero bueno, creo que estas nuevas herramientas, lo que quieren, es introducir al desarrollador inexperto, en los productos que ellos ofrecen, esto es igual a
rapido desarrollo+ ejemplos+ ide gratuito + placa de desarrollo barata= enamorar al desarrollador con sus productos (y quitarle mercado a los pics en el mundo hobbysta)
lo mismo estan tratando de hacer texas instruments, stm, freescale, y los demas, honestamente, estan haciendo muy bien el trabajo, (y que decir de atmel "ARDUINO" un fenomeno)
Claro que esto lleva contras, como es la poca flexibilidad en el desarrollo avanzado y profesional, aunque creo que es de respetar estos ides como serias herramientas de trabajo profesional y baratas, saludos
Título: Re: Nuevo con Cortex-m3
Publicado por: jgpeiro06 en 24 de Septiembre de 2010, 16:18:45
Citar
el "Sourcery G++ para ARM" lo compraste ?
No, no, la version Lite de ese compilador es gratuito. Lite no tienen ninguna limitacion, salvo que tienes que usarlo desde un IDE.
http://www.codesourcery.com/sgpp/lite/arm
Título: Re: Nuevo con Cortex-m3
Publicado por: RICHI777 en 24 de Septiembre de 2010, 16:33:30
Gracias x la data, yo estoy con LPCExpresso y CodeRed recien empezando y muy duro para mi, eclipse no me piache !

Saludos !
Título: Re: Nuevo con Cortex-m3
Publicado por: psykhon en 27 de Septiembre de 2010, 10:49:00
Gracias x la data, yo estoy con LPCExpresso y CodeRed recien empezando y muy duro para mi, eclipse no me piache !

Saludos !
paciencia, que se pone un poquito duro al inicio mas que nada por las diferencias de arquitectura pero lentamente va tomando sentido y despues no te convence nadie de volver a 8 bits  :D
Título: Re: Nuevo con Cortex-m3
Publicado por: RICHI777 en 27 de Septiembre de 2010, 10:59:00
No me pone mal la diferencia de arquitectura sino Eclipse en si mismo jejejeje

Saludos !