attiny85

problema ,
ecco il messaggio che e' uscito

portando arduino come ISP upload del programma lo fa senza errori
cambiando da mega adk etc.. ad ATTiny84 e Carica con un programmatore >>>
da questo messaggio .

l'unico particolare che ho notato e' che il ATTINY84 sul IDE invece e sul circuito integrato e' ATTINY84A

C:\Documents and Settings\marco\Desktop\arduino-1.0.3\libraries\LiquidCrystal/LiquidCrystal.h:82: error: conflicting return type specified for 'virtual size_t LiquidCrystal::write(uint8_t)'
C:\Documents and Settings\marco\Desktop\arduino-1.0.3\hardware\tiny\cores\tiny/Print.h:71: error: overriding 'virtual void Print::write(uint8_t)'

non so dirti, a me sembra una incompatibilità tra la libreria e l'IDE, forse è una vecchia versione, vediamo se passa Leo o un altro softwarista....

Michele dice bene, pare un problema software: con l'IDE 1.0 è stata riscritta la parte di codice che gestiva gli eventi print. Adesso sono tutti metodi della superclasse Serial.

armando, finora non mi pare tu lo abbia scritto ma che core stai usando per gestire i tuoi Attiny?
Io uso il core Tiny 0100-0015, e con l'IDE 1.0.3 ho compilato senza problemi gli esempi della LiquidCrystal allegati alla lib.

un attimo che mi aggiorno

l' ide e' 1.03

il core lho scaricato per aggiungere i vari attiny84 85 atmega328 etc , onestamente non ho fatto caso sulla versione


faccio un passo indietro ,
con gli amici del post che ho aperto mi hanno portato per gradi alla programmazione del attiny85
lampeggio led ho cambiato anche la porta (pin fisico ) ricompilando il tutto e caricando con risultati ottimi .


