Help!!! Ripristino Display Sparkfun 7-Segment Serial Display - Blue

Salve, spero che qualche buon anima mi possa aiutare a rianimare il display della Sparkfun 7-Segment Serial Display - Blue ( link SparkFun 7-Segment Serial Display - Blue - COM-11442 - SparkFun Electronics ) .
In pratica per un errore banale ho fritto l'ATMEGA che era saldato sul pcb, armato di tanta pazienza ho dissaldato l'atmega e ho controllato tutto il resto che per fortuna si e' salvato!!
Adesso prima di saldare il nuovo minuscolo chip vorrei programmarlo come come l'originale, ma pur seguendo le guide dal link della sparkfun mi perdo :frowning:
Putroppo sono alle prime armi e non mastico inglese...
Devo caricarci il Bootloader di arduino oppure scaricare un determinato file dal seguente link GitHub - sparkfun/Serial7SegmentDisplay: Example code and board files for the Serial 7 Segment Display. ........?
In tal caso penso che posso usare arduino uno come programmatore, e se cosi fosse devo seguire il classico schema con l'oscillatore esterno? cioe quarzo e condensatori? oppure un altro schema dal momento in cui l'atmega per le successive programmazioni utilizza il suo oscillatore interno?
Spero tanto che qualcuno mi possa aiutare passo passo.......
Grazie mille!!!

Dato che non mi sembra tu lo abbia ancora fatto (... non riesco a trovare il post), ti chiederei di presentarti QUI (spiegando bene quali conoscenze hai di elettronica e di programmazione ... possibilmente evitando di scrivere solo una riga di saluto) e di leggere con attenzione il REGOLAMENTO ... Grazie.

Guglielmo

Mi scuso perchè pensavo di averlo fatto all'epoca dell'iscrizione, probabilmente mi e' sfuggito!
Grazie

ciao, non mi sembra specificato, ma solitamente i prodotti della sparkfun con un atmega a bordo sono programmabili tramite ide arduino, quindi ci va il bootloader prima, ed è custom.

se guardi bene al tuo link di github c'e una cartella hardware, quella mi pare vada copiata nella cartella degli sketch, che puoi andare a vedere nelle impostazioni dell ide.

una volta fatto riapri l'ide e collega i fili cosi:

MasterInSlaveOut arduino (pin 12)=SlaveDataOut display

MasterOutSlaveIn arduino (pin 11)=SlaveDataIn display

pin 10 arduino = RST display

e SCK arduino(pin 13) = SCK display

una volta fatti i collegamenti devi caricare lo sketch arduino ISP (cercalo negli esempi) sul tuo arduino, poi selezionare "strumenti-->programmatore --> arduino as ISP" e sempre in strumenti selezionare "scheda-->Serial 7-Segment" ed infine burn bootloader.

finito cio dovrebbe essere possibile caricare i programmi come facevi prima, quindi credo con tx rx e reset

mi sono accorto ora della seconda parte della domanda.

se non sbaglio di default gli atmega escono di fabbrica con clock interno ad 1Mhz, quindi non hai bisogno del quarzo.

se vuoi credo che tu possa saldarlo direttamente in sede e poi programmarlo da li, usando i pin che ti ho specificato

Ciao Boschi, ho appena controllato la cartella Hardware, in quella cartella ci sono soltanto file pdf , .brd e .sch inerenti allo schema elettrico e al pcb.

... si, ok, ma un po' di spirito d'iniziativa non guasta ... ::slight_smile:

E' nella cartella firmware, c'è sia un bel README.txt che la hardware/sparkfun/avr che contiene quello che ti interessa.

Guglielmo

perdonatemi!!! vediamo se ci ho capito qualcosa

  1. effettuo i collegamenti cosi come consigliato da Boschi.
  2. Cerco negli esempi lo sketch "arduino ISP" e lo carico nel mio Arduino uno.
    poi ? ......... devo prendere la cartella AVR e copiarla nella cartella degli sketch?

Ciao Guglielmo, ho seguito il percorso che mi hai indicato,
e continuando mi ritrovo una cartella ----> bootloaders/optiboot.
Aperta la cartella optiboot mi ritrovo una marea di file e non so come procedere...
Ho provato a tradurre i file .txt , ma non ci capisco nulla! :sob:

Dunque sto impazzendo da oggi, elenco i passaggi:

  • Aperto l'IDE -----> FILE----->ESEMPI---->Arduino ISP ----------> Carica
  • Ho collegato il tutto cosi come indicato da Boschi

Fin qui tutto ok!

Poi:

  • Strumenti--------------> Programmatore ----------> Arduino as ISP

  • Scrivi il bootloader

Dopo un po mi ha restituito un errore

Arduino:1.6.3 (Windows 8.1), Scheda:"Arduino Uno"

C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avrdude -CC:\Program Files (x86)\Arduino\hardware\tools\avr/etc/avrdude.conf -v -patmega328p -cstk500v1 -PCOM7 -b19200 -e -Ulock:w:0x3F:m -Uefuse:w:0x05:m -Uhfuse:w:0xDE:m -Ulfuse:w:0xFF:m 



