Go Down

Topic: Info lcd Ks0108 (Read 11704 times) previous topic - next topic

superzaffo

Si si avevo visto quel ds e infatti avevo capito come funzionano.. mi sembrano molto semplici... certo che se invece quelli di michele non hanno bisogno di niente ma solo di accendersi o spegnersi...
Adesso vedo anche gli altri d.s. ...
Eventualmente con il prossimo ordine  ]:D

tonid

Nel nostro caso sono sprecati e costano troppo.
Li vedo meglio se ad esempio hai necessità di fare una scheda con diversi operazionali alimentati con tensione duale.
Es. vuoi fare dei filtri attivi 24db da montare nel tuo impianto stereo.
Hai la necessità di usare molti opamp alimentati con tensione duale di 12/0/12(esempio).....sai che ogni ramo ti assorbe 100mA(esempio) ed hai a disposizione una tensione di 5 volt.....In base a questi parametri ti scegli il modulo che fa al caso tuo e lo utilizzi come un vero e proprio alimentatore senza dovertelo creare,in questo caso il costo non è più così alto perchè ti fa risparmiare lavoro,tempo e componenti.

Michele Menniti

#77
Dec 15, 2012, 08:55 am Last Edit: Dec 15, 2012, 09:00 am by Michele Menniti Reason: 1
Una cosa, come detto non ho mai usato l'I2C: che differenza c'è tra I2C e SPI? si usano comunque sugli stessi due pin ma con protocolli diversi o cosa? Il dubbio forte che ho è che esiste un fuse SPI Enabled che controlla la possibilità di programmare via ISP che, come sappiamo, usa tutt'altri pin del micro.
Guardando infatti le differenze tra MC23017 e MCP23S17 noto che il primo ha i segnali I2C: SDA e SCL, mentre il secondo ha i tipici segnali ISP (o SPI, mi pare a questo punto sia la stessa cosa): (MO)SI, (MI)SO e SCK oltre ad un CS che credo sia una specie di abilitatore, ma non ho approfondito.
Entrambi sono riportati come "16-Bit I/O Expander with Serial Interface" ma il primo lavora massimo a 1,7MHz mentre il secondo arriva a ben 10MHz.
Quindi qui si tratta di fare una scelta....
Riguardo la questione alimentazione negativa io ancora sono molto curioso di poter fare delle prove dirette, comunque i moduli sono comodi ma costosi, il MAX1044 o ICL7660 mi sembra un buon prodotto, solo un paio di componenti esterni e la questione è risolta, ma io sarei propenso anche a verificare la versione NE555, il fatto di arrivare a 3,5V (con i diodi fast recuperi circa 0,4V) non è affatto un problema, visto che ne sono richiesti -4 e che comunque non penso che il trimmer sia girato tutto all'estremo, poi al limite si alza un po' la frequenza, la corrente richiesta per il contrasto è ridicola. Stranamente il MAX costa il triplo dell'ICL, almeno sull'RS, mente il data-sheet li riporta come identici, salvo alcune differenze che mi sembrano minimali, almeno nel nostro caso.
Guida alla programmazione ISP e seriale dei micro ATMEL (Caricare bootloader e sketch):
http://www.michelemenniti.it/Arduino_burn_bootloader.php
Guida alla Programmazione ATmega328 noP:
http://www.michelemenniti.it/atmega328nop.html
Articoli su Elettronica In:
http://www.michelemenniti.it/elettronica_in.html

tonid

