Para todos los que quieren comenzar a desarrollar en uC Atmel y tienen un pickit2, este hilo les será de gran interés.
avrdude es un programa de línea de comandos, muy conocido, para programar controladores Atmel AVR. Éste tiene soportado una gran cantidad de programadores (Hardware), y dougy83 y prowan69 escribieron un parche para que pueda soportar el pickit2
----------------------------------------------------
Actualización Octubre 2012
El parche ya fue integrado desde la revisión 1102, así que pueden aplicar las sig instrucciones:
$ svn checkout svn://svn.savannah.nongnu.org/avrdude/trunk
$ cd trunk/avrdude/
$ ./bootstrap
$ ./configure
$ make
$ sudo make install
$ cd trunk/avrdude/
$ ./bootstrap
$ ./configure
$ make
$ sudo make install
Si tienen algún problema o quieren ahorrarse todo el procedimiento, pueden descargar un paquete *.deb que creé con la revisión 1104, que incluye soporte para el pickit2:
DOWNLOAD: avrdude_5.11.1-1104_i386.deb
---------------------------------------------------
El parche lo pueden encontrar en: http://savannah.nongnu.org/patch/?7184
Básicamente para poder usar el pickit2 con AVR hay que compilar avrdude de la siguiente forma:
1. Descargamos el parche. A la fecha el link de descarga del parche más actual es el que se muestra, es buena idea visitar la web del parche para ver si hay alguna actualización.
$ wget http://savannah.nongnu.org/file/avrdude_pickit2_support-svn-1068.patch?file_id=25391 -O avrdude_pickit2.patch
2. Descargamos las fuentes de avrdude. Como el autor dice que el parche fue usado en la revisión 1068 de avrdude trunk descargamos esa. Puede probar otra revisión si lo desea.
$ svn checkout svn://svn.savannah.nongnu.org/avrdude/trunk -r 1068
3. Aplicamos el parche a las fuentes.
$ cd trunk/avrdude/
$ patch < ../../avrdude_pickit2.patch
$ patch < ../../avrdude_pickit2.patch
4. Compilamos e instalamos.
$ ./bootstrap
$ ./configure
$ make
$ sudo make install
$ ./configure
$ make
$ sudo make install
Y así si por ejemplo queremos programar un ATtiny2313 con un programa llamado BlinkyLED.hex sería:
$ avrdude -p t2313 -c pickit2 -e -U flash:w:BlinkyLED.hex
La asignación de pines SPI del AVR con el pickit2 es el sig:
ISP Pinout | |
AVR pin | Pickit2 pin |
RST | VPP/MCLR (1) |
VDD | VDD Target (2) |
GND | GND (3) |
MISO | PGD (4) |
SCLK | SCLK - PDC (5) |
MOSI | AUX (6) |
Saludos!
Esto fue probado por mi con el siguiente equipo:
SO: GNU/Linux
Distribución: Ubuntu 10.04
Pickit2 firmware version: 2.32.00
avrdude trunk revisión 1068 (avrdude version 5.11svn)
Parche: file #25391 avrdude_pickit2_support-svn-1068.patch
Saludos amigo, el arreglo q muestras funciona con el atmega32 o el atmega8????
ResponderEliminarSeguramente sí........... pero sólo hay una forma de saberlo; intentándolo.
ResponderEliminarYo he programado el ATtiny2313 y un ATMEGA168. En la liga del parche dicen que han probado con ATMEGA32, ATMEGA48 y ATtiny2313.
Saludos.