Předělání kódu z DS1307 na DS3231

Odpovědět
brunosaab
Příspěvky: 2
Registrován: 13 lis 2017, 09:47
Reputation: 0

Předělání kódu z DS1307 na DS3231

Příspěvek od brunosaab » 13 lis 2017, 10:12

Ahoj,

byl by někdo ochotný předělat program z DS1307 na DS3231. Jedná se o osvětlení akvária - stmívání, rozsvěcování dvou okruhů v nastavený čas. Kód je již hotový, ale nedokážu si poradit s konvertem na jiné hodiny. Jsem ochotný za to zaplatit rozumnou cenu.
Děkuji
Přílohy
program+libraries (2).zip
(518.07 KiB) Staženo 242 x

petan
Příspěvky: 358
Registrován: 23 črc 2017, 10:19
Reputation: 0
Kontaktovat uživatele:

Re: Předělání kódu z DS1307 na DS3231

Příspěvek od petan » 13 lis 2017, 20:49

Hodiny přečteš tímhle kódem:

Kód: Vybrat vše

//RTC DS3231 #define DS3231_I2C_ADDRESS 0x68 //adresa modulu 

void GetRtc() { 
 Wire.beginTransmission(DS3231_I2C_ADDRESS); 
 Wire.write(0); //zapsat nulu 
 Wire.endTransmission(); 

 Wire.requestFrom(DS3231_I2C_ADDRESS, 7); //požadavek na 7 bajtů od modulu RTC 
 SEC = bcdToDec(Wire.read() & 0x7f); 
 MIN = bcdToDec(Wire.read()); 
 GODZ = bcdToDec(Wire.read() & 0x3f); 
} 

// Konverze BCD na Dec 
byte bcdToDec(byte val) { 
 return((val / 16 * 10) + (val % 16)); 
}
Koukni sem, tady je napsáno, jak to číst hodiny pomocí DS3231. V podstatě stačí jen nahradit pár řádků, kde se čtou a nastavují proměnné pro hodiny, minuty a sekundy. Je to úplně primitivní.

Odpovědět

Kdo je online

Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 9 hostů