Go Down

Topic: Caricare bootloader su ATmega168 usando Arduino 09 (Read 1 time) previous topic - next topic

Dani88

Dec 10, 2010, 07:34 pm Last Edit: Dec 10, 2010, 07:35 pm by Dani88 Reason: 1
Dunque mi è arrivato stamattina l'atmega 168. M sono accorto però che è senza bootloader  :-[
Mi sto quindi picchiando per cercare di far funzionare il tool che permette di caricare il bootloader tramite arduino.
Scarico lo sketch su arduino con atmega328, collego come segue (preso dal sito)
pin 10 --> pin 1 atmega 168 (reset)
pin 11 --> pin 17 atmega
pin 12 --> pin 18
pin 13 --> pin 19
+5v --> pin 7 e 20
GND -->  pin 8 e 22
Poi sui pin 9 e 10 dell'atmega 168 il quarzo

Poi faccio Tools --> burn bootloader -->  w/ Arduino as ISP
ma ricevo questo errore:
Code: [Select]

avrdude: stk500_program_enable(): protocol error, expect=0x14, resp=0x50
avrdude: initialization failed, rc=-1
        Double check connections and try again, or use -F to override
        this check.

avrdude: stk500_disable(): protocol error, expect=0x14, resp=0x51

Testato

- [Guida] IDE - http://goo.gl/ln6glr
- [Lib] ST7032i LCD I2C - http://goo.gl/GNojT6
- [Lib] PCF8574+HD44780 LCD I2C - http://goo.gl/r7CstH

Dani88

No.. ho un arduino 2009 con ATmega328 e poi un ATmega168 su breadboard sul quale devo caricare il bootloader :)

Testato

effettivamente se ricrei tutto bene sulla bread deve funzionare.

Io, come gia' consigliato sull'altro post a rigiardo, mi costruirei il cavetto parallelo. sono giusto alcune resistenze ed una volta costruito te lo tini li' sempre utile, mentre cosi' devi ricreare arduino su breadborad ogni volta che devi programmarne uno.
- [Guida] IDE - http://goo.gl/ln6glr
- [Lib] ST7032i LCD I2C - http://goo.gl/GNojT6
- [Lib] PCF8574+HD44780 LCD I2C - http://goo.gl/r7CstH

Dani88


Testato

questo, e' ufficialmente supportato dall'IDE e costa 50centesimi

http://www.arduino.cc/en/Hacking/ParallelProgrammer
- [Guida] IDE - http://goo.gl/ln6glr
- [Lib] ST7032i LCD I2C - http://goo.gl/GNojT6
- [Lib] PCF8574+HD44780 LCD I2C - http://goo.gl/r7CstH

Dani88


Testato

si il metodo bitbang, va bene anche quello.

Ma esiste questa possibilita' su arduino Uno ? non avendo il ftdi ? E' stata forse creata una nuova procedura ?
- [Guida] IDE - http://goo.gl/ln6glr
- [Lib] ST7032i LCD I2C - http://goo.gl/GNojT6
- [Lib] PCF8574+HD44780 LCD I2C - http://goo.gl/r7CstH

leo72

E' il problema che ho io nel voler programmare un Atmega dalla mia Uno. Al momento credo che non si possa fare, proprio per l'assenza di quel chip.

uwefed

ciao Dani88

Anche se hai risolto provo a darti la mia opinione sulla causa perché non funzionava:

Quote
Poi sui pin 9 e 10 dell'atmega 168 il quarzo
devi metter anche 2 condensatori da 22 pF su massa. Senó è possibile che l' oscillatore non funzioni.
Le istruzioni per caricare sono questi: http://arduino.cc/en/Tutorial/ArduinoToBreadboard

Ciao Uwe


Dani88

ecco, giusto sui condensatori...(vado un attimo OT tanto cmq il problema è risolto :))
L'altro giorno ho finito il progetto di un orologio (forse hai letto il topic) e avevo avuto dei problemi col quarzo.
In pratica con i condensatori da 22pF non andava nulla, levandoli il micro andava solo toccando con un dito il quarzo  :o :o
Ho poi messo un quarzo temporaneo da 12mhz e con quello sembra andare tutto (senza condens).
Ora non ho capito se era il quarzo che era andato (strano...appena comprato) o cos'altro...

uwefed

Io penso ad un falso contatto e toccando anche leggermente il quarzo lo spingevi a fare contatto.
22pF é una capacitá molto bassa. Mettendo dei cavetti lunghi e usando una breadbord hai giá delle capacitá di quel ordine di grandezza.
Su una scheda si posiziona il Quarzo sempre vicino al controller per evitare che le piste fungono da antenna. In quel caso i condensatori sono necessari.
Ciao Uwe

Dani88

ank'ìo avevo pensato alle saldature, però era impossibile xkè le avevo rifatte 2 volte sul quarzo proprio per questo motivo. Ti giuro bastava sfiorarlo e il micro andava, toglievi il dito e puf...fermo XD  :o

Go Up