Vítejte na Elektro Bastlírn?
Nuke - Elektro Bastlirna
  Vytvořit účet
Hlavní · Fórum · DDump · Profil · Zprávy · Hledat na fóru


Nuke - Elektro Bastlirna: Diskuzní fórum

 FAQFAQ   HledatHledat   Uživatelské skupinyUživatelské skupiny   ProfilProfil   Soukromé zprávySoukromé zprávy   PřihlášeníPřihlášení 

modul s DS1307

 
Přidat nové téma   Zaslat odpověď       Obsah fóra Diskuzní fórum Elektro Bastlírny -> Programování PIC, ATMEL, EEPROM a dalších obvodů
Zobrazit předchozí téma :: Zobrazit následující téma  
Autor Zpráva
RX-20
Doporučuje se dohled moderátorů


Založen: Jun 30, 2024
Příspěvky: 223
Bydliště: střední Čechy u Koněpruských jeskyní

PříspěvekZaslal: st únor 04 2026, 8:20    Předmět: modul s DS1307 Citovat

Mám obvod DS1307. Zastrčím ho do nepájivého pole, připojím napájení a dráty SDA, SDL na mikropočítač Microchip. Můj program s obvodem funguje. Použil jsem obvod již mnohokrát s minimálně 8 různými Microchip MCU.
Protože mne otravovalo obvod stále zastrkávat do nepájivého pole, koupil jsem tento modul GME: https://www.gme.cz/v/1507876/modul-rtc-ds1307-s-32k-flash.
Myslel jsem si, že se mi zjednoduší připojování DS1307 na různé mikropočítače.
Jenže jsem tento modul nezprovoznil s žádným Microchip mikropočítačem. Program, který funguje s mým DS1307 na nepájivém poli, nefunguje s modulem od GME.
Na internetu se mi povedlo najít schema tohoto modulu (GME ho nemá).
Na modulu není osazeno teplotní čidlo DS18B20 (1-wire) ani baterie. Baterie má být nabíjecí (tu nemám). Pro ne-nabíjecí baterii se musí odstranit dioda a dva odpory a jeden odpor se nahradí spojkou.
Otázka: není náhodou tento modul určen pouze pro Ardujíno?
Ardujíno nemám, takže modul s ním nemůžu vyzkoušet.



Tiny RTC Module.jpeg
 Komentář:
schema Tiny modulu s DS1370 + EEPROM z GME
 Velikost:  55.53 kB
 Zobrazeno:  50 krát

Tiny RTC Module.jpeg



_________________
S časem se vše zhoršuje (zákon prof. Parkinsona)
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Dumitru



Založen: Dec 11, 2015
Příspěvky: 252
Bydliště: Slovensko,Bratislava

PříspěvekZaslal: st únor 04 2026, 9:37    Předmět: Citovat

Ahoj musí to fungovať z akýmkoľvek MCU ktorý ma I2C rozhranie Smile

Ak je všetko správne pripojene samozrejme Smile

Skús sa pozrieť aké napätia máš VCC a Vbat

V datasheete som našiel toto viď foto



1.png
 Komentář:
 Velikost:  117.43 kB
 Zobrazeno:  11 krát

1.png


Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Odeslat e-mail Zobrazit autorovy WWW stránky
Cowley



Založen: Feb 04, 2005
Příspěvky: 3572

PříspěvekZaslal: st únor 04 2026, 12:28    Předmět: Citovat

A co Adresa I2C daného RTC?
Protáhnout to I2C skenerem, aby tam byla 0x68?
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
RX-20
Doporučuje se dohled moderátorů


Založen: Jun 30, 2024
Příspěvky: 223
Bydliště: střední Čechy u Koněpruských jeskyní

PříspěvekZaslal: st únor 04 2026, 13:09    Předmět: Citovat

Dumitru napsal(a):
Ahoj musí to fungovať z akýmkoľvek MCU ktorý ma I2C rozhranie Smile
Ak je všetko správne pripojene samozrejme Smile
Skús sa pozrieť aké napätia máš VCC a Vbat
V datasheete som našiel toto viď foto