ora sono passato al attiny84 ma sta dando queshgli errori in copilazione e uploading
poco fa prima che mi scrivesse Leo ho cercato di aggiornare il ( penso ) core degli attiny etc... ma adesso non sta andando nenache da arduino a lcd sta dando errori in compilazione . quindi deduco che ho fatto male a caricare questo core ... cmq sto scaricando nuovamente arduino 1.0.3 , cmq mi serve un link sicuro per aggiornare la pagina dei TIPI DI ARDUINO ( penso si abbia commesso l'ulteriore errore )
vi ringrazio per la pazienza
a.

armando1966:
il core lho scaricato per aggiungere i vari attiny84 85 atmega328 etc , onestamente non ho fatto caso sulla versione

La domanda è: quale core?
Siccome ce ne sono almeno 2 in circolazione (3 considerando un core beta), potresti mettere il link di quello che stai usando?
Io ti consiglio il core Tiny:
http://code.google.com/p/arduino-tiny/

ora sono passato al attiny84 ma sta dando queshgli errori in copilazione e uploading
poco fa prima che mi scrivesse Leo ho cercato di aggiornare il ( penso ) core degli attiny etc... ma adesso non sta andando nenache da arduino a lcd sta dando errori in compilazione . quindi deduco che ho fatto male a caricare questo core ... cmq sto scaricando nuovamente arduino 1.0.3 , cmq mi serve un link sicuro per aggiornare la pagina dei TIPI DI ARDUINO ( penso si abbia commesso l'ulteriore errore )
vi ringrazio per la pazienza
a.

Alcune cose:

  1. non devi riscaricarti l'IDE, basta cancellare la cartella del core che ti sta dando problemi.
  2. i core aggiuntivi vanno messi in /arduino-xxx/hardware/ oppure in /cartella_degli_sketch/hardware. Se li metti da qualche altra parte, fai solo danni :wink:
  3. non capisco "la pagina dei tipi di arduino". Ti riferisci forse all'elenco che appare in Strumenti/Tipo di Arduino dell'IDE? Quell'elenco viene aggiornato in automatico dall'IDE in base alle schede che trova nei vari file boards.txt dei core che installi.

allora ,
la musica e cambiata ,
prima l'ide di arduino e stato solo copiato senza installazioni di installer di windows
adesso ho trovato la 1.0.3 con tanto di setup e l'ho installata
ho aggiunto tutti i modelli , dopodiche ho caricato la tiny0100 0015
dopodiche ho copiato la cartella tiny in \hardware\tiny ( sovrapposta) la tools 'lho lasciata

riepilogando errori caricando ISP non ne da
caricando il solo file del voltemetro tanto per fare una prova e cambiando i pin
del liquidcristal da solo questo errore ma ancora non funge ..

Hint: You can set the maximum SRAM memory of your board directly in the boards.txt file
avrdude.exe: stk500_getsync(): not in sync: resp=0x00

pero' ci stiamo avvicinando al risultato


#include <LiquidCrystal.h>

LiquidCrystal lcd(7, 6, 5,4,3,2); // questi sono riferiti ai pin del TINY84

//#define ANA_IN_0 0
int potPin = 0;

float misura_di_tensione ;
float misura_corrente ;
float volt ;
float ampere ;
int R = 100 ;
float watt ;

void setup() {
lcd.begin(16, 2);
Serial.begin(9600);
//volt=(misura_di_tensione*5/1023);
}

void loop() {

misura_di_tensione = analogRead(potPin);
//lcd.println(misura_di_tensione);
//lcd.println(misura_corrente);
//lcd.clear();

lcd.setCursor(0, 0);
volt= (misura_di_tensione*5/1023);
lcd.print(volt);
// I = V/R Calcolo corrente
lcd.print(" V");
lcd.setCursor(0,1);
ampere= (volt/R );
lcd.print(ampere, 3); // visulaizza i numeri in virgola mobile 3 cifre dopo la virgola
lcd.print(" A");
lcd.setCursor (9 , 0);
watt= float (volt * ampere);
lcd.print(watt, 3);
lcd.print(" W");

delay(100);
}

armando1966:
ho trovato la 1.0.3 con tanto di setup e l'ho installata

Puoi indicare dove hai scaricato la versione con il setup? :roll_eyes:

cmq la prima versione che ho copiato
e la seconda installata
tra di loro non so ma ce' qualcosa che non va .

quella installata sembra che non da errori ma lavorando sul tiny85 non combina nulla cambiando il pin del led
tutto tace ,

avviene correttamente con il programma copiato solo per il tiny85 cambiando il led di posto ricompili e vai tutto regolare .

sto facendo confusione con qualche cosa . adesso il programma copiato di arduino lo cancello tutto e lascio solo quello installato ( setup)

una domanda ... la sola cartella TINY va copiata in \hardware o va copiato tutto il contenuto del file zippato comprensivo di TOOLS ?

adesso non va neanche arduino con il famoso " hello word sul lcd "

per un attimo spunta la scritta dopo 2 secondi arrivano caratteri ascii

c'e' qualcosa per resettare arduino a livello software ?

pare che sul monitor seriale funziona .
la scritta che dovrebbe comparire sul lcd sul monior seriale si vede .

per lcd tutto ok , cera un po di falsi contatti cmq risolto .

mancava la massa dalla mb .di arduino , avevo considerato la massa dell'alimentatore esterno
ma per i dati che comunque e' tensione serve una ddp , quindi una massa

questo e' fatto .

adesso manca il resto

Dimensione del file binario dello sketch: 2.394 bytes (su un massimo di 8.192 bytes)
avrdude: please define PAGEL and BS2 signals in the configuration file for part ATtiny84
avrdude: Expected signature for ATtiny84 is 1E 93 0C
Double check chip, or use -F to override this check.

mi pare che adesso va meglio di ieri

sul contenitore del chip c'e' scritto ATTiny84A pu

armando1966:
Dimensione del file binario dello sketch: 2.394 bytes (su un massimo di 8.192 bytes)
avrdude: please define PAGEL and BS2 signals in the configuration file for part ATtiny84
avrdude: Expected signature for ATtiny84 is 1E 93 0C
Double check chip, or use -F to override this check.

mi pare che adesso va meglio di ieri

sul contenitore del chip c'e' scritto ATTiny84A pu

Tra Attiny84 e Attiny84A non cambia nulla a livello di codice, solo che la versione "A" è elettricamente più efficiente (può lavorare a tensioni più basse, 1,8V minimo). Come detto, "-PU" è il package, quello puoi ignorarlo.

Ora il messaggio di errore dice che avrdude non riesce a comunicare correttamente con il chip.
Ricontrolla le connessioni:
Pin Arduino UNO -> Piedino Attiny84

10->4
11->7
12->8
13->9
Poi 5V e GND, ovviamente.

La prima operazione da fare è selezionare in Strumenti/Tipo di Arduino il tipo di scheda. Dovresti avere diverse voci Attiny84. Se vuoi usare la seriale software devi utilizzare il clock a 8 MHz, altrimenti anche a 1 MHz.
Poi fai Strumenti/Scrivi bootloader: in questo modo scrivi un finto bootloader (è un file vuoto) ma l'operazione ti serve per impostare i fuse del microcontrollore.

Fatto questo, carica lo sketch Blink, metti il piedino che ti serve e poi caricalo sull'Attiny84.

leo
ho il mega adk quindi i pin
sono 50 51 52 53

// pin name: not-mega: mega(1280 and 2560)
// slave reset: 10: 53
// MOSI: 11: 51
// MISO: 12: 50
// SCK: 13: 52

i collegamenti sono corretti ho controllato con il testes su ohm

potrebbe essere l'ic difettoso ?

Ci sta tutto, potresti anche aver fulminato il chip con connessioni errate o facendo corti.

Potresti anche avere problemi di autoreset. Prova inserendo un condensatore da 0.1 uF fra 5V e RST prima di cliccare su "Carica con un programmatore"

ok grazie , adesso provo .
cmq sto gia preparando il ATmega328 sulla breadboard

per il tiny85 e' andato tutto bene
per l84 non ne vuole sapere .

avrdude: Yikes! Invalid device signature.
Double check connections and try again, or use -F to override
this check.

cmq grazie a tutti lo stesso ci rinuncio .

anche con Atmega328p non lo riconosce ,eppure ho un elenco gigante di dispositivi ( tipi di arduino)
questo non c'e'
in quest. ultimo circuito ho collegato solo MIO MOSI SCK E reset e alimentazione
e da il mesaggio sopraindicato .
caricando arduino come ISP e caricandolo su arduino non ci sono problemi .
appena cambio dispositivo errori .

va be .

avrdude: please define PAGEL and BS2 signals in the configuration file for part ATtiny85
avrdude: verification error, first mismatch at byte 0x0000
0x1a != 0x00
avrdude: verification error; content mismatch

prima almeno andava anche tiny85 adesso neanche questo