Pages: 1 ... 8 9 [10] 11 12 ... 14   Go Down
Author Topic: Arduo Memory Reminder Medicine  (Read 15814 times)
0 Members and 1 Guest are viewing this topic.
Torino (Italy)
Offline Offline
Sr. Member
****
Karma: 0
Posts: 269
Fare insegna a fare.Do teaches how to make.
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

 smiley-roll
Per pilotare il display, però, visto che esiste la libreria, non cambia proprio nulla?
Devo usare la stessa libreria con gli stessi comandi o un'altra?

Credo si debba dichiarare l'indirizzo di pilotaggio del PCF8574!
« Last Edit: November 28, 2012, 05:37:37 am by Giuseppe G. » Logged

Un saluto a tutta la comunità.
Giuseppe G.

Offline Offline
Edison Member
*
Karma: 26
Posts: 1339
You do some programming to solve a problem, and some to solve it in a particular language. (CC2)
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ecco alcuni riferimenti che ho trovato:

http://garagelab.com/profiles/blogs/tutorial-arduino-i-o-port-expander-with-pcf8574

http://arduino.cc/playground/Main/I2CPortExpanderAndKeypads

http://arduino.cc/playground/Code/I2CPortExpanderAndLCDs
Logged

Tuscany
Offline Offline
Edison Member
*
Karma: 75
Posts: 2078
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

la libreria e' la stessa, ma in versione I2C     liquidCrystal_i2c.
Il bello e' che usa gli stessi comandi, quindi nessuna modifica agli sketch.

L'indirizzo lo dichiari nell'assegnazione

#include <Wire.h>
#include <LiquidCrystal_I2C.h>

LiquidCrystal_I2C lcd(0x20);  // Set the LCD I2C address  ( 0x38 per PCF8574A )
Logged

Torino (Italy)
Offline Offline
Sr. Member
****
Karma: 0
Posts: 269
Fare insegna a fare.Do teaches how to make.
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

 smiley
Fantastico brunello!

Inizio ad implementare l'RTC, poi la eprom 24C64, così inizio a prendere dimestichezza con la wire.h ed i vari indirizzamenti.
Nel frattempo ordino un LCD seriale. A proposito, ne consigli uno in particolare?


smiley-wink
Grazie tuxduino!

L'idea è chiara, ora occorre implementare l'RTC. Sbaglio o avevi già fatto qualcosa? Riusciresti ad inserire le modifiche al SW per l'utilizzo dell'RTC, io nel frattempo, inserisco la EPROM che ho già. La versione del SW sarà la R1.0, legata quindi all' HD con stessa release R1.0

 smiley-roll Domanda.... ma se inserisco la modifica SW per L'RTC ed in realtà non lo collego (almeno fino a quando non mi arriva) arduino continua a funzionare con una data ed ora di default o non funziona niente?
Logged

Un saluto a tutta la comunità.
Giuseppe G.

Tuscany
Offline Offline
Edison Member
*
Karma: 75
Posts: 2078
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
Nel frattempo ordino un LCD seriale. A proposito, ne consigli uno in particolare?

Seriale ?
Con due euro di chip ti adatti qualunque LCD parallelo, come quello che hai gia'.
PS. che abbia anche la Backlight, cosi' quando il tutto e' in standby lo spegni


Logged

Torino (Italy)
Offline Offline
Sr. Member
****
Karma: 0
Posts: 269
Fare insegna a fare.Do teaches how to make.
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

 smiley-sweat
Giusto! Che pistola che sono!

Nessun LCD seriale, ma lo stesso adattato con il PCF8574.

L'idea di liberare così tanti pin, mi rinba........ , perchè penso alle implementazioni che si possono ancora fare.  smiley-lol
Logged

Un saluto a tutta la comunità.
Giuseppe G.

Offline Offline
Edison Member
*
Karma: 26
Posts: 1339
You do some programming to solve a problem, and some to solve it in a particular language. (CC2)
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
L'idea è chiara, ora occorre implementare l'RTC. Sbaglio o avevi già fatto qualcosa? Riusciresti ad inserire le modifiche al SW per l'utilizzo dell'RTC

La libreria Time include già il supporto per il DS1307. La modifica è banale. Nella mia versione è già presente, provo a includerla anche nella tua smiley


Quote
Domanda.... ma se inserisco la modifica SW per L'RTC ed in realtà non lo collego (almeno fino a quando non mi arriva) arduino continua a funzionare con una data ed ora di default o non funziona niente?

