2012-01-11 20 views
11

Recientemente comencé un proyecto que requiere un procesador Cortex M3. Tengo experiencia previa con microcontroladores AVR de 8 bits, así que esperaba una transición no demasiado grande.¿Alguien sabe algún tutorial stm32 muy básico?

Así que compré un kit STM32L-Discovery (ya que la baja potencia es un punto importante) y comencé a buscar algunos ejemplos. Sin embargo, estoy completamente estancado al principio. Al programar con AVR todo fue muy sencillo, con solo incluir 2 o 3 archivos fue posible escribir un main.c simple como por ejemplo un LED parpadeante.

Sin embargo, los ejemplos en IAR EWARM (que estoy usando) parecen muy hinchados, hay muchos archivos que dificultan el inicio. Estoy teniendo el mismo problema con la mayoría de los tutoriales en línea.

¿Alguien sabe algún tutorial (muy) simple que pueda ayudarme? Estoy pensando en comprar "The Definitive Guide to the ARM Cortex-M3", ya que parece muy recomendable.

Esto podría ser una pregunta muy tonta, pero estoy atrapado por mucho tiempo y me siento un poco desesperado.

Respuesta

4

tengo algunos en github http://github.com/dwelch67

el repositorio stm32vld es para el descubrimiento línea de valor STM32 y stm32f4d para el descubrimiento stm32f4. Con cualquiera de ellos deberías ser capaz de tomar uno de los primeros ejemplos de parpadeo y cambiar el init para cualquier pin gpio que estés usando para ese chip/placa. Todos ellos (una vez que salgo del ensamblador en ejemplos C) muestran cómo usar herramientas basadas en llvm y herramientas gnu para construir proyectos centrados en C con algún ensamblaje para que pueda comenzar. No confío en ningún otro script del enlazador u otro trabajo enlatado como que todo esté controlado en el ejemplo.

Afortunadamente, mis tutoriales no entran en su categoría del "mismo problema con la mayoría de los tutoriales en línea".

+0

Puede vagar por mis ejemplos de mbed_samples blinker, escribí mucho más texto (probablemente demasiado) sobre los por qué y cómo de lo que estaba haciendo , los ejemplos stm han sido más un enfoque simplemente "aquí es llevarlo". –

+0

Gracias a la rápida respuesta, estoy investigando. – luc

+0

+1 @dwelch: ¿Funcionarían esos ejemplos con la línea STM324F429? Ya sea que lo hagan o no, me gustaría aprender a modificar los denominados "scripts de enlazadores" para obtener la combinación correcta para un procesador dado. Estoy leyendo su README actualmente, pero cualquier participación adicional sería muy apreciada. Gracias. (Por cierto: Completamente con usted en el enfoque de programación baremetal - la mejor manera de aprender!) – Sabuncu

3

Estoy totalmente de acuerdo con usted. ¡También estoy empezando y me resulta difícil incluso arañar la superficie! Tengo una buena experiencia con los PIC, pero con los ARM la curva de aprendizaje es muy pronunciada.

Para el STM32F4Discovery que estoy usando, ST proporciona una serie de ejemplos. A partir de alternar simple pin. Estoy revisando el archivo main.c, que por cada ejemplo está bien comentado, y trato de entender desde allí. Tienen una biblioteca de periféricos, así que localízala y mira las declaraciones de las funciones. Aprendí algunas cosas así.

También asegúrese de hacer referencia al manual real del ARM que está utilizando.

Creo que se reduce a la cantidad de tiempo que tiene que pasar. Hablando por mi cuenta, no tengo tiempo para revisar el manual y entender cómo funciona todo. ¡Si encuentra algunas buenas fuentes, publíquelas!

Para terminar estoy pegando un par de direcciones URL se me encuentra información útil:

http://www.hitex.com/index.php?id=download-insiders-guides

http://www.micromouseonline.com/category/stm32/#axzz1wMO2VjAI

Cuestiones relacionadas