Scusate se mi intrometto, premetto sono niubbo totale quindi se dico (c)astrominc***te vi chiedo scusa.
Vorrei provare arduino per (quasi) la prima volta con un idea stupida però che mi attira, provare a fare un orologio
Allora il primo componente che ho scelto, vuoi per l'economia, vuoi perché mi piace la resa è lcd della nokia tipo questo
Ora, siccome l'idea era di farlo più piccolo possibile e autoalimentato non volevo usare un arduino uno ma qualcosa di più piccolo.
Dopo un po di ricerche la mia scelta stava ricadendo sul lilypad per questi motivi:
la dimensione
il costo
il fatto che ha il circuito per le batterie integrato
il fatto che funziona già a 3.3v invece di 5, che è lo stesso funzionamento del lcd
Solo che mi hanno fatto notare che lcd ha bisogno di essere collegato ad un pin SPI e cercando in rete ho letto che il lilypad non ce l'ha.
A questo punto cosa dovrei fare? comprare il circuito per le batterie lipo a parte e puntare su un altra scheda? non connettere l'spi (forse va solo più lento lo scambio dati? e come si traduce questa lentezza?), insomma mi rimetto a voi per dei pareri più professionali!
Ti invitiamo a presentarti (dicci quali conoscenze hai di elettronica e di programmazione) qui: Presentazioni
e a leggere il regolamento se non lo hai già fatto: Regolamento
Qui una serie di link utili, non inerenti al tuo problema:
Senza leggere documentazione, a priori, fai un minimo di analisi del problema.
Il display, che protocollo di comunicazione hardware/software usa? I2c, rs232, parallelo?
Un I2c lo puoi simulare in software con due pin che decidi tu.
Tutti i processori Atmel, a occhio (non sono certo), hanno i pin summenzionati nei precedenti messaggi, perché sono i pin che si usano per programmarli in-circuit.
I 3.3V non sono un problema, puoi adattare i livelli dal processore al display, con uno zener e una resistenza, mentre il contrario non serve, perché 3.3V sono già uno logico anche a 5V.
Non si tratta di dire castronerie, semmai di ragionamento logico.
Credo sia i2c, mi pare di averlo letto da qualche parte ma devo ricontrollare, però la schedina ha già pochi pin (9), non so se basta per tutto (considerando che forse dovrei attaccare pure qualche pulsante).
Comunque se dici che il pin isp c'è lo stesso riusciresti ad indicarmelo? dal link che ha passato prima nid69 lo schema della scheda è questo: http://pighixxx.com/lilypadusb.pdf
Devo ancora analizzare pin per pin per vedere se bastano, il fatto è che mentre lo facevo appunto è uscito sto dubbio su questo pin specifico!
Forse non ho capito ma il connettore ISP ha sopra i segnali SPI ma quel connettore sulla Arduino Uno o altre schede è una duplicazione. Esempio su Arduino Uno MISO,MOSI,SCK li trovi sia su 11,12 e 13 che sul connettore IcSP. Ma sono sempre gli stessi pin.
Quindi se su una scheda non mettono un connettore ISP non vuol dire che manca lo SPI.
Esattamente come scritto da nid69ita, sebbene io adesso lo dica in modo diverso, i processori Atmel, in base a come li programmi, attribuiscono diversi significati, in istanti diversi, ai medesimi pin. Per conoscere quale pin è cosa, ti serve il datasheet dello specifico processore, lo schema del circuito che usi e naturalmente come è configurato via software, però i pin sono tutti li e non sono fuggiti via.
Per quanto riguarda i pulsanti, esistono tecniche per usare più pulsanti che pin, inoltre nulla vieta riprogrammare in tempi diversi, un pin da uscita a ingresso e viceversa. Io lo faccio sempre, perché uso processori il più piccolo possibile, retaggio di quando la memoria si misurava in BYTE e i processori costavano un occhio.
Scusate il tempo di risposta ma ho dovuto un po' rileggere e rielaborare quello che mi avete detto.
Allora riassumento, sul microprocessore i piedini che hanno sto clock sono D14, D15 e D16, ora, se ho capito bene come interpretare lo schema del lilypad usb, le connessioni che terminano con un disegnino così ---( corrispondono ai fori che ci sono intorno al lilypad. Allora in tal caso quei 3 pin non sono effettivamente collegati ma dovrei collegarli a mano (oppure sono altrove "nel bordo esterno del cerchio" come diceva nid69, ma in tal caso ho frainteso e necessiterei di capire dove sono).
Ora non per troppa pigrizia ma osservando le immagini della scheda posso affermare con certezza di non essere in grado di prelevare segnali a mano dal microprocessore, non ce l'ho la manualità per saldare su contatti così piccoli.
Tuttavia cercando di capire se quei pin fossero i2c (non sono riuscito a trovare l'info, tuttavia essendo philips il circuito dentro all'lcd credo che lo sia) ho trovato per sbaglio questa pagina e ho letto questa frase:
While many folks wire this LCD controller to the SPI bus, there is no real requirement to do so unless you are after the fastest possible communication. The LCD controller is fast, accepting clock rates up to 4 MHz. The communication from the host to the LCD display is flexible, tolerating pauses in the transmission. This allows the the driving host to become side-tracked, should it become busy. For this reason, the “bit-bang” approach was used here, since the communication is strictly from the host to peripheral. This allows the connections to be very flexible.
Allora se ho capito bene posso evitare di usarlo e non dovrei risentirne troppo, riuscite a confermarlo?
In alternativa e in seguito potrei usare il "bit bang" citato anche da e-person posticipando complessità.
Non ancora mi presento (prometto che lo faccio) ma sono davvero inesperto per qui preferirei affrontare il minimo dei problemi assieme e quindi se posso saltare la connessione dell'SPI mi occorre solo controllare il resto delle connessioni e poi procedere all'acquisto.
Voi che dite?
È che strutturalmente mi piace più lcd (diciamo che è pure per una questione di vintage, avevo i nokia con quello schermo e ci sono un po' affezionato).
Pensavo che I2C fosse una sottocategoria di ISP, per questo non riuscivo a trovare l'informazione!
Uhm eppure mi piacerebbe capire se è necessario o no che quelle porte siano ISP, anche nella pagina di descrizione del lcd che ho passato prima è scritto che "...Connecting SCLK and DN(MOSI) to Arduino’s hardware SPI pins helps to achieve a faster data transfer..." .
Comunque penso che non mi rimane molto altro che provare.
Quanto poi siano usabili dipende dalla tua manualità.
Comunque tutte le librerie che conosco, a cominciare da quella di Adafruit , oppure quest'altra non usano la SPI Hardware, le puoi quindi configurare sui pin che preferisci
Brunello fa rima con buono è bello, non deve essere un caso
Dovrebbesi segnararlo a pighi così che aggiunga codesti fori
Grazie dell'aiuto lorsignori, spero di avere presto notizie positive!
Piccolo edit: sto guardando l'interfaccia della libreria che mi hai passato e sembra interessante, sembra avere proprio tutto quello che serve, pure lo sleep e il negativo.
Ora mi tocca contare i pin, teoricamente dovrebbero bastare, ho visto degli schemi e in sostanza 1gdn, 2vcc (uno è delle luci, dimmerabile da quanto ho capito ma anche no) e 5 digitali, ci dovrei stare.