SHIELD ARDUINOISP MULTI 1

Похожие документы
Quaderni di Elettronica corso per creativi ed inventori

Workshop Teachers For Teachers settembre 2013

Arduino per tecnici, ingegneri e maker Titolo originale: Arduino: A Technical Reference di J. M. Hughes

1 - Burn Bootloader. aggiornato 8 gennaio 2012

Come costruire un RBBX BLHeli-Setup-Box.

Le sintonie elettroniche per l ATV

Internetworking V a nno

Corso di programmazione Arduino DI MALVEZZI DAVIDE

Semplice generatore di toni subaudio CTCSS per RTX KT-210EE

Kit Assembling. (board rev 002)

Andrea Di Dato. e fu così che i maker misero le ali

Week Programmer v2.1 Week Programmer Rev2.1

ISTRUZIONI PER L AGGIORNAMENTO DEL SW DEL PROVA FARI

Corso Base Arduino ed Elettronica

Facciamo lampeggiare un led

Verso Arduino... E oltre!

Questo sistema si è poi diffuso in tutto il mondo, soprattutto in ambito didattico e hobbistico. Arduino mette a disposizione:

Cos'è Arduino? rilasciata con licenza di tipo open source.

Centrale di allarme SecurLAN MANUALE UPGRADE SECURLINK V.6.4.0

Un alimentatore da 13,8 volt stabilizzato per una stazione QRP

Prezzo Progetto 100,00 circa

Relazione Tecnica Sensore di Temperatura con interfacciamento microcontroller Arduino 1.3

Linguaggi di programmazione

HP LED Driver Shield. EtherMania di Signorini Marco Via Cadore MALNATE (VA) P.I REA VA

Sch ed e Ser ie RD7 7

ARDUINO E LE TECNICHE DI PROGRAMMAZIONE DEI MICROCONTROLLORI ATMEL

AI 464 ETH. Gestione dell interfaccia AI_4164_ETH

HiProg3 Gestione Programmazione Triennale ed Elenco Annuale dei Lavori Pubblici. Manuale d installazione

Manuale AGEduino MINI

MM ARDUINO ) un clock al quarzo a 16MHz, abbastanza veloce per la maggior parte delle applicazioni;

In questo nuovo fascicolo ZAKINPROGRESS COMPONENTI

Descrizione Sistema Monitoraggio Contametri

Introduzione ad Arduino Giuseppe Augiero

TELEVIVAVOCE VERSIONI. Televivavoce 1 pulsante

Alimentatore master. Introduzione

MODULO GSM/GPRS NX-7002

03FYZ TECNICHE DI PROGRAMMAZIONE Esercitazione di Laboratorio 03 es.1 23 Marzo 2016

Per prima cosa vi serve:

MANUALE Lanterne di coda con decoder

Oggetto: NUOVE SCHEDE ELETTRONICHE PER FERRI DA STIRO A CALDAIA

Manuale istruzioni. Interfaccia USB art Manuale per l'installatore

MANUALE INSTALLAZIONE

GUIDA alle Tecniche di Programmazione dei microcontrollori ATMEL

SEMAFORO per MODELLISMO MINIATURE TRAFFIC LIGHT

Lettore di Frequenza per VFO a conversione

MEGA HotSpot. (Antonio Matraia, IU5JAE)

Manuale assemblaggio IT_VNA RL2

Modulo apriporta. SEzione 6. Scaricabile dal sito nell area Manuali Tecnici. sez. 6. installazione 2.

UNITA GSM ASSEMBLAGGIO

Week Programmer (COD: LCQVP8OUT12)

AI 464 ETH NEW Gestione della scheda Eureka IP Interface (AI4164ETH NEW) Ottobre 2018

Nuovi strumenti per il coding App Inventor e Scratch for Arduino

V N. Fig (b) connettore RJ11 Femmina. BistBox, lato connettori RJ11 e Morsettiera. BistBox, connettore USB e alimentazione

TUTORIAL GPL_BENZINA CON PIC16F1826 (UTILIZZO DELL ADC)

TELEVIVAVOCE 7IS /03/2015

Domotica con Arduino. Prima di proseguire con la descrizione del progetto, elenco, di seguito, il materiale utilizzato:

Corso Arduino Maggio Riccardo Binetti Lezione 1 - Blinking LEDs with style