Mělo by to fungovat, ale nefunguje.
Předně, to schema vytvořil někdo ve světě rozkreslenim z desky modulu. Není to schema "výrobce".Kdo to vyrábí ví Bůh.Asi Číňani nebo Mexičani anebo Číňani v Mexiku. Mají tam výrobny.
Vcc je +5V. To už jsem měřil až na desce. Vyzkoušel jsem napájení z externího zdroje i napájení z desky mikropočítače. Je to stejné. V napájení to není. Na desce není žádná LEDka, která by indikovala, že do modulu jde napětí.
Baterie tam není, protože se tam musí dát dobíjecí baterka a ne normální baterka. Pro normální baterku, jak jsem psal, se musí dělat změny na desce a to se mi nechce. Perspektivně seženu dobíjecí baterku. To znamená nyní je Vbat = 0. Baterkou by to být nemělo, je tam jen kvůli backupu.
Blbý je, že obvod je natvrdo v SMD a nelze obvod vyndat a vyzkoušet jinde nebo nahradit jiným. Teoreticky by to mohl být zmetek.

Arrow Cowley:
adresa je předpokládám standardní, tj. 7-bitová 0x68 , 8-bitová 0xD0. V adrese to není, protože stejný program, ten samý, funguje s jiným DS1307 zapíchnutým v nepájivém poli a se stejným mikropočítačem.
I2C scannery jsou dost pofiderní, mám celkem tři a každý funguje jinak a dává jiné výsledky. Problém je v tom, že I2C je softwarová záležitost a ACK není ze strany Slave vždy generován (třeba na Start, Stop, Restart). Některý součástky ACK generují, většinou ale ne a generují ACK pouze na WRITE.
Mám také I2C monitorovací desku,která monitoruje provoz na I2C a vypisuje hlášky co se na sběrnici děje. Pomocí té jsem zjistil, že modul nereaguje.

_________________
S časem se vše zhoršuje (zákon prof. Parkinsona)
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
lesana87



Založen: Sep 20, 2014
Příspěvky: 4312

PříspěvekZaslal: st únor 04 2026, 14:33    Předmět: Citovat

Datasheet: If a backup supply is not required, VBAT must be grounded.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
RX-20
Doporučuje se dohled moderátorů


Založen: Jun 30, 2024
Příspěvky: 223
Bydliště: střední Čechy u Koněpruských jeskyní

PříspěvekZaslal: st únor 04 2026, 17:06    Předmět: Citovat

Pin Vbat je vyveden na konektor, viz schema nahoře. Na něm, je 0 Volt. I když ten pin uzemním na GND, nezmění se nic. Uzemnění má smysl zřejmě z důvodu zamezení rušení na pinu VBat, protože podle schematu je z Vbat k GND odpor 1M5. Zkratování Vbat ke GND problém s nedostupností obvodu přes I2C neřeší.
Modul jsem dal zpět do sáčku a zavřel do almary. Ztratil jsem tím modulem spoustu hodin. Vytahnul jsem zase nepájivé pole, zastrčil do něj DS1307 a můj software normálně funguje.

_________________
S časem se vše zhoršuje (zákon prof. Parkinsona)
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
RX-20
Doporučuje se dohled moderátorů


Založen: Jun 30, 2024
Příspěvky: 223
Bydliště: střední Čechy u Koněpruských jeskyní

PříspěvekZaslal: čt únor 05 2026, 12:18    Předmět: Citovat

