2024. április 26., péntek

Gyorskeresés

RTC építés PIC-kel...

Az I2C kommunikációt és egy-két hardveres, szoftveres megoldást szerettem volna kipróbálni, ehhez kerestem feladatot.

[ ÚJ TESZT ]

RTC 7-szegmens kijelzővel-1

Két darab óra is készült. Az egyiket ajándéknak szántam, a másikat pedig magamnak. Az ajándék végül a 7-szegmens kijelzővel készült lett, mivel annál fontos volt a jó láthatóság.

A kapcsolási rajza:

Az óra szíve a PCF8563 mobil eszközökbe szánt RTC csip, az agya pedig a PIC16F886 MCU. A két IC I2C buszon kommunikál egymással (SDA, SCL). A PCF8563-t az MCU az A2h és az A3h címeken éri el.
Bekapcsolást követően az MCU beállítja az RTC regisztereit, azaz az üzemmódokat, illetve még a dátumot is 2014-01-01-re. Erre azért van szükség, hogy az RTC-ben lévő adatok integritása mindig korrekt legyen. A dátumot nem jeleztetem ki, ezért nem is lehet állítani. E miatt viszont egy "hidegindításnál" az RTC belső számlálói teljesen fals értékeket vehetnek fel. Ezt előzi meg ez a művelet.
Természetesen az sem lenne jó, ha egy áramszünet hatására elfelejtené az aktuális időt. A C6-0,33F-os supercap gondoskodik ilyenkor az RTC áramellátásáról. Eleinte gondolkodtam elemben is, de egy elemet néhány évente cserélni kellene, egy ilyen kondenzátort viszont soha. És még a méretei is kisebbek, nagyjából egy kisebb gombelemnek felel meg. Körülbelül 6 perc alatt teljesen feltöltődik és számításaim szerint ~5 napig képes árammal ellátni az RTC-t.
Az MCU-t a saját belső oszcillátora látja el 8 MHz-es órajellel, így egy kvarc beépítése is kispórolható volt. A nyomógombok felhúzó ellenállásait az MCU-ban aktiváltam.

Az óra 9...12V-os adapterről működik. A csipek egy 7805-ről kapnak feszültséget, a 9...12V pedig a kijelzőket hajtja meg.

A kijelző 4 db 1 digites 25mm magas számjegyű, piros és nagy fényerejű típus. FN1-1002L00GW Akár 10 méterről is jól látható.
Működtetése multiplexelt, a közös anódokat tranzisztorok, a szegmenseket pedig egy ULN2003 IC hajtja meg. A percet és az órát a köztük lévő tizedespont választja el, ez viszont nem az MCU-ról kap vezérlőjelet, hanem egy erősítő tranzisztoron keresztül az RTC csip CLKOUT lábáról.
Ez a láb programozható, 1 Hz-től 32.768 Hz-ig lehet ide kitenni órajeleket, illetve kikapcsolható. Ezt a beállítási lehetőséget ki is használtam a szoftverben.
Talán még annyi érdekességet érdemes itt megemlíteni, hogy a szintáttevő tranzisztorokat az emitterükön keresztül vezérli az MCU, ezzel is helyet és alkatrészt takarítottam meg. Igaz, ezzel megfordítottam a vezérlés logikáját, de ezt majd szoftver oldalon kezelem.

A nyomtatott áramkör tervezésekor a helytakarékosság volt a lényeg. Ezért a kapcsolás is folyamatosan változott, ahogy látszott, hogy valamelyik alkatrészt jobb lenne máshová helyezni, vagy az MCU másik lábára kötni. Ezért van egy kis összevisszaság a lábsorrendeknél. De ez szoftveresen úgyis eltüntethető.

A panel egyoldalas. Tartalmaz néhány átkötést, melyek a képen pirossal vannak jelölve. A kijelzők foglalatba kerültek, így kényelmesen elfér alattuk az elektronika.

A kész tervet lézerrel fóliára nyomtattam, majd jöhet a fotózás, maratás:

A cikk még nem ért véget, kérlek, lapozz!

Azóta történt

Előzmények

Hirdetés

Copyright © 2000-2024 PROHARDVER Informatikai Kft.