#78
Dec 15, 2012, 01:15 pm Last Edit: Dec 15, 2012, 01:17 pm by tonid Reason: 1
Ciao Michele,ho fatto una piccola ricerca
http://www.laurtec.it/tutorial/elettronica-digitale/129-interfaccia-spi
e leggendo nel link sopra sembra che ISP sia solo la traduzione in italiano di Serial Peripheral Interface (SPI).
La differenza sostanziale dei due protocolli(spi/i2c),come spiega nell'articolo,è la velocità di trasmissione dei dati oltre che all'utilizzo dei pin necessari.Ora non ho molto tempo per approfondire ma negli esempi dell'ide c'è la comunicazione SPI con un potenziometro digitale.....Credo che non faccia molta differenza utilizzare un protocollo rispetto ad un altro se non dipendesse dalla libreria scritta per il display...Io non ho guardato la lib ,aspetto,grazie alla disponibilità di sz,che mi arrivi il display e poi comincio a muovermi..Comunque darò uno sguardo al datasheet dei due chip e rileggo il link che avevo messo nelle pagine precedenti perchè mi pare fossero citati entrambi e magari da info in merito.

tonid

Ecco ho trovato questo nei link precedenti a cui mi riferivo prima:
Quote
Other pins on the MCP23017:


Pin 9 : +5V Power for MCP23017
Pin 10 : GND Ground for MCP23017
Pin 11 : SS (Slave Select) - connect to Arduino pin D10 if using SPI (for I2C leave unconnected)
Pin 12 : SCL (Clock) - connect to Arduino pin A5 for I2C (or D13 for SPI SCK)
Pin 13 : SDA (Data) - connect to Arduino pin A4 for I2C (or D11 for SPI MOSI)
Pin 14 : MISO (SPI slave out) - connect to Arduino pin D12 if using SPI (for I2C leave unconnected)
Pin 15 : Address jumper 0 - connect to ground
Pin 16 : Address jumper 1 - connect to ground
Pin 17 : Address jumper 2 - connect to ground
Pin 18 : Tie to +5V (reset signal)

Le differenze di collegamento in funzione del protocollo lasciano intendere il diverso chip utilizzato :)

Michele Menniti

#80
Dec 15, 2012, 01:53 pm Last Edit: Dec 15, 2012, 01:55 pm by Michele Menniti Reason: 1
Quindi è come dico io, sono due modelli che usano pin e protocolli differenti, penso che sia preferibile restare sull'I2C, per alcune valide ragioni:
1 - I2C credo sia molto supportato a livello librerie, ed io onestamente non avevo mai sentito parlare di periferiche ISP ma solo di programmazione ISP;
2 - La maggire velocità dell'ISP non credo abbia grande utilità a livello di gestione di questo LCD
3 - I2C usa solo 2 pin contro i 4 dell'ISP
Queste naturalmente sono solo mie supposizioni, poi posso sbagliare, però preferisco dedicare il poco tempo che ho a standard consolidati e non a sperimentazione pura. Ho una scaletta di 11 lavori da finire teoricamente per il 15-20 gennaio ed ancora sono al 70-80% di solo tre di essi; sarei un incosciente a cominciare a giocherellare con altre cose.

PS: in realtà ISP vuol dire In-System Programmer

Comunque sia è molto bello quell'articolo sull'IF SPI.

PS2: tonid, sei tu che avevi realizzato la famosa piramide audio o ricordo male? In questi ultimi tempi mi sono fatto l'idea che tu mi abbia raccontato una piccola balla quando mi hai scritto la prima volta, riguardo le tue "scarsissime" competenze, in virtù del lavoro che facevi (e fai, penso); o forse avevi sopravvalutato me (sbagliando...).  ;)
Guida alla programmazione ISP e seriale dei micro ATMEL (Caricare bootloader e sketch):
http://www.michelemenniti.it/Arduino_burn_bootloader.php
Guida alla Programmazione ATmega328 noP:
http://www.michelemenniti.it/atmega328nop.html
Articoli su Elettronica In:
http://www.michelemenniti.it/elettronica_in.html

tonid

Quote
PS2: tonid, sei tu che avevi realizzato la famosa piramide audio o ricordo male? In questi ultimi tempi mi sono fatto l'idea che tu mi abbia raccontato una piccola balla quando mi hai scritto la prima volta, riguardo le tue "scarsissime" competenze, in virtù del lavoro che facevi (e fai, penso); o forse avevi sopravvalutato me (sbagliando...).