Vrátil jsem se dneska k tomu modulu z GME. Napadlo mne zjistit, zda na něm funguje ta EEPROMka, to je druhý obvod. Zjistil jsem, že funguje. Dá se do ní zapisovat i číst, dokonce při 400kHz.
Pak mne napadlo zjistit, proč teda nefunguje DS1307. Dobral jsem se pomocí analyzátoru k tomu, že po zápisu dat do RTC, obvod neposílá ACK, resp. pošle ale s velkým zpožděním. Je potřeba extra testovat staus ACK.
Otázka je, zda obvod opravdu zapíše data do registrů anebo je sice přijme, ale nezapíše a jen s velkým zpožděním pošle ACK.
Zkusil jsem takto postupně zapsat data do jednotlivých registrů a pak je přečíst. Při čtení dostávám samé 0xFF. To znamení že buďto se data předtím nezapsala, ale RTC poslal s velikým zpožděním ACK.
Anebo se sice data zapsala, ale jsou problémy se čtením v obvodu. Obvod odešle 0xFF, master (MCU) potvrdí ACK atd. Postupně tak do MCU postanu 0xFF ze všech 7 registrů. Otázka je jak zjistit, kde je v obvodu závada.
Tentýž program, ale s jiným DS1307 zapíchnutým do nepájivého pole zapíše data a přečte data bez problémů a to i bez testování statusu ACK.

_________________
S časem se vše zhoršuje (zákon prof. Parkinsona)
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Dumitru



Založen: Dec 11, 2015
Příspěvky: 252
Bydliště: Slovensko,Bratislava

PříspěvekZaslal: čt únor 05 2026, 12:39    Předmět: Citovat

V tom MCU používate hardvérové I2C, alebo máte nejakú softvérovú implementáciu? Z toho, čo píšete o testovaní/netestovaní ACK, mi skôr vychádza, že ide o softvérovú implementáciu.

Tiež celkom nerozumiem, ako si vysvetľujete veľké či malé oneskorenie ACK — a čo vlastne považujete za veľké oneskorenie, keďže ste master a určujete clock.

Sú tieto parametre dodržané? Viď foto



Time.png
 Komentář:
 Velikost:  101.82 kB
 Zobrazeno:  3 krát

Time.png


Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Odeslat e-mail Zobrazit autorovy WWW stránky
Zaky



Založen: Oct 30, 2010
Příspěvky: 6997
Bydliště: Praha

PříspěvekZaslal: čt únor 05 2026, 14:27    Předmět: Citovat

Zcela ideální by se mi jevilo se přímo na signály podívat digitálním osciloskopem. Všelijaké analyzátory nemám dvakrát v oblibě, na osciloskopu je vidět všechno a zde je komunikace jednoduchá.
_________________
Krátce před tím, než se to rozbilo, tak to ještě fungovalo...
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
vaclavpe



Založen: May 16, 2007
Příspěvky: 145
Bydliště: Rožnov p.R.

PříspěvekZaslal: čt únor 05 2026, 17:04    Předmět: Citovat

RX-20 napsal(a):
Dobral jsem se pomocí analyzátoru k tomu, že po zápisu dat do RTC, obvod neposílá ACK, resp. pošle ale s velkým zpožděním. Je potřeba extra testovat staus ACK.

Co to přesně znamená? S jakým zpožděním? Potvrdí device slave adresu 0xD0 během devátého CLK ? Tam neexistuje něco jako zpoždění. CLK dává controller - 7 bitů, pak R/W flag a pak MUSÍ být potvrzeno. Zapsat bajt adresy registru, udělat Repeated Start a poslat 0xD1 - a device to opět MUSÍ potvrdit. A pak už jen controller čte data. Pokud jsou 0xFF, tak bych čekal, že device je odpojené od sběrnice. A controller dává ACK - komukoli, nebo jen naprázdno.

Kmitočet SCL je do 100kHz ?

Dá se udělat fotka z osciloskopu nebo analyzátoru ?
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
RX-20
Doporučuje se dohled moderátorů


Založen: Jun 30, 2024
Příspěvky: 223
Bydliště: střední Čechy u Koněpruských jeskyní

PříspěvekZaslal: čt únor 05 2026, 21:41    Předmět: Citovat

