sto realizzando un progetto che implica l'utilizzo di un arduino stand alone, ho quindi realizzato su breadboard(andrà poi trasferito su millefori) il mio stand alone.
inoltre ho una scheda Arduino UNO.
il mio problema consiste nel programmare l'ATmega328p-PU dello stand alone.
ho provato quindi vari metodi per programmare l'ATmega con il semplicissimo "Blink":
ho modificato il file boards.txt
ho provato togliendo il processore dall'UNO
ho provato tenendo il processore
ho provato usando i pin di reset, RX eTX
ho provato usando i pin 10,11,12,13
ma niente.
ho visto sul sito che la cosa è fattibile usando un convertitore usb-seriale o con un cavo FDTI, ma diciamo che preferirei evitare di comprare altre cose, anche per non aspettare tanto..
Basta che fai una ricerca per "Arduino as ISP" e trovi quello che ti interessa ...
... praticamente, sul tuo standalone prevedi i 6 pin del connettore ISP e poi usi il tuo Arduino come programmatore ISP.
Il bootloader, sullo standalone, in questo modo non serve, viene cancellato e la relativa area di flash diventa a disposizione del programma
ho fatto molte ricerche su "Arduino come programmatore ISP" e "Arduino as ISP", ma non ho mai trovato qualcosa che funzionasse davvero..
come devo fare? cos'altro posso cercare? per caso avete voi qualche guida?
JonnyK:
come devo fare? cos'altro posso cercare? per caso avete voi qualche guida?
... esisteva un tempo una bella guida del Prof. Menniti, ma ora non la si trova più in giro. Al suo posto è uscita una pubblicazione che puoi acquistare anche on-line QUI ...
il mio problema consiste nel programmare l'ATmega328p-PU dello stand alone.
Se hai messo il 328 da programmare al posto di quello montato sulla uno e non riesci a programmarlo allora
vuole dire che il bootloader o non è presente o se presente non è compatibile. Se le cose stanno così non rimane che caricare il software arduinoISP nella UNO, fare i collegamenti ICSP e da ide o tramite avrdude trasferire il programma nello standalone, oppure trasferire il bootloader nello standalone, di modo che acquistando la schedina usb to serial poi tu possa trasferire il firmware da PC a standalone.
collega i pin D0 (rx), D1 (tx), + 5 V, GND, reset della Uno ai pin corrispondenti dell'atmega sulla stand alone
collega la Uno alla porta USB e programma nel solito modo come fosse una normale Uno
Il modo migliore, invece, è quello di usare la tecnica ISP come ti hanno detto.
Poi c'è il modo "ultraprincipiante": programma la Uno, togli l'atmega e spostalo sulla stand alone. Ovviamente ogni volta che dovrai modificare il programma dovrai spostare di nuovo l'atmega sulla Uno, insomma è da evitare.
gpb01:
... esisteva un tempo una bella guida del Prof. Menniti, ma ora non la si trova più in giro. Al suo posto è uscita una pubblicazione che puoi acquistare anche on-line QUI ...
Guglielmo
Ottimo libro che ti permetterà di programmare molti modelli di controllori Atmel.
Per la programmazione con tecnica ISP puoi provare qui ti ricordo che sarà necessario caricare sull'arduino uno lo sketch ArduinoISP e dovrà essere impostato come programmatore:Arduino as ISP. in questo modo il tuo arduino uno sarà un programmatore ed il tuo standalone il target sul quale caricare il bootloader e gli sketch.Ti consiglio vivamente un convertitore usb/seriale per programmare i tuoi standalone.