Per programmare i Tiny si usa la connessione ISP.
La MEGA ADK mappa MOSI/MISO/SCK sui pin 51/50/52.
Collega poi 5V e GND ai corrispondenti pin del Tiny.
Infine collega il pin 53 della MEGA ADK al pin RESET del Tiny.
Per programmare i Tiny si usa la connessione ISP.
La MEGA ADK mappa MOSI/MISO/SCK sui pin 51/50/52.
Collega poi 5V e GND ai corrispondenti pin del Tiny.
Infine collega il pin 53 della MEGA ADK al pin RESET del Tiny.
Guida --> http://www.michelemenniti.it/VHD/Elettronica/GPAT_v4.pdf
AtTiny Pinout --> http://arduino.cc/forum/index.php/topic,145531.0.html
Mega Pinout--> http://arduino.cc/forum/index.php/topic,146515.0.html
vi ringrazio molto , appena arrivo a casa provo e replico i risultati sul forum .
per quanto riguarda la parte software leggendo la documentazione ho capito cosi ':
dovrebbe essere cosi' la sequenza ( cosi ho capito)
armando
Hai tralasciato il 1° passaggio, ossia Collegare MOSI/MISO/SCK/RST/5V/GND
La sequenza è giusta.
aleeee , funziona tutto il led lampeggia.
vi ringrazio leo e paolo ,
stasera facciamo qualche cambio di piedinatura al tiny tanto per provare qualche situazione semplice .
ringrazio di nuovo
armando
funziona anche con il PB1 pin 6 dell' IC
avrdude: please define PAGEL and BS2 signals in the configuration file for part ATtiny85
esce questo messaggio dall'ide ma lo devo ancora tradurre ( cmq non mi da problemi di sorta)
armando1966:
avrdude: please define PAGEL and BS2 signals in the configuration file for part ATtiny85esce questo messaggio dall'ide ma lo devo ancora tradurre ( cmq non mi da problemi di sorta)
in merito c'e' questo articolo Gioblu.com is for sale | HugeDomains
salve a tutti ,
vedendo il datasheet del attiny84 ( 14 pin) ho riscontrato che se si vuole far
pilotare un lcd 16 x 2 al limite per fare il solito voltmetro 0- 5Vcc mi pare che non e' possibile per mancanza di pin PWM giusto ?
in effetti per pilotare lcd ci vogliono n. 4 data bus line e RS ed E piu' le varie Vcc
amenoche bisogna usate l'ATmega328
help
armando
il tiny84 ha 4 pin pwm: 5-6-7-8
per i 4 pwm ho capito e per i due segnali E ed RS che normalmente sul scheda mega adk arduino stanno sempre sui pin PWM ? dove li collego ?
Potrei sbagliarmi, ma quei segnali NON sono gestiti in pwm, quindi li colleghi dove vuoi purché poi li dichiari come previsto dalla libreria
scusa quali i 4 del data bus line o i 2 del E ed RS ?
Tutti, a me non risulta che sia usato il pwm per gestire i sei segnali, il pwm viene usato a volte per gestire la retroilluminazione, tutti gli altri segnali sono gestiti in modo digitale standard e non pwm.
salve michele
quindi basta dire al codice i nomi delle porte , nel caso nel pilotaggio lcd ( i famosi 6 fili di caollegamento )li posso collegare tranquillamente al tiny84 per esempio
pin 3 data -___ ( i 4 data per pilotare lcd)
pin 4 data ____
pin 5 data _____
pin 6 data _____
pin 7 RS
pin 8 E
dichiarando il tutto nel setup del codice
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
con i numeri giusti
in piu il pin di ingresso che potrebbe essere il pin 0 ( analog input 0 AREF)
potrebbe andare ?
I numeri dei pin non credo corrispondano ai pin fisici, in genere sono indicati con PB0, PB1, ecc e possono anche essere messi in modo apparentemente disordinato, quindi se scrivi "1" non ti riferisci al pin fisico 1 del tiny84 ma al suo pin digitale PB1 che magari corrisponde al pin fisico 7. Come ingresso puoi usare quello che vuoi anche se non ho capito perché hai scritto AREF accanto a input 0; nello specifico significa che stai leggendo un segnale analogico....
mi pare di aver capito
faccio un esempio ..
// ATTINY 84
#include <LiquidCrystal.h>
// initialize the library with the numbers of the interface pins
LiquidCrystal lcd([b]5, 4, 3, 6, 7, 8); // iniliziazzazione lcd ( capita dal sottoscritto)[/b]
[b]// dichiarazione eventuale [b]ingresso es. PIN 1 [/b]Qualora si voglia usare come termometro o altro e relative formule[/b]
void setup() {
// set up the LCD's number of columns and rows:
lcd.begin(16, 2);
// Print a message to the LCD.
lcd.print("ciao ");
}
void loop() {
// set the cursor to column 0, line 1
// (note: line 1 is the second row, since counting begins with 0):
lcd.setCursor(0, 1);
// print the number of seconds since reset:
lcd.print(millis()/1000);
}
ti ringrazio per l'aiuto
armando
chiudi la parentesi all'inizializzazione dell'LCD. (veniva fuori lo smile perché non aveva usato il tag code - NdLeo)
Allora se guardi il link che ti ha fornito MAD, la numerazione dei pin dovrebbe essere quella colorata in marrone (p.es. il pin fisico 5 del micro corrisponde al pin digitale 8, mentre il pin fisico 10 corrisponde, secondo come lo usi, al pin digitale 3 o al pin analogico A3); su quella base, collega i sei fili dove vuoi e poi dichiara i valori corrispondenti colorati in marrone.
ok . adesso ho capito .
ti ringrazio ti faro sapere l'esito delle prove/collegamenti
ciao
armando
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)'