MCU používá softwarovou implementaci I2C. Nemám rád ty softwarový řešení. Ale na MCU tonení. Zkoušel jsem několik různých MCU, od Microchip, také Texas a adaptér USB-I2C. Výsledky jsu stejný.
To "velký zpoždění", udělal jsem to tak, že jsem dal do programu cyklus který odešle zápis adresy a čeká na ACK. Když nedorazí obratem, je tam test stavu sběrnice. Když je test chybný, vše se opakuje v cyklu. Zjistil jsem že RTC obvod potřebuje min. 8, max 14 smyček, než z něj vyleze ACK. Very Happy
Rychlost I2C je samozřejmě 100 kHz. Můžu nastavit i nižší, nezkoušel jsem to, ale myslím že by to asi nepomohlo.
Mám v úmyslu ten obvod vypájet a dát tam nový. Musím koupit nový, ale mne v GME, asi u Mousera. Až budou ve firmě něco objednávat, tak přidám obvod do objednávky a až přijde vyměním obvod na modulu.
Prohlížel jsem pull-up odpory na modulu. Jsou tam 4K7, ne 3K3 jak je ve schematu. Ty odpory jsou společný pro oba obvody na modulu, RTC i pro EEPROM.

_________________
S časem se vše zhoršuje (zákon prof. Parkinsona)
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
vaclavpe



Založen: May 16, 2007
Příspěvky: 145
Bydliště: Rožnov p.R.

PříspěvekZaslal: čt únor 05 2026, 22:38    Předmět: Citovat

Podle popisu to vypadá OK, ale stejně bych nejraději viděl vlnky z osciloskopu. Nemůžou být nějaké časy na sběrnici na limitu ?

Pokud tenhle obvod neumí vyšší rychlosti a nereaguje a jiný umí a reaguje v pořádku (ta EEPROMka většinou chodí až do 1MHz), může to svědčit o nějakém prooblému se setup nebo hold časy na sběrnici.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Zobrazit příspěvky z předchozích:   
Přidat nové téma   Zaslat odpověď       Obsah fóra Diskuzní fórum Elektro Bastlírny -> Programování PIC, ATMEL, EEPROM a dalších obvodů Časy uváděny v GMT + 1 hodina
Strana 1 z 1

 
Přejdi na:  
Nemůžete odesílat nové téma do tohoto fóra.
Nemůžete odpovídat na témata v tomto fóru.
Nemůžete upravovat své příspěvky v tomto fóru.
Nemůžete mazat své příspěvky v tomto fóru.
Nemůžete hlasovat v tomto fóru.
Nemůžete připojovat soubory k příspěvkům
Můžete stahovat a prohlížet přiložené soubory

Powered by phpBB © 2001, 2005 phpBB Group
Forums ©
Nuke - Elektro Bastlirna

Informace na portálu Elektro bastlírny jsou prezentovány za účelem vzdělání čtenářů a rozšíření zájmu o elektroniku. Autoři článků na serveru neberou žádnou zodpovědnost za škody vzniklé těmito zapojeními. Rovněž neberou žádnou odpovědnost za případnou újmu na zdraví vzniklou úrazem elektrickým proudem. Autoři a správci těchto stránek nepřejímají záruku za správnost zveřejněných materiálů. Předkládané informace a zapojení jsou zveřejněny bez ohledu na případné patenty třetích osob. Nároky na odškodnění na základě změn, chyb nebo vynechání jsou zásadně vyloučeny. Všechny registrované nebo jiné obchodní známky zde použité jsou majetkem jejich vlastníků. Uvedením nejsou zpochybněna z toho vyplývající vlastnická práva. Použití konstrukcí v rozporu se zákonem je přísně zakázáno. Vzhledem k tomu, že původ předkládaných materiálů nelze žádným způsobem dohledat, nelze je použít pro komerční účely! Tento nekomerční server nemá z uvedených zapojení či konstrukcí žádný zisk. Nezodpovídáme za pravost předkládaných materiálů třetími osobami a jejich původ. V případě, že zjistíte porušení autorského práva či jiné nesrovnalosti, kontaktujte administrátory na diskuzním fóru EB.


PHP-Nuke Copyright © 2005 by Francisco Burzi. This is free software, and you may redistribute it under the GPL. PHP-Nuke comes with absolutely no warranty, for details, see the license.
Čas potřebný ke zpracování stránky 0.16 sekund