MUDE Piemonte. Nuove modalità salvataggio, firma istanza e gestione allegati

La Keyes 4 relay non è proprio una shield nel senso classico definito nel mondo arduino in quanto una shield dovrebbe essere concepita per essere

Edizione 07/11/2008 DG502U/M ISTRUZIONI DI MONTAGGIO E D UTILIZZO. Centrale a 2 porte 500 Codici Utente 12 3 ST1 M A G N E T

MANUALE PER L OPERATORE Versione software: 1.0

CONNETTORE 6 POLI AMPHENOL

MMDVM FOR DUMMIES display per mmdvm

Sintonia Manuale Trasmettitore ATV

Nota tecnica. Oggetto. Precauzioni

EFA Automazione S.r.l. SB3Conf Help V1.00 (01 ITA).doc pag. 1 / 10

Far lampeggiare un led o forse un semaforo?

MANUALE INSTALLATORE REV. 1.1

MODEM GUIDA ALL INSTALLAZIONE - MODEM. guida modem freccia_a.idml 1 20/05/14 16:32

Prontuario per la programmazione di mbot. Versione V01

SISTEMA DI CONTROLLO E GESTIONE STAZIONI DI RICARICA E-CORNER PER VEICOLI ELETTRICI

CTU 4.0

Shield didattico per Raspberry Pi

AiM Infotech. Potenziometro farfalla. Versione 1.03

Per vedere tutti i tutorial:

Configurazione di Visualino 01. Collegate la scheda Arduino alla porta USB del computer

Codice: LEDL-D/P VERSIONE. MASTER e SLAVE

CRUZPRO TEMPERATURA MOTORE T30

Транскрипт:

Stefano Busnelli (IlGuru) SHIELD ARDUINOISP MULTI 27 August 2015 Sommario Una shield per Arduino Uno R3 per programmare gli AVR in modalità ArduinoISP. Descrizione Scrivo questo articolo dopo aver acquistato un AVR AtMega328-PU senza bootloader, ed avendo faticato un po' per programmarlo con "Arduino Uno R3" ed lo sketch ArduinoISP distribuito con l'ide. Se il micro acquistato non ha i vari fuses interni settati come si deve, ad esempio il clock interno abilitato, risulterà impossibile programmarlo con lo sketch ArduinoISP ed i collegamenti descritti nel sito perché il micro vorrebbe essere governato da un segnale clock esterno. Cercando informazioni in rete, su Phil's Arduino Tutorial Site ho trovato una versione modificata di ArduinoISP liberamente scaricabile chiamata ArduinoISP Multi che si occupa di generare anche un segnale di clock a 8MHz da applicare al pin 9 del ATmega328 (o al pin XTAL1 del micro da programmare) e prelevabile dalla presa 9 della scheda Arduino Uno R3. Lo zip contiene uno sketch chiamato ArduinoISP_Multi_rc_1.ino, che una volta compilato e inserito nella scheda, trasformerà Arduino Uno in un ISP che fornirà questi segnali: PIN SEGNALE 13 SCK 12 MISO 11 MOSI 10 RESET 9 CLOCK a 8 MHz 8 LED Errore 7 LED Programmazione 6 LED Hearthbeat Con questa funzionalità in più, che il micro abbia il clock interno abilitato, che si aspetti un segnale esterno o che si aspetti di avere un quarzo collegato, non avrà più importanza e si riuscirà comunque a leggerne il contenuto, a scriverci un bootloader e/o a programmarlo. E' anche utile ad SHIELD ARDUINOISP MULTI 1

esempio quando ci si ritrova per le mani un micro che è stato programmato tanto tempo prima e non ci si ha più memoria di che cosa contenga, quale sia la sorgente di clock impostata ecc... In questo modo si possono resuscitare anche i micro brickati. A questo punto, non mi è rimasto altro da fare che prendere Kicad realizzare uno shield per la scheda Arduino Uno da utilizzare ogni volta che capita tra le mani un micro senza bootloader. La scheda Lo schema elettrico che ho realizzato è questo: ArduinoISP_Multi_UnoR3.sch.png Layout dello shield e posizionamento componenti: SHIELD ARDUINOISP MULTI 2