Si Michele,sono io.
Sono molto sincero con te,io sono una persona molto molto umile ed "amo" il confronto con gli altri,lo "amo" perchè mi permette di crescere nella vita sia come persona che professionalmente.  Non ti ho mai mentito perchè ad oggi ti direi la stessa cosa.
Io non ho un titolo di studio in merito,sono un elettromeccanico con 2 anni di scuola professionale,è stata solo la passione a spingermi,con grande sacrificio e testardaggine,a studiare da solo su libri "incomprensibili" che con l'aiuto della messa in pratica ho potuto un po meglio comprendere.Ho ancora troppo da imparare per dire di essere bravo.Detto questo prendo il tuo post come un complimento e ti ringrazio ;)
Comunque non ti ho sopravvalutato,sei una persona in gamba :)

Michele Menniti

"Bene, li conti tornano!" (dal film "Brancaleone alle Crociate": Vittorio Gassman/Brancaleon da Norcia a colloquio con la Morte, altro FILMISSIMO DA VEDERE, se non lo conosci, assieme al primo: "L'Armata Brancaleone", sempre per la Regia di Mario Monicelli).
Cioè, queste nuove informazioni ora tornano con ciò che leggo nei tuoi post, ovvio che mi sto complimentando con te. Nel mio caso mi riferivo alla sopravvalutazione in questo campo non della mia persona. Io lo so che sono in gamba, ma non qui.... :smiley-mr-green:
Ok, parentesi chiusa, ora hai tre film da vedere, oltre che in arrivo un display da provare XD, sempre che sz sia riuscito ad andare alle Poste..... forse sì, visto che è sparito una mattinata, la cosa è compatibile con una fila presso un Ufficio Postale.
Guida alla programmazione ISP e seriale dei micro ATMEL (Caricare bootloader e sketch):
http://www.michelemenniti.it/Arduino_burn_bootloader.php
Guida alla Programmazione ATmega328 noP:
http://www.michelemenniti.it/atmega328nop.html
Articoli su Elettronica In:
http://www.michelemenniti.it/elettronica_in.html

tonid

Quote
forse sì, visto che è sparito una mattinata, la cosa è compatibile con una fila presso un Ufficio Postale.

Hai proprio ragione !
ps. In gambe era riferito in entrambe le cose,aiu ala miseria smettila di fare il modesto! ]:D

tonid

Ciao a tutti,questa mattina ho cercato di approfondire il discorso sul protocollo SPI e le analogie con ISP.
Per capire meglio ho dovuto leggere e cercare di capire lo sketch di arduino ISP.
Di fatto lo sketch utilizza il protocollo di comunicazione SPI che comprende i segnali MOSI,MISO,SCK,SS.
MISO è il segnale che ,uscendo dallo slave,raggiunge il master;
MOSI è il segnale che,uscendo al master,entra nello slave;
SCK è il clock seriale che esce dal master;
SS è invece lo slave select che noi solitamente chiamiamo reset collegandolo al reset dello slave da programmare che corrisponde al pin10 di arduino ed al pin 16 dell'ATMEGA328.
Quindi quando noi parliamo di tecnica ISP di fatto usiamo il protocollo SPI per trasferire i dati sul micro da programmare. Se decidessimo di utilizzare questo protocollo al posto dell'I2C,oltre al numero di pin necessari alla comunicazione ed in caso di più di uno slave (nel nostro caso MCP....)dovremmo essere sicuri che i pin relativi alla comunicazione siano a tre stati ovvero che abbiano lo stato di alta impedenza quando il chip non è stato selezionato,in modo da non generare dei cortocircuiti,oltre ad un numero di segnali SS relativo alla quantità di slave che abbiamo nel nostro circuito.
Avevo dell lacune su questa cosa ed ho approfondito e condiviso con voi quanto ho capito,se qualcuno ha da fare correzioni ben venga,potri aver capito male. ;)
 

superzaffo