Quando abilito l'rtc nel mio sketch e mi scordo di collegare il modulino l'ora che compare sul display è "strampalata", tipo 2034 o giù di lì. In realtà la libreria Time include un flag che dice se il tentativo di sincronizzarsi con la sorgente di tempo scelta (in questo caso l'rtc via i2c) è fallita o ha avuto successo. Si dovrebbe leggere questo flag, e se indica fallimento azzerare la data ad un valore di default.
Logged

Offline Offline
Edison Member
*
Karma: 26
Posts: 1339
You do some programming to solve a problem, and some to solve it in a particular language. (CC2)
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Non vorrei mettere troppa carne al fuoco, ma per liberare un altro po' di pin ho trovato questo:

http://www.maximintegrated.com/datasheet/index.mvp/id/3195

"The MAX6950 drives up to five 7-segment digits or 40 discrete LEDs. The MAX6951 drives up to eight 7-segment digits or 64 discrete LEDs."

Tuttavia ora che ci penso nella matrice di led, benché ne ospiti 32, è richiesto accenderne uno solo alla volta, quindi forse questo IC è "troppo"... (mumble...)
Logged

Deep south of Italy
Offline Offline
Faraday Member
**
Karma: 8
Posts: 2955
The quieter you become, the more you can hear
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

perchè non dei classici mcp2317?
http://lib.chipdip.ru/263/DOC000263416.pdf
si possono collegare in cascata ed ottenere un numero di io digitali elevato su bus i2c.
esempio:
http://docs.macetech.com/doku.php/centipede_shield
Logged

Torino (Italy)
Offline Offline
Sr. Member
****
Karma: 0
Posts: 269
Fare insegna a fare.Do teaches how to make.
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

 smiley-roll-blue
Lo penso anche io tuxduino! Poi il problema è come pilotarlo. Credo si possano pilotare i display con i numeri, ma per far accendere un singlo led?


 smiley-eek
Paura !!! BrainBooster !
Ma quanto costa e dove si recupera centipede? Trasformerebbe arduino in un mostro di in/out, bello!
Logged

Un saluto a tutta la comunità.
Giuseppe G.

Torino (Italy)
Offline Offline
Sr. Member
****
Karma: 0
Posts: 269
Fare insegna a fare.Do teaches how to make.
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

 smiley
Trovato centipede!   http://macetech.com/store/index.php?main_page=product_info&products_id=23

Prezzo interessante: 25$. Per l'evoluzione a 64 medicine, potrebbe tornare utile, pronta e già montata da applicare ad arduino !
Logged

Un saluto a tutta la comunità.
Giuseppe G.

Offline Offline
Edison Member
*
Karma: 26
Posts: 1339
You do some programming to solve a problem, and some to solve it in a particular language. (CC2)
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Aggiornamento alla 05i:

- aggiornati pin matrice led
- rtc: aggiunti include necessari
- rtc: ora il ds1307 è la sorgente di tempo
- rtc: quando vengono aggiornate data e ora, viene aggiornato anche l'RTC
- aggiornato pin altoparlante
- pin lcd: da aggiornare... smiley-razz

L'ho compilata ma (ovviamente) non provata.

* A_M_R_05i.pde (30.38 KB - downloaded 9 times.)
Logged

Torino (Italy)
Offline Offline
Sr. Member
****
Karma: 0
Posts: 269
Fare insegna a fare.Do teaches how to make.
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

 smiley
Come al solito un buon lavoro tuxduino, ma purtroppo non ho potuto provare nulla, perchè ho impegato un pò per trovare la libreria "ds1307rtc.h", non è così semplice da trovare, ne esistono un pò di tipi ed infine ho usato una che si trova all'interno della "Time" del 05/09/2011. Sarebbe meglio se mi indicassi quale hai usato ed eventualmente dove trovarla, per non trovare eventualmente sorprese.

Domani aggiorno l'hardware e testo la tua R05i, però senza l'RTC che spero mi arrivi la prox week. (ne ho ordinati 3, insieme al PCF8574).

Per l'aggiornamento del display, secondo  brunello, basta fare così:
Quote
la libreria e' la stessa, ma in versione I2C     liquidCrystal_i2c.
Il bello e' che usa gli stessi comandi, quindi nessuna modifica agli sketch.

L'indirizzo lo dichiari nell'assegnazione

#include <Wire.h>
#include <LiquidCrystal_I2C.h>

LiquidCrystal_I2C lcd(0x20);  // Set the LCD I2C address  ( 0x38 per PCF8574A )

quindi, una volta montato con il PCF8574 , si cambiano queste istruzioni e tutto dovrebbe funzionare.

Che brutto, non avere un negozio/magazzino di elettronica vicino casa, dove acquistare i componenti.
Qui a Torino, una decina di anni fà ce ne erana almeno 4 grandi. Oggi è diventato tutto più difficile, i negozi/magazzino non esistono più, e gli altri negozietti, non hanno mai in emerito bip.... di quello che chiedi, e devono sempre ordinarlo.
Al contrario, li trovi su internet ma hai sempre il dilemma "e se il materiale arriva che non sono in casa?" oppure "e se dicono che hanno i componenti ed invece ti tocca aspettarli come in negozio, avendoli già pagati?" oppure "non arriveranno mai?".

Credo che questo ostacoli un pò lo sbroglio dei progetti, sia quelli amatoriali che non.
Ma con un pò di pazienza e tenacia, si riesce a risolvere lo stesso, anzi, durante questi tempi morti, si può far tesoro, riflettendo un pò sul progetto, cercando di pensare se si sta facendo bene.

Sorry, ma avevo bisogno di farti presente che il test completo non posso farlo fino alla prossima fornitura del materiale. smiley-cry
Mi sarebbe piaciuto poterti dare una risposta tempestiva, come la modifica che hai portato tu al firmware.

Un saluto.
Giuseppe
Logged

Un saluto a tutta la comunità.
Giuseppe G.

Offline Offline
Edison Member
*
Karma: 26
Posts: 1339
You do some programming to solve a problem, and some to solve it in a particular language. (CC2)
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Non sto neanche a sottolineare più di tanto che per me non c'è nessun problema di tempo, si fa per il piacere di imparare "sporcandosi" le mani e dare una mano smiley

Per quanto riguarda al libreria per l'RTC, ho usato quella pubblicata insieme a Time. La libreria Time è distribuita come file .zip, all'interno del quale c'è anche DS1307.h. Nei progetti che ho fatto con l'rtc, ho sepmre usato quel file (per la cronaca, ho il modulo rtc di sparkfun, ma credo che non ci siano differenze con altre marche purché l'integrato sia lo stesso).

In merito ai pin dell'LCD, ho notato che sei stato costretto a collegarlo a pin diversi rispetto alla versione precedente. Non ho capito bene dallo schema come sono nominati i pin sul modulo LCD, quindi ho pensato che sarebbe stato più semplice e affidabile se l'aggiornamento dei pin nel codice l'avessi fatto tu smiley

Colgo infine l'occasione per riflettere sul fatto che nonostante l'overshoot smiley iniziale non sono riuscito a starti dietro in termini di funzionalità nel produrre una "mia" versione del programma, quindi forse è più corretto se come "main software developer" ti metti tu e a me affianchi la dicitura "additional development". Ma dico così per dire, non mi formalizzo smiley-grin
Logged

Torino (Italy)
Offline Offline
Sr. Member
****
Karma: 0
Posts: 269
Fare insegna a fare.Do teaches how to make.
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

 smiley-sad
Non vorrai mica farti da parte proprio ora tuxduino?
Tutti i consigli sono ben accetti, ed in particolare la tua conoscenza alla programmazione, diventa molto utile per lo sviluppo.
E' certo, che se ti interessa, come dici tu "sporcarti le mani" occorre trovare il compromesso, modificando step by step sia il codice che l'hardware, rispettando però "credo" l'interesse comune, cioè l'abilità ad utilizzare arduino nel miglior modo possibile e con la minima implementazione di dispositivi esterni.
Questo progetto, lo si sarebbe realizzato con un PC o con un tablet, alla modica cifra di 150-200 Euro. Troppo facile e banale! Esistono già applicazioni free di questo tipo, sia per android che per windows.

 smiley-roll Io penso che il fatto di cercare di realizzare un qualcosa di nuovo ed utile a tutti senza dover spendere troppo in tecnologia e tempo di realizzazione hardware, diventi il motore che spinge alle persone come noi di arrivare a creare l'oggetto che un domani sia solo la base dell' espressione dell' open souce.

Insomma, l'obbiettivo principale è quello che io chiamo "semplicità di realizzazione", dove dietro, c'è un lavoro non indifferente di elaborazione software. Se aggiungiamo anche la semplicità al software, grazie alla tua conoscenza ed ai consigli della comunità, ecco che il progetto diventa interessante, non solo a noi, ma anche alla comunità per poter crescere a livello di conoscenza.

Dopo questo dettaglio, che ocorre ricordare ogni tanto e che pensavo fosse stato compreso da chi ha partecipato fino ad ora, ricordo che il progetto è libero "OPEN SOURCE", senza scopo di lucro ed a uso personale.

Ho voluto "regalare" condividere questo progetto alla comunità, come gli altri, sperando di poter risvegliare in qualcuno l'interesse al mondo open ed allo stesso tempo incuriosire i ragazzi che oggi intraprendono questa strada. Ultimamente se ne parla molto, ma in pochi lo praticano.

E come frase finale aggingerei: "( Il futuro oggi siamo noi. Proviamo a cambiarlo!)"  smiley-fat

Dopo questo chiarimento di pensiero, Vi informo che a breve, posterò nel sito del FABLABTorino, la nuova versione HD, R.1.1 che prenderà il posto della R.1.0, ma solo per liberare pin di arduino (quelli del display) nel caso ce ne sia bisogno, e la R.1.0a per rendere più chiaro lo schema e permettere a chiunque fosse interessato di costruirsi il dispositivo con un elenco dei componenti da me utilizzati.

Ricordo ancora, che Il software R1.0.x, potrà funzionare sia per la versione HD R.1.0 che per la R.1.1, salvo implememtazioni ai pin del display.

Un saluto a tutti.  smiley-wink
Logged

Un saluto a tutta la comunità.
Giuseppe G.

Pages: 1 ... 8 9 [10] 11 12 ... 14   Go Up
Jump to: