9 votos

Iniciarse en el C embebido con ATmega32 (serie ATmega AVR)

Tengo una placa ATmega32 por ahí y me imagino que sería perfecta para empezar con los microcontroladores. Una vez hice algunos balbuceos en C embebido (que es cuando tengo esta placa) pero el flujo se detuvo debido a algunas cosas. Ahora tengo dos preguntas:

  1. Cuál es el mejor recurso gratuito para iniciarse en C para la serie avr. Conozco el AVR-GCC pero estaba buscando algunos tutoriales o libros gratuitos para iniciarme.

  2. ¿Debo saltar directamente a C o pasar primero por ASM? Veo que hay muchos libros de ASM por ahí. ¿Cuál es la mejor opción?

Buscando en Internet, encontré el bootloader de Arduino para ATmega32 aquí http://retrointerfacing.com/?p=30 pero el problema es que yo un vacilante para hacer algunos retoques con los bits de fusibles y todo. ¿Es seguro hacerlo?

6voto

letronje Puntos 128

El documentación de avr-libc es una gran fuente de información para C en AVRs. Aquí tienes otro .

Personalmente, prefiero trabajar en C. Hacer uso de avr-libc te da una buena portabilidad de código dentro de la familia AVR. Sin embargo, si estás haciendo algo crítico para la sincronización, es posible que tengas que recurrir a ASM.

Si usted tiene un paralelo o "alta tensión" Programador AVR entonces siempre puedes reprogramar los bits de los fusibles. Si estás usando serial (In-System-Programming, ISP) entonces ten cuidado de no deshabilitar los bits SPIEN o RESETENABLE ya que estos impedirán que puedas reprogramar.

Hay un Escudo de programación Arduino HV disponible.

5voto

Mark Biek Puntos 41769

Únase a Freaks del AVR . Encontrarás muchos recursos y ayuda si te quedas atascado.

4voto

Friend Of George Puntos 359

Yo empezaría con C. Puede que necesites un fragmento ocasional de ASM pero para la mayoría de las aplicaciones eso sería todo. La excepción sería un cargador de arranque si usted decide rodar su propio.

Dave Mellis ha publicado un tutorial sobre el AVR en la wiki del MIT HLT. Habla de la configuración de las herramientas para el ATmega328, pero parece lo suficientemente para ayudarte con diferentes dispositivos. Ver

http://hlt.media.mit.edu/wiki/index.php/AVR_Programming

Las bibliotecas y los ejemplos en el sitio de Atmel parecen ser buenos. He utilizado varios fragmentos de sus notas de aplicación. La biblioteca I2C (TWI) que uso en mi código RTC viene del sitio de Atmel.

3voto

Brian Deacon Puntos 4185

Yo me decantaría primero por Arduino. Hay muchos libros, tutoriales y código de ejemplo. Y una gran y agradable comunidad. Luego, si estás familiarizado con Arduino, prueba C con AVR-GCC.

No puedo recomendar ASM en estos días. Puede que haya algunos rincones en los que tengas que usar ASM, pero la mayoría de las cosas se pueden resolver con C. Con ASM puedes aprender algunos detalles sobre el funcionamiento de un microcontrolador, pero si quieres hacer las cosas más rápido, yo me quedaría con C o C++.

0voto

frankodwyer Puntos 121

Puedes empezar por C programming for microcontrollers, de Joe Pardue. Utiliza AVRStudio5 y sigue http://avrfreaks.net ,puedes conseguir un montón de tipos geniales y útiles aquí.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X