Ciao ragazzi... rieccomi... ho avuto un po' di impegni, (matrimonio di amici, lavoro, ecc..)
Allora io ho usato si al I2C che SPI, sono due protocolli a bus entrambi.
L' I2C è stato creato da philips per far comunicare vari componenti e sensori all' interno di un circuito. Molto veloce ma con distanze limitate e non è un vero master slave. Nel progetto che sto seguendo da qualche mese (un orchidario) uso dei sensori i2c (luxometro e un time cronografo) e anche un display lcd 20x4 I2C. Il limite della lunghezza del bus a piena velocità mi sembra di ricordare sia attorno ai 30 cm (anche se io sono riuscito ad arrivare a circa un metro) se si vuole andare oltre si possono inserire dei chip extender.
L' ISP è un altro standard per comunicazione tra componenti ma rispetto all' I2C è più sicuro e trasmette a più lunghe distanze, anche se con velocità un po' inferiori. Ha una comunicazione master slave e anche multi master e ha un sistema di gestione dei segnali più efficenze. Io, sempre nel progetto che vi dicevo prima, uso un micro della microchip per la wifi e adattatore microsd per scrivere dei log.
Io penso che per un display possa andar bene l' I2C, non hanno bisogno di essere a lunghe distanze, la grafica necessita di più velocità rispotto ai display classici e non hanno bisogno una comunicazione multimaster...
Che ne dite ?

P.S. naturalmente ho molto riassunto il tutto  :D

PaoloP

#86
Dec 16, 2012, 02:29 pm Last Edit: Dec 16, 2012, 02:31 pm by PaoloP Reason: 1

1 - I2C credo sia molto supportato a livello librerie, ed io onestamente non avevo mai sentito parlare di periferiche ISP ma solo di programmazione ISP;


L'interfaccia SPI è utilizzata dalle librerie Ethernet, Wifi e dalla SD. (SPI.h)
Sul Atmega328 è possibile utilizzare contemporaneamente le due interfacce perché si presentano su differenti pin. Cosa non vera ad esempio sui tiny.
La libreria che supporta l'I2c è la Wire (Wire.h) con la sua sotto libreria twi. (Two Wire interface).

Sono interessato allo sviluppo del progetto, vi seguirò con attenzione.
Ho avuto una discussione con Trisonic relativa ad un KS107 + Ethernet --> http://arduino.cc/forum/index.php/topic,126220.0.html

tonid

PaoloP,più si è e più semplice diventa,quindi benvenuto ;)
E non esitare a proporre idee o soluzioni diverse.
@sz
scusa se abbrevio,concordo con te e Michele per l'utilizzo dell'I2C.

superzaffo

Ciao PaoloP.. benvenuto in questo topic... come ha detto tonid, più siamo e meglio è.

Michele Menniti

Ciao Paolo!
Bene allora vada per l'I2C, la cui implemetazione la facciamo fare a tonid :D, io comunque a giorni ordinerò l'IC, in ogni caso voglio replicare tutto da me; io vorrei concentrarmi sulla questione della tensione negativa, ho una serie di idee, le sperimento appena arriva il display (a proposito... partì? :smiley-mr-green:), a lavoro finito, compresa la questione alimentazione, faremo il tutorial, purché la suddivisione dei compiti non diventi come la ripartizione delle spese per il regalo al papà di Troisi (altro filmazzo :D, ma potrei sbagliarmi sul titolo... "Ricomincio da tre"), quando Troisi (disoccupato) dice alla sorella Maria (casalinga) ed al fratello (impiegato): "Compriamo la TV a colori a papà per il suo compleanno costa 800 mila lire: 5000 lire e mmetto io, 5000 e mmette Maria e o rresto o mmietti tu (al fratello)" XD XD XD capita l'antifona? :)
Guida alla programmazione ISP e seriale dei micro ATMEL (Caricare bootloader e sketch):
http://www.michelemenniti.it/Arduino_burn_bootloader.php
Guida alla Programmazione ATmega328 noP:
http://www.michelemenniti.it/atmega328nop.html
Articoli su Elettronica In:
http://www.michelemenniti.it/elettronica_in.html

Go Up