avrdude: Version 6.0.1, compiled on Mar 30 2015 at 14:56:06

         Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/

         Copyright (c) 2007-2009 Joerg Wunsch



         System wide configuration file is "C:\Program Files (x86)\Arduino\hardware\tools\avr/etc/avrdude.conf"



         Using Port                    : COM7

         Using Programmer              : stk500v1

         Overriding Baud Rate          : 19200

         AVR Part                      : ATmega328P

         Chip Erase delay              : 9000 us

         PAGEL                         : PD7

         BS2                           : PC2

         RESET disposition             : dedicated

         RETRY pulse                   : SCK

         serial program mode           : yes

         parallel program mode         : yes

         Timeout                       : 200

         StabDelay                     : 100

         CmdexeDelay                   : 25

         SyncLoops                     : 32

         ByteDelay                     : 0

         PollIndex                     : 3

         PollValue                     : 0x53

         Memory Detail                 :



                                  Block Poll               Page                       Polled

           Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack

           ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------

           eeprom        65    20     4    0 no       1024    4      0  3600  3600 0xff 0xff

           flash         65     6   128    0 yes     32768  128    256  4500  4500 0xff 0xff

           lfuse          0     0     0    0 no          1    0      0  4500  4500 0x00 0x00

           hfuse          0     0     0    0 no          1    0      0  4500  4500 0x00 0x00

           efuse          0     0     0    0 no          1    0      0  4500  4500 0x00 0x00

           lock           0     0     0    0 no          1    0      0  4500  4500 0x00 0x00

           calibration    0     0     0    0 no          1    0      0     0     0 0x00 0x00

           signature      0     0     0    0 no          3    0      0     0     0 0x00 0x00



         Programmer Type : STK500

         Description     : Atmel STK500 Version 1.x firmware

         Hardware Version: 2

         Firmware Version: 1.18

         Topcard         : Unknown

         Vtarget         : 0.0 V

         Varef           : 0.0 V

         Oscillator      : Off

         SCK period      : 0.1 us



avrdude: AVR device initialized and ready to accept instructions



Reading | ################################################## | 100% 0.06s



avrdude: Device signature = 0x000000 (retrying)



Reading | ################################################## | 100% 0.05s



avrdude: Device signature = 0x000000 (retrying)



Reading | ################################################## | 100% 0.06s



avrdude: Device signature = 0x000000

avrdude: Yikes!  Invalid device signature.

         Double check connections and try again, or use -F to override

         this check.





avrdude done.  Thank you.



Errore durante la scrittura del bootloader

Ho provato anche a modificare il file avrdude.conf come indica in questo link

ma non mi è cambiato nulla!

casperino:
Errore durante la scrittura del bootloader

Hai commesso un gravissimo errore, hai fatto scrivere il bootloader della UNO che prevede un quarzo da 16 MHz, sulla tua scheda viene usato l'oscillatore rc interno a 8 MHz.
Con l'operazione che hai eseguito sono stati settati i fuse per l'uso del quarzo esterno, da 16 MHz, e questo comporta il brick del micro, con conseguente errore durante il caricamento del bootloader perché non c'è un clock attivo.
Dato che sulla tua scheda i pin del quarzo sono usati per il display non è possibile montare un quarzo, uniche soluzioni possibili sono cambiare il micro con uno nuovo oppure dissaldare il micro, montarlo su un apposito pcb dotato di quarzo e riprogrammare i fuse per l'oscillatore rc, inoltre serve una versione del optiboot a 8 MHz.

Dimenticavo, se devi usare quella scheda esclusivamente tramite il software di Sparkfun non ti serve metterci sopra il bootloader, basta caricare il programma fornito da loro.

Credo che sia più facile dissaldare il display, cortocircuitare in qualche modo i resistori, mettere un quarzo temporaneo e risaldarlo.

diciamo che starei ancora in tempo perche non ancora l'ho saldato per cui posso ancora recuperarlo, però non vorrei commettere altri errori.
Conto tanto sulla vostra pazienza a incanalarmi passo passo.....onde evitare di perderlo!
Grazie mille a tutti

premetto che devo utilizzarlo per risolvere nel piu breve un problema nel settore medicale, quindi non devo utilizzarlo con il software della Sparkfun

Buone notizie! Dopo un intera giornata, oggi sono stato tutto il tempo a leggere guide e altro.
Finalmente sono riuscito a inserire inizialmente il bootloader a 16MHZ con componenti esterni.
Poi ho aggiornato il file boards.txt per avere un altra scheda in modo da cambiare il bootloader da oscillatore esterno 16Mhz a quello interno da 8Mhz.
Infine ho anche programmato l'atmega con lo Scketch della sparkfun con metodo seriale.
Vi terro' aggiornati appena termino il tutto.
Per la mia realizzazione sono ancora in alto mare.............