@Mike:
la libreria ha una sua collocazione. Quando dico "1) aprite il file NewSoftSerial.cpp della NewSoftSerial con un editor di testo" do per scontato che la si abbia già scaricata ed installata sul proprio computer.
Cmq sto provvedendo ad una revisione della mia guida perché ormai è datata (ha 8 mesi) e di info aggiunte ce ne sono tante. Vedrò di far eun mega pacchetto in cui infilarci dentro anche tutte le lib modificate.
@ER:
"sulla carta" il problema è risolto. Con dei test fatti così, velocemente, il codice non si pianta più. Resta da verificare l'effettivo funzionamento della lib, cioè se oltre a non bloccarsi riceve anche
Ma non so quando posso provarla, sono un po' in crisi col tempo, in questi giorni
leo72: @Mike:
la libreria ha una sua collocazione. Quando dico "1) aprite il file NewSoftSerial.cpp della NewSoftSerial con un editor di testo" do per scontato che la si abbia già scaricata ed installata sul proprio computer.
Cmq sto provvedendo ad una revisione della mia guida perché ormai è datata (ha 8 mesi) e di info aggiunte ce ne sono tante. Vedrò di far eun mega pacchetto in cui infilarci dentro anche tutte le lib modificate.
Lo so Leo, però tu l'hai modificata e testata, perché far fare a tutti la tua setssa manovra (scarica, apri, modifica, salva) col rischio di fare qualche casino), quando a te basta linkarla da qualche parte e permette a tutti con un clic di averla bell'e pronta? Sai come la penso in merito; ottima l'idea di aggiornare la Guida
Salve ragazzi
scusate se vi tedio con questa richiesta, ma ho iniziato da qualche giorno a giocare con i tiny85,ho letto buona parte dei messaggi sul forum e seguito le guide su gioblu (grazie leo!) oggi mi e' arrivato finalmente il tiny85 ed ho tentato di farlo comunicare con Arduino uno usato come programmatore ISP, credo di essere riuscito a caricare il bootloader, ma quando provo a caricare uno sketch (il semplicissimo blinker col pin0) mi rende il seguente errore;
Sui Tiny non puoi aver caricato un bootloader semplicemente perché quelli allegati al core Tiny sono "finti" bootloader. Altro non sono che file vuoti, che servirebbero (uso il condizionale) per poter programmare i fuse usando l'IDE. A me personalmente la cosa non è mai riuscita, per cui ho deciso di usare sempre avrdude da terminale, molto più semplice e veloce.
Detto questo, l'errore che ricevi può essere dovuto a errori di connessioni: ricontrolla i collegamenti.
Buon giorno Leo e grazie per la risposta.
Mi sono espresso male, ho messo in atto la procedura descritta sui siti citati (http://hlt.media.mit.edu/?p=1695Gioblu.com is for sale | HugeDomains ) , per settare il tiny ad 8 mhz, in seguito avrei voluto procedere al caricamento di uno sketch di prove (quello consigliato da te nel sito Gioblu.com is for sale | HugeDomains ), ma mi sono piantato.
In pratica, collegando il tiny ad arduino come isp, sono riuscito ad avere in risposta ok (a parte l'errore che hai segnalato anche tu di cui non tenere nota) dopo la procedura di "burn bootloader". dopodiche', tolto il condensatore, avrei dovuto ottenere un tiny pronto per l' upload di un semplice sketch di prova (io ho anche preparato un circuitino su multiforo che ospita i tre led previsti nel tuo circuito), ma ottengo soltanto quell'errore.Secondo te come mi devo comportare? (per controllare ho anche collegato il tiny direttamente su una breadboard per evitare eventuali falsi contatti/errori di circuito
Mi parli di "togliere il condensatore". Quindi hai usato il condensatore infilato nei pin dell'Arduino per disabilitare l'autoreset della scheda, giusto? Ma in questo caso devi lasciarlo anche per poter programmare i Tiny usando sempre la tecnica ISP.
Voglio tornare un attimo sulla questione del bootloader. Ripeto, non devi mettere un bootloader perché semplicemente l'operazione non va a buon fine. Tant'è che nella mia guida sul sito di Gioblu non ne ho parlato proprio perché non funziona.
Quindi, ricapitoliamo:
ricarica lo sketch ArduinoISP sul tuo Arduino
metti il condensatore anti-autoreset
collega il Tiny
imposta il clock interno del Tiny usando direttamente avrdude da terminale come scritto nella mia guida
carica lo sketch del lampeggio dei 3 led
invialo al micro
Tutto questo senza togliere, a partire dal punto 2), il condensatore anti-autoreset dall'Arduino. E vediamo che errori ricevi.
Sto pensando di comprarmi un attiny85, sembra carino.
Non ho letto tutte le 25 pagine di discussione ma ciò che mi preme capire se è compatibile con la ide arduino (caricherei, poi, lo sketch con USBasp o USBtinyISP) o bisogna fare qualcosa modifica al suo interno.
C'è bisogno del bootloader per caso?
i tiny 85 e sopratutto 84 sono una grande ed economica alternativa per piccoli progetti, tra l'altro il loro uso con arduinoISP è veramente molto semplice, anche io ho seguito la guida su gioblu per integrare i core nell'ide di arduino, l'unica cosa a cui bisogna stare attenti è la lista di funzioni compatibili con i tiny:
pinMode()
digitalWrite()
digitalRead()
analogRead()
analogWrite()
shiftOut()
pulseIn()
millis()
micros()
delay()
delayMicroseconds()
SoftwareSerial
altre funzioni sono disponibili con librerie esterne come softwareservo ecc.
Le funzioni sono limitate perché limitato è il core (parlo del core di silicio, non del core software) dei Tiny. Ad esempio, non avendo una seriale in hardware non hanno la gestione della comunicazione seriale con la funzione Serial. ecc...
niente da fare, non conosco avrdude e non riesco a fargli digerire il file per ottenere i 8mhz... mi restituisce questo: localhost:tools valerio$ ./avrdude -P /dev/cu.usbmodem26211 -C ./avrdude.conf -U lfuse:w:0xe2:m -p t85 -c stk500v1 -b 19200 -bash: ./avrdude: No such file or directory
dove sbaglio??
ho provato a mandare la stringa dei comandi nella finestra "serial monitor" del IDE di Arduino e mi risponde cosi:
avrdude: please define PAGEL and BS2 signals in the configuration file for part ATtiny85
avrdude: please define PAGEL and BS2 signals in the configuration file for part ATtiny85
avrdude: stk500_recv(): programmer is not responding
I consigli sono quelli della mia guida
Devi aprire un terminale all'interno della cartella che contiene avrdude distribuito con l'IDE di Arduino, nel mio caso
/home/leo/Documenti/Arduino/hardware/tools
Lì trovi sia avrdude che avrdude.conf, che è il file dei parametri dei vari micro che avrdude usa per "dialogare" con il programmatore.
Inoltre sbagli porta: /dev/cu.usbmodem26211 è la porta a cui hai connesso l'Arduino? Di solito è qualcosa tipo /dev/ttyACM0 per l'Arduino UNO e /dev/ttyUSB0 per l'Arduino 2009. Quindi, ricapitoliamo:
Grazie ancora Leo per la tua pazienza, credo di aver capito .... il problema e' che io nella cartella che dici tu, non ho nulla.... il programma avr non c'e'.
Dove lo trovo? ho istallato per l'ennesima volta l'IDE di Arduino prelevata direttamente in dmg dal sito ufficiale (questo!) ma i file che servono dove li trovo?
Nella cartella che sta in documenti e che ho associato alla IDE dal menu preferenze, ci sono sempre e solo i vari file dei miei codici, ma dentro tools non ho nulla.
Per chiarezza posto la foto della cartella.
Per la seriale, invece, si chiama proprio cosi' perche' Arduino e' collegato attraverso una usb di un hd esterno.
Ciao radiojam,
può essere che nelle varie versioni di IDE l' avrdude venga cambiato di posizione, per esempio su IDE della versione Linux è dentro /hardware/tools mentre nella versione Windows è in /hardware/tools/avr/bin. Ora ..nella versione MAC non so dove lo abbiano messo, prova con una ricerca..
Ciao Devon grazie delle info ,
accidenti manca sempre qualcosa..... adesso che ho reinstallato per la ennesima volta la IDE (la 1,0) ho cercato nel pacchetto ed ho copiato tutti i file della cartella tools nella cartella di Arduino in documenti (come da immagine nel post precedente) ed ho trovato il file in ..... /hardware/tools/avr/bin
ma il file di configurazione non c'e' , infatti mi risponde :
localhost:bin valerio$ ./avrdude -P /dev/cu.usbmodem26221 -C ./avrdude.conf -U lfuse:w:0xe2:m -p t85 -c stk500v1 -b 19200
avrdude: can't open config file "./avrdude.conf": No such file or directory
avrdude: error reading system wide configuration file "./avrdude.conf"
ce ne e' uno con quel nome in ..... /hardware/tools/avr/etc