Pages: 1 [2] 3 4   Go Down
Author Topic: Arduino usato come ISP AVR  (Read 3777 times)
0 Members and 1 Guest are viewing this topic.
Deep south of Italy
Offline Offline
Faraday Member
**
Karma: 8
Posts: 2955
The quieter you become, the more you can hear
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

La basetta a parte che dici dovrebbe avere un minimo di componenti sù per l'atmega e un ftdi per la connessione al pc.
Praticamente un arduino con textool smiley
Logged

Bari
Offline Offline
Full Member
***
Karma: 0
Posts: 108
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Si e no  smiley

I componenti aggiuntivi costano veramente 2 soldi e come programmatore continuerei ad usare l'arduino.
In aggiunta userei l'ide o direttamente avrdude da linea di comando (a sapere come si fa smiley-confuse)
Logged

0
Online Online
Shannon Member
****
Karma: 132
Posts: 10498
:(){:|:&};:
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ho lanciato il comando segnalato ed ho avuto un errore sulla porta, non riusciva ad aprirla.
Ho lanciato quindi il comando
Quote
avrdude -p m328p -P com3 -c avrisp -b 19200
ed ho ottenuto il seguente risultato
Quote
avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.01s

avrdude: Device signature = 0x1e9406
avrdude: Expected signature for ATMEGA328P is 1E 95 0F
         Double check chip, or use -F to override this check.

avrdude done.  Thank you.
Domanda stupida: E ora?

Grazie

stai usando questa guida?
http://arduino.cc/en/Tutorial/ArduinoISP
Logged

sei nuovo? non sai da dove partire? leggi qui: http://playground.arduino.cc/Italiano/Newbie

Bari
Offline Offline
Full Member
***
Karma: 0
Posts: 108
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Si, ho usato lo schema "Circuit (targeting an AVR on a breadboard)" sia il primo che il secondo e poi ho usato anche quello a questa pagina http://jimsmindtank.com/using-the-arduinoisp-sketch-part-1/
Logged

0
Online Online
Shannon Member
****
Karma: 132
Posts: 10498
:(){:|:&};:
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

e che errore ti da usando il metodo del link?
Logged

sei nuovo? non sai da dove partire? leggi qui: http://playground.arduino.cc/Italiano/Newbie

Bari
Offline Offline
Full Member
***
Karma: 0
Posts: 108
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
avrdude: Expected signature for ATMEGA328P is 1E 95 0F
Double check chip, or use -F to override this check.
Poi ho lanciato il comando
avrdude -p m328p -P com3 -c avrisp -b 19200
ed ho avuto la risposta
Quote
avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.01s

avrdude: Device signature = 0x1e9406
avrdude: Expected signature for ATMEGA328P is 1E 95 0F
         Double check chip, or use -F to override this check.

avrdude done.  Thank you.
Per questo chiedevo come continuare anche da riga di comando
Logged

0
Online Online
Shannon Member
****
Karma: 132
Posts: 10498
:(){:|:&};:
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

avrdude -F -p m328p -P com3 -c avrisp -b 19200
ma sei sicuro del comando? è molto simile(se non lo stesso) a quello usato per programmare il bootloader usando solo il chip FTDI...

io ricontrollerei anche i collegamenti
Logged

sei nuovo? non sai da dove partire? leggi qui: http://playground.arduino.cc/Italiano/Newbie

Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 333
Posts: 22938
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Ma quel comando mi pare che non faccia nulla, oltretutto.
Il parametro "p" imposta il microcontrollore, "P" la porta da usare, "c" il programmatore e "b" la velocità in baud.
E poi? Nel senso che ti manca il parametro "U" per programmare i fuse o il nuovo firmware.
Logged


Bari
Offline Offline
Full Member
***
Karma: 0
Posts: 108
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Il comando è quello (senza -F che in questo momento non serve perchè sta solo leggendo).

Espandendolo tramite help leggo
-p m328p =  -p <partno>                Required. Specify AVR device.
-P com3 = -P <port>                  Specify connection port.
-c avrisp = -c <programmer>            Specify programmer type.
-b 19200 = -b <baudrate>              Override RS-232 baud rate.

Quindi non ci sono scritture, solo letture ed, infatti, ottengo il risultato sperato: il device signature.
Lui dice "Expected signature for ATMEGA328P is 1E 95 0F" ed invece ottiene "Device signature = 0x1e9406"



Logged

Bari
Offline Offline
Full Member
***
Karma: 0
Posts: 108
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Leo72 mi ha preceduto di qualche secondo smiley

Quel comando non mi serve per programmare, mi è stato consigliato da Fabio Varesano per controllare il chip e vedere che device signature ha e osa si aspetta
Logged

Bari
Offline Offline
Full Member
***
Karma: 0
Posts: 108
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Questo fine settimana ho fatto diverse prove.
La cosa più importante è che facendo delle prove di scrittura sul chip come
avrdude -p m328p -P com3 -c avrisp -b 19200 -F -B 3 -U lock:w:0x3f:m
ottengo errori
Quote
avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.02s

avrdude: Device signature = 0x1e9406
avrdude: Expected signature for ATMEGA328P is 1E 95 0F
avrdude: reading input file "0x3f"
avrdude: writing lock (1 bytes):

Writing |                                                    | 0% 0.00s ***failed;
Writing | ################################################## | 100% 0.13s

avrdude: 1 bytes of lock written
avrdude: verifying lock memory against 0x3f:
avrdude: load data lock data from input file 0x3f:
avrdude: input file 0x3f contains 1 bytes
avrdude: reading on-chip lock data:

Reading | ################################################## | 100% 0.01s

avrdude: verifying ...
avrdude: verification error, first mismatch at byte 0x0000
         0x3f != 0x00
avrdude: verification error; content mismatch

avrdude: safemode: Fuses OK

avrdude done.  Thank you.
Quindi la scrittura è fallita
Logged

Bari
Offline Offline
Full Member
***
Karma: 0
Posts: 108
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Per la cronaca il chip che sto cercando di programmare è un ATMega 168P-20PU come leggo sul chip stesso
Logged

0
Online Online
Shannon Member
****
Karma: 132
Posts: 10498
:(){:|:&};:
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

e allora per forza che non va, gli dici che è un 328p!
(con il comando -p m328p)
nella pagina del bitbang ci sono i codici per gli altri modelli come il tuo smiley
Logged

sei nuovo? non sai da dove partire? leggi qui: http://playground.arduino.cc/Italiano/Newbie

Bari
Offline Offline
Full Member
***
Karma: 0
Posts: 108
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Scusate ho scritto una ca...volata per la fretta.
Il chip che tento di programmare è un ATMega 328P-PU sul chip stesso è anche scritto un 1043.
L'arduino duemilanove che sto usando ha su un chip ATMega 168P-20PU con il numero 1016
Logged

0
Online Online
Shannon Member
****
Karma: 132
Posts: 10498
:(){:|:&};:
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

ah ok, comunque a occhio c'è un'errore di comunicazione, se vedi quello che sei andato a scrivere è il bit di lock.. e comunque risulta sabgliato sul chip (0X00 anzichè 0x3f)
ricontrolla i collegamenti e vedi se per caso il 328 è stato bloccato contro le scritture... ma sicuro che non sia fritto?
Logged

sei nuovo? non sai da dove partire? leggi qui: http://playground.arduino.cc/Italiano/Newbie

Pages: 1 [2] 3 4   Go Up
Jump to: