Hashtag più usati
1 | #include |
2 | #drone |
3 | #dlcitalia |
4 | #ets2 |
5 | #eurotrucksimulator2 |
6 | #arduino |
7 | #youtube |
8 | #aukey |
9 | #xiaomi |
Ultimi argomenti attivi
» Comunicazione termine servizio Arduino BT ControlDa Admin Mar Mag 10, 2022 12:55 pm
» Robot aspirapolvere per Alexa: Dreame D9
Da Admin Mar Feb 09, 2021 9:42 am
» Come costruire un robot smart con Arduino
Da Admin Mar Nov 17, 2020 12:15 pm
» TOPPS Trading Cards Match Attax Champsion League/Europa League 2020/21
Da Admin Mar Nov 10, 2020 3:21 pm
» Guida per utilizzare Arduino BT Control v1.2
Da Admin Gio Lug 09, 2020 12:01 pm
» Recensione Umidigi A3 Pro - Smartphone sotto i 100€
Da Admin Gio Apr 04, 2019 12:22 pm
» [Arduino] aiuto programma
Da Glak Mar Mar 12, 2019 9:30 am
» ERRORE NELLA COMPILAZIONE NEXTION
Da papat Mar Feb 26, 2019 7:11 am
» Comandare la Smart TV con Alexa senza broadlink (gratis)
Da Admin Mar Feb 19, 2019 4:31 pm
I postatori più attivi del mese
Nessun utente |
Esempi per DS 3231
2 partecipanti
Pagina 1 di 1
Esempi per DS 3231
Ciao a tutti,
mi è appena arrivato il modulino RTC DS 3231 e sono smanioso di provarlo,ho scelto questo modulo per la sua precisione e come partenza per alcuni progetti. Purtroppo sul web ho trovato solo esempi impegnativi per un neofita come me,mi chiedevo se qualcuno di voi ha sottomano qualche sketch per poter capire come funziona e muovere i primi passi.
Grazie a tutti anticipatamente.
Guido
mi è appena arrivato il modulino RTC DS 3231 e sono smanioso di provarlo,ho scelto questo modulo per la sua precisione e come partenza per alcuni progetti. Purtroppo sul web ho trovato solo esempi impegnativi per un neofita come me,mi chiedevo se qualcuno di voi ha sottomano qualche sketch per poter capire come funziona e muovere i primi passi.
Grazie a tutti anticipatamente.
Guido
Guido Laferrari- Livello due
- Messaggi : 34
Crediti : 54
Reputazione : 2
Data d'iscrizione : 30.04.16
Re: Esempi per DS 3231
Ciao a tutti,
ho provato a realizzare lo sketch di Mauro Alfieri da te proposto, sono riuscito in parte perché quando apro il monitor seriale la prima riga mi dice che non comunica con DS 3231. Ho controllato i due fili per la comunicazione I2C SDA al pin A4 e SCL al pin A5 e sono corretti,ho letto da qualche parte dove vengono indicate delle resistenze di pull-up sulle entrate SCL e SDA dei dispositivi connessi , è il mio caso ? cosa mi consigli ?.
A presto.
Guido
ho provato a realizzare lo sketch di Mauro Alfieri da te proposto, sono riuscito in parte perché quando apro il monitor seriale la prima riga mi dice che non comunica con DS 3231. Ho controllato i due fili per la comunicazione I2C SDA al pin A4 e SCL al pin A5 e sono corretti,ho letto da qualche parte dove vengono indicate delle resistenze di pull-up sulle entrate SCL e SDA dei dispositivi connessi , è il mio caso ? cosa mi consigli ?.
A presto.
Guido
Guido Laferrari- Livello due
- Messaggi : 34
Crediti : 54
Reputazione : 2
Data d'iscrizione : 30.04.16
Re: Esempi per DS 3231
Ciao, sei sicuro di averlo alimentato? Comunque si, potrebbe essere il tuo caso
Re: Esempi per DS 3231
Ciao
ho provato collegare due resistenze di pull-up da 4,7 k ma non ho ottenuto niente,ho ricontrollato il cablaggio ed è tutto ok . Il modulino penso che sia una cinesata visto quanto l'ho pagato, può essere guasto di suo?
A presto.
Guido
ho provato collegare due resistenze di pull-up da 4,7 k ma non ho ottenuto niente,ho ricontrollato il cablaggio ed è tutto ok . Il modulino penso che sia una cinesata visto quanto l'ho pagato, può essere guasto di suo?
A presto.
Guido
Guido Laferrari- Livello due
- Messaggi : 34
Crediti : 54
Reputazione : 2
Data d'iscrizione : 30.04.16
Re: Esempi per DS 3231
Si potrebbe essere guasto ma controllerei meglio il modello. Sei sicuro sia quello ?
Guido Laferrari- Livello due
- Messaggi : 34
Crediti : 54
Reputazione : 2
Data d'iscrizione : 30.04.16
Re: Esempi per DS 3231
Per sicurezza, ho prova anche a vedere questa guida. Anche se in inglese, si capisce abbastanza bene. Non preoccuparti per il codice. E' divisa in funzioni ma per adesso non interessa molto questo, interessa il fatto che funzioni. Fammi sapere
Re: Esempi per DS 3231
Ciao , grazie per il codice.
Dopo svariati tentativi , questo secondo me è la posizione dove inserire l’istruzione (questo è una porzione di codice ,vedi riga in grassetto ) per settare il tempo.
void setup()
{
Wire.begin();
Serial.begin(9600);
// set the initial time here:
// DS3231 seconds, minutes, hours, day, date, month, year
// setDS3231time(30,42,21,4,26,11,14);
setDS3231time(30,42,21,4,26,11,14);
}
void setDS3231time(byte second , byte minute, byte hour, byte dayOfWeek, byte
dayOfMonth, byte month, byte year)
La compilazione e il caricamento dello sketch viene effettuato con successo ma purtroppo sul monitor seriale non leggo questa data. Il cablaggio è corretto e il monitor seriale è settato con 9600 baud .
A presto
Guido
Dopo svariati tentativi , questo secondo me è la posizione dove inserire l’istruzione (questo è una porzione di codice ,vedi riga in grassetto ) per settare il tempo.
void setup()
{
Wire.begin();
Serial.begin(9600);
// set the initial time here:
// DS3231 seconds, minutes, hours, day, date, month, year
// setDS3231time(30,42,21,4,26,11,14);
setDS3231time(30,42,21,4,26,11,14);
}
void setDS3231time(byte second , byte minute, byte hour, byte dayOfWeek, byte
dayOfMonth, byte month, byte year)
La compilazione e il caricamento dello sketch viene effettuato con successo ma purtroppo sul monitor seriale non leggo questa data. Il cablaggio è corretto e il monitor seriale è settato con 9600 baud .
A presto
Guido
Guido Laferrari- Livello due
- Messaggi : 34
Crediti : 54
Reputazione : 2
Data d'iscrizione : 30.04.16
Guido Laferrari- Livello due
- Messaggi : 34
Crediti : 54
Reputazione : 2
Data d'iscrizione : 30.04.16
Re: Esempi per DS 3231
Ciao,
ho fatto la prova che mi hai chiesto con esito negativo.
Penso che la lettura in orizzontale sul monitor seriale indichi un errore.
A presto
Guido
ho fatto la prova che mi hai chiesto con esito negativo.
Penso che la lettura in orizzontale sul monitor seriale indichi un errore.
A presto
Guido
Guido Laferrari- Livello due
- Messaggi : 34
Crediti : 54
Reputazione : 2
Data d'iscrizione : 30.04.16
Re: Esempi per DS 3231
Più che altro sembra funzionare ma è sballato. Si muove qualcosa o rimane tutto fermo?
- Codice:
#include "Wire.h"
#define DS3231_I2C_ADDRESS 0x68
// Convert normal decimal numbers to binary coded decimal
byte decToBcd(byte val)
{
return( (val/10*16) + (val%10) );
}
// Convert binary coded decimal to normal decimal numbers
byte bcdToDec(byte val)
{
return( (val/16*10) + (val%16) );
}
void setup()
{
Wire.begin();
Serial.begin(9600);
// set the initial time here:
// DS3231 seconds, minutes, hours, day, date, month, year
// setDS3231time(30,42,21,4,26,11,14);
}
void setDS3231time(byte second, byte minute, byte hour, byte dayOfWeek, byte
dayOfMonth, byte month, byte year)
{
// sets time and date data to DS3231
Wire.beginTransmission(DS3231_I2C_ADDRESS);
Wire.write(0); // set next input to start at the seconds register
Wire.write(decToBcd(second)); // set seconds
Wire.write(decToBcd(minute)); // set minutes
Wire.write(decToBcd(hour)); // set hours
Wire.write(decToBcd(dayOfWeek)); // set day of week (1=Sunday, 7=Saturday)
Wire.write(decToBcd(dayOfMonth)); // set date (1 to 31)
Wire.write(decToBcd(month)); // set month
Wire.write(decToBcd(year)); // set year (0 to 99)
Wire.endTransmission();
}
void readDS3231time(byte *second,
byte *minute,
byte *hour,
byte *dayOfWeek,
byte *dayOfMonth,
byte *month,
byte *year)
{
Wire.beginTransmission(DS3231_I2C_ADDRESS);
Wire.write(0); // set DS3231 register pointer to 00h
Wire.endTransmission();
Wire.requestFrom(DS3231_I2C_ADDRESS, 7);
// request seven bytes of data from DS3231 starting from register 00h
*second = bcdToDec(Wire.read() & 0x7f);
*minute = bcdToDec(Wire.read());
*hour = bcdToDec(Wire.read() & 0x3f);
*dayOfWeek = bcdToDec(Wire.read());
*dayOfMonth = bcdToDec(Wire.read());
*month = bcdToDec(Wire.read());
*year = bcdToDec(Wire.read());
}
void displayTime()
{
byte second, minute, hour, dayOfWeek, dayOfMonth, month, year;
// retrieve data from DS3231
readDS3231time(&second, &minute, &hour, &dayOfWeek, &dayOfMonth, &month,
&year);
// send it to the serial monitor
Serial.print(hour, DEC);
// convert the byte variable to a decimal number when displayed
Serial.print(":");
if (minute<10)
{
Serial.print("0");
}
Serial.print(minute, DEC);
Serial.print(":");
if (second<10)
{
Serial.print("0");
}
Serial.print(second, DEC);
Serial.print(" ");
Serial.print(dayOfMonth, DEC);
Serial.print("/");
Serial.print(month, DEC);
Serial.print("/");
Serial.print(year, DEC);
Serial.print(" Day of week: ");
switch(dayOfWeek){
case 1:
Serial.println("Sunday");
break;
case 2:
Serial.println("Monday");
break;
case 3:
Serial.println("Tuesday");
break;
case 4:
Serial.println("Wednesday");
break;
case 5:
Serial.println("Thursday");
break;
case 6:
Serial.println("Friday");
break;
case 7:
Serial.println("Saturday");
break;
}
}
void loop()
{
displayTime(); // display the real-time clock data on the Serial Monitor,
delay(1000); // every second
}
Ultima modifica di Admin il Mar Ott 04, 2016 3:51 pm - modificato 1 volta.
Re: Esempi per DS 3231
Ciao,
si scorrono da sinistra a destra ma i numeri che compaiono sono sempre gli stessi ,non cambiano.
A presto
Guido
si scorrono da sinistra a destra ma i numeri che compaiono sono sempre gli stessi ,non cambiano.
A presto
Guido
Guido Laferrari- Livello due
- Messaggi : 34
Crediti : 54
Reputazione : 2
Data d'iscrizione : 30.04.16
Re: Esempi per DS 3231
Ciao
grazie lo stesso per l'interessamento,provvedo a ordinarne uno un po più serio.
a presto.
Guido
grazie lo stesso per l'interessamento,provvedo a ordinarne uno un po più serio.
a presto.
Guido
Guido Laferrari- Livello due
- Messaggi : 34
Crediti : 54
Reputazione : 2
Data d'iscrizione : 30.04.16
Pagina 1 di 1
Permessi in questa sezione del forum:
Non puoi rispondere agli argomenti in questo forum.