aiuto per componenti

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: 1) la dimensione 2) il costo 3) il fatto che ha il circuito per le batterie integrato 4) 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!

Grazie

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: - qui una serie di schede by xxxPighi per i collegamenti elettronici vari: ABC - Arduino Basic Connections - qui le pinout delle varie schede by xxxPighi: Pinout - qui una serie di link [u]generali[/u] utili: Link Utili

Mi pare strano manchi lo SPI. Negli schemi i pin dello SPI sono MOSI,MISO,SCK Lilypad USB monta il ATmega32u4 e dallo schema qui: https://www.arduino.cc/en/uploads/Main/arduino-lilypad-usb-schematic.pdf i pin sono D14,D15,D16

La LilyPad (non usb) monta o un AtMega168 o 328 e dallo schema: https://www.arduino.cc/en/uploads/Main/LilyPad_schematic_v18.pdf sembrano su D15,16,17

Aspetta pareri più autorevoli del mio.

Grazie per le risposte, nell'attesa consulterò le risorse che mi hai passato :)

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.

ok, ma dove lo prendo in tal caso? devo attaccarmi direttamente ad un piedino del microprocessore?

vinniec: ok, ma dove lo prendo in tal caso? devo attaccarmi direttamente ad un piedino del microprocessore?

Si, che poi sono collegati ad uno dei pin. Nel caso della Lilypad ai vari Dx qualcosa che sono disposti nel bordo esterno del "cerchio"

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?

Questo è il Lilypad usb: http://www.pighixxx.com/test/portfolio-items/lilypad-usb/

questo quello senza usb: http://www.pighixxx.com/test/portfolio-items/lilypad/

i segnali SPI sono MISO,MOSI,SCK e SS (ma per il segnale SS puoi usare il pin che vuoi, di solito)

Ok, ma nella versione usb non mi sembra di vederli a differenza di quella normale! Pensi che possa evitare di utilizzare la SPI?

Si, nella versione USB mi pare non ci siano (ci sono molti meno pin nel "cerchio"). Potresti usare un LCD grafico oled ti tipo I2C, tipo questo: http://www.ebay.it/itm/Mini-Nuovo-0-96-I2C-IIC-Seriale-LED-128X64-OLED-LCD-Display-Modulo-Per-Arduino-/231479122152?hash=item35e53b18e8:g:lEAAAMXQeW5TavCe

È 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.

I protocolli di comunicazione sono - seriale su TX,RX - TWI ovvero I2C su pin SDA/SCL - SPI sui pin MISO,MOSI,SCK,SS o CS

ICSP e ISP sono i nomi dei connettori e della programmazione fatta con i programmatori per le MCU Avr di Atmel. In pratica poi sono i segnali SPI.

comunque sulla Lilypad i segnali ISP ci sono Sono quei sei forellini vicino al connettore USB 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

Nello schema di Pighi per la LyliPad USB non si vede il connettore ICSP :confused:

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.