ArduinoISP_Multi_UnoR3-F_SilkS.png Gli 8 pin del lato superiore andranno inseriri nelle prese dal 13 al 6 della scheda Arduino Uno R3 I 4 pin del lato inferiore invece andranno inseriti nelle prese Reset, 3.3V, 5V e GND. Ho aggiunto una presa ICSP affiancata da altri 2 pin per il segnale di clock a 8MHz e la massa, così si possono esportare tutti i segnali su una eventuale millefori o ulteriore shield da montare su questa. In questo modo si possono realizzare delle estensioni, ad esempio per programmare altri AVR con package diversi dal DIL-28 oppure per implementare un programmatore HIGH VOLTAGE applicando 12 volt al pin di reset con cui recuperare un micro a cui è stato disabilitato tramite il relativo fuse il pin di reset rendendolo non più programmabile con i normali programmatori. La piedinatura è la seguente: ISP.png Lato componenti e ponticelli: SHIELD ARDUINOISP MULTI 3

ArduinoISP_Multi_UnoR3-F_Cu.png Lato rame: ArduinoISP_Multi_UnoR3-B_Cu.png Dopo Dremel, Press 'n Peel, Ferro da stiro, Cloruro ferrico, Acetone, ecc.. il risultato è questo: SHIELD ARDUINOISP MULTI 4

IMG_20150827_190411.jpg Vabeh, il PCB disegnato è sempre più bello del risultato finale realizzato con metodi casalinghi. SHIELD ARDUINOISP MULTI 5

IMG_20150827_190116.jpg E' vero, come C1 ho messo un elettrolitico da 10μF invece che da 22μF, ma va bene lo stesso. Prova di funzionamento con avrdude Apro cmd e mi posiziono nella cartella principale dei tools avr di Arduino: cd Files (x86)\arduino\hardware\tools\avr C:\Program Proviamo a collegare solo Arduino Uno: avrdude -C.\etc\avrdude.conf -v -v -p atmega328p -c arduino -PCOM8 -b115200 SHIELD ARDUINOISP MULTI 6

avrdude-000.png Ora con lo shield ed il montato il micro che ho comprato, un ATMEGA328-PU. SHIELD ARDUINOISP MULTI 7

IMG_20150828_095752.jpg Questo è diverso da quello montato di default su Arduino Uno, che è l' ATMEGA328P-PU. E' identico in tutto e per tutto, tranne per il fatto che non è la versione pico power, ed ha un numero identificativo interno diverso: AVR SIGNATURE ID ATMEGA328P-PU 1E 95 0F ATMEGA328-PU 1E 95 14 avrdude -C.\etc\avrdude.conf -v -v -p atmega328 -c arduino -PCOM8 - b19200 SHIELD ARDUINOISP MULTI 8

avrdude-001.png Se nel parametro -p specifico la versione "P" dell'atmega328, ottengo il messaggio d'errore: avrdude -C.\etc\avrdude.conf -v -v -p atmega328p -c arduino -PCOM8 - b19200 SHIELD ARDUINOISP MULTI 9

avrdude-002.png AVRDUDE ha letto il Device signature 0x1e9514 mentre si aspettava 0x1e950F quindi sta leggendo effettivamente il micro montato sullo shield. SHIELD ARDUINOISP MULTI 10

Funzionamento con l'ide Arduino Vale tutto ciò che è descritto nella guida ufficiale di Arduino, cambia solo il fatto che non ci sono collegamenti da fare perché il micro viene montato sullo shield, e lo sketch da caricare su Arduino UNO che è la versione scaricata e non quella distribuita con l'ide: Arduino ISP In sintesi dall' IDE di Arduino: Strumenti->Scheda->Arduino Uno Strumenti->Programmatore->Arduino as ISP File->Carica tramiteun programmatore o in alternativa CTRL+MAIUSC+U Note Con lo shield montato non è possibile programmare la scheda Arduino UNO nemmeno se è selezionato Strumenti->Programmatore->ArduinoISP La versione di IDE con cui ho fatto le prove è la 1.6 La versione di avrdude con cui ho fatto le prove è la 6.0.1 distribuita con l'ide Ho inserito il progetto Kicad sul mio repository GitHub Versione del documento: 1.6 Estratto da "http://www.electroyou.it/mediawiki/index.php?title=userspages:ilguru:arduinoisp" SHIELD ARDUINOISP MULTI 11