Fórum témák
» Több friss téma |
egy regebbi cikkedben a DCF modul a PIC-hez 1 tranzisztoron keresztul kapcsolodik ,nem lenne jobb a vetel ha itt is igy jarnank ell ?
A vételbe nem számít bele. Ott annál a kapcsolásnál azért volt a tranyó, mert nem mindegyik régebbi modul volt relatíve nagyobb áramot elviselő open-collector.
Engem meglepett, hogy tobben is panaszkodtak a veteli viszonyokrol . En 600 Km-re keletebbre vagyok Bp.-tol, ezelott 18-evel kaptam 1 ebresztoora Funkweckert csak akkora mint 1doboz cigaretta , noname ( tehat semmi gyarto nem szerepel rajta ) es azota is tokeletesen mukodik soha nem volt veteli problemam most utobb 1 Duracel elemmel mar3-eve megy. barmilyen helyzetben barhol a lakasban.
hello
lenne par kerdesem az oraval kapcsolatban. Eloszor is a pic-el kapcsolatban a hqvideonal van egy ilyen tipusu pic de pic ha jol ertelmezem akkor ez 4mhz-es a kapcsolasban pedig 20 mhz-es van ?A picnek mi a pontos tipusa? A conrad fele dcf modul nem invertalo kimenetet kell a picre kotni? Illetve a homero reszt esetleg lehet boviteni egy masodik taggal mondjuk hogy a kinti homersekletet is mutassa? Arra gondoltam hogy egyszer a bentit egyszer a kintit mutatna az ido utan es akkor nem kellene a programban modositani csak valami kapcsolo kellene ami egyszer az egyiket egyszer a masikat kapcsolja a picre. elore is koszi a valaszokat.
A napokban láttam a conrad.de-én a DCF77-es módúl csak 10 euro Budapesten 4000 Ft ?
hello
ismet kerdznek bar az elozoekre sem kaptam valaszt de remenykedek. szoval a pic programozasnal van egy kis gondom mert verifyng faild at 0000h hiba uzenet jelenik meg a programozas vegen.Ez mit jelent ?mi a megoldas? köszi elore is.
Ez azt jelenti, hogy egyetlen byte-ot sem sikerult neki beirni. Ha egy darab szappant teszel a vegere, akkor is ezt kapod
Szoval ez kb 'az auto nem mukodik, mi lehet a baja' tipusu kerdes. Lehet tapellatas, lehet erintkezesi hiba, lehet programhiba, lehet programozofeszultseg hiba, lehet a pic nem megfelelo bekotese/erintkezesi hibaja, stb. Millio lehetoseg. A pic tipusa mar a linken is rajta van, ha az oldal bejon, akkor is ott van: 16F873
ok
de 2 nappal ezelott programoztam ugyan igy a propeller clock picjeit es ott semmi gond nem volt es azota nem erte serules . vegig merem a feszultsegeket a pic labain aztan meglatjuk. a pic tipusa rendben hogy 16f873 csak amit linkeltem az 4 mhz-n mukodik es ebben a kapcsolasban pedig 20mhz kvarc van ezert kerdeztem hogy mi a pontos tipus de ez kozben mar megoldodott 16f873a-i/sp let.
vegig mertem a labakat kap tap feszt meg prog feszt is ugyh nem ez a gond.
kiprobaltam 16f628 al is azt gond nelkul programozta.
megoldodott a pic problema.olvastam egy kulfoldi oldalon hogy az ujabb verzioju icprog nemelyik pic programozasakor bugos.ugyh letoltottem az 1.05c verziot es azzal mar ment.
Viszont az ora meg mindig nem mukodik.Bekapcsolas utan mit kellene latni? Panhard tervei alapjan epitettem annyi valtozas van benne hogy a bc556es557 helyett 327 es 337 es tranzisztorok vannak benne. Illetve a kijelzo 3" es 11v kellene neki viszont csak 8v koruli erteket merek az anod es katod kozott. Nalam bekapcsolas utan csak az elso kijelzo vilagit de csak halvanyan es egy ideig egy 2-est ir utana meg 3 szegmens vilagit. Szoval egyreszt tobb fesz kellene a kijelzokre illetve nem ertem hogy a tobbi kijelzo miert nem csinal semmit?
Sikerult mukodesre birni az orat viszont a szinkronizalas nekem sem megy.
Mindent kiprobaltam amit itt irtatok kicsereltem az anntenna vezeteket coaxra,probalgattam a felhuzo ellenalasokat valtoztatni,megfelelo iranyba tartani az antennat de semmi sem tortenik. Viszonylag egyenletesen villog a led illetve az utolso kijelzon a pont ugyanugy villog.Egyszer sikerult egy rossz idot befognia illetve neha neha lenullazodik a masodperc tobbszor is egymas utan de semmi tobb.Ja es az elmult 5 napban folyamatosan ment az ora. Van meg valami amit nem probaltam?
Üdvözlet az Olvasóknak!
Vásároltam magam is egy DCF modult. Első körben összeraktam a PIC16F84-es „alap” kapcsolást és a topicban részletezett zavarforrásoktól távol próbáltam ki. Az áramkör sikeresen, max. kb. 3 percen belül szinkronizált és tartotta a szinkront még az utóbbi, zivataros napokban is. Ezt azonban csak próbának szántam, hogy felmérjem távolabbi céljaimra egyáltalán használhatóan működik-e a modul… Következő lépésként egy PIC18F2520-assal, egy RTC-vel szintén egy LCD-s kapcsolást készítettem. Nem volt szándékomban DCF dekódoló rutint írni. Keresgélve Topi cikkében találtam meg azt, ami nekem kellett. (Kösz Topi!) A programot saját igényeimre alakítva azonban a várt eredmény elmaradt, ezért „belemerültem” a dekódolás működésébe. (Szerencsére a cikkben és a programban is egyszerű és érthető a folyamat.) Úgy találtam, hogy a „DCF77 dekódoló unit” dcf77_alt_decode függvényében a paritás bitek ellenőrzéséhez a beérkezett 1-es bitek összeszámolása nem megfelelően történik. Az eredeti kód egy része, pl. így néz ki:
A ParityOK változó közli a program további részével, hogy a vett bitek paritás-ellenőrzése rendben volt. A b változó a vett bit állapotának megfelelően 1, vagy 0. A parity_cou változóban számoljuk az ellenőrzéshez az 1-es értékű biteket. A 3. sorban látható, hogy a perc kód 0. bitje (a 21.-nek beérkezett), b-nek megfelelő állapotot veszi fel. Ezután történik az első hiba, ugyanis ennek a bitnek az értékét vagyis, hogy 1-es-e nem vizsgáljuk, így nem is számoljuk a parity_cou változóban, helyette a változót nullázzuk. (Ugyanez a helyzet az óra és a nap kódjának 0. bitjével is.) A következő (22-nek érkező) bit értéke már ellenőrzésre kerül és értékének megfelelően változik a perc értéke. A bit számbavétele azonban ismét hibásan történik, ugyanis a parity_cou növelése minden esetben, a b értékétől függetlenül megtörténik. Így pl. a perc kódjának vétele végén, függetlenül a vett 1-es bitek tényleges számától a parity_cou értéke mindig 6. Szóval a sok magyarázat után a megoldás a helyes működéshez a feltételes utasítás után az adott időérték változtatását és a parity_cou növelését egy blokkba kell foglalni, valamint a 0. bitet is ellenőrizni és számolni kell kb. így:
A „megpiszkált” teljes unitot mellékelem. A sikertelen kísérletezgetéseimet azonban a fenti módosítás nem oldotta meg. Hosszas nyűglődés után kiderült, a fő unit main függvényének for-jában elhelyezett 10 ms-os késleltetés (delay_ms(10)) megakadályozza, hogy a jelre ráméréskor a b változó a megfelelő értéket megkapja. (Lehet, hogy ez csak egyedi probléma és csak az én áramkörömben jelentkezik) Ezt a sort kiírtva már tökéletesen működik a kütyü, néhány perc alatt megtörténik a szinkronizálás. Még egyszer: köszönet a szerzőnek!
Hát igen... A nyílt forráskód előnye!
Köszönöm mások nevében is a korrekt levezetést. Lehet hogy egy olyan firmware hibára mutattál rá, ami nálam a környezet miatt nem jött elő a mai napig sem. -- Topi
Sietek is leszögezni, hogy ez a módosítás (bitszámlálás) a helyes adatvétel ellenőrzését javítja, és könnyű belátni, hogy ez nem akadálya a program helyes működésének, ettől még a szinkronizáció megtörténhet.
Ami érdekesebb számomra, az 10 ms-os késleltetés zavaró hatása... Ráadásul 20MHz-en a késleltetés eltávolítása sem oldotta meg a problémát, 4 MHz-en viszont igen.
Szia
Végigolvastam a cikket és a fórum hozzászólásokat is, de sehol nem találom hogy a PIC melyik lábain jelenik meg a 6 darab kijelző digit kivezetése, és a 7 szegmens kivezetések. Tehát pontosan melyik láb az a,b,c,d,e,f,g szegmens. És a 74164 IC melyik kimeneti lábán a 6 digit. Az óriás órám müködik csak a vezérlését szeretném ezzel a kapcsolással kiegésziteni. Csatolok egy képet a nem DCF órámról. Elöre is köszönöm
Helló Topi!
Látom protelbe tervezted a nyákokat. Ha nem nagy kérés fel tudnád tenni zipbe a protel fájlokat (sch, pcb) Köszi, előre is
Ez eagle.
Üdv mindenkinek!
Én is találtam a linkek között egyet. DCF77-es időkapcsoló óra PIC16F876-al-kérdésem nekem is az,hogy épített-e már valaki ilyet? Üdv!
Üdv Topi!
Most készülök megépíteni az órád! A problémám csupán annyi, hogy nekem semmi szükségem a hőmérséklet mérésére (és amellett Szegeden nehézkes is a DS1621 beszerzése). Szeretném kérdezni hogy ha egész egyszerűen nem rakom rá ezt az IC-t akkor mi történik? Akkor 6mp pontos idő, aztán 3mp nagy semmi, vagy valami kamu értékek? De ha esetleg elküldenéd nekem mail-ben az .asm file-t akkor gondolom ki tudnám iktatni belőle...?
Sziasztok!
Most kezdetm PICezni, megépíteném az órát. Az lenne a kérdésem, hogy egy szegmens közös lába pont akkor kap vezérlést amikor a kijelző lábán megjelenik az adat, vagy ha van is egy kis eltolódás, az mekkora és számít e? Mitől függ, hogy a dcf jel hosszának mérése pont akkor fog elindulni, amikor a felfutó él van a B0 bemeneten? A kódban a 150ms-ként hívódik meg a B0 lekérése. A kijelző nem fog villogni ha van egy megszakítás (pl kijelzés közben beesik a timer2 int-je), mindíg pont ugyan annyi időközönként fut le a DisplayTime()? Előre is köszönöm a segítséget!
Ó én balga, most esett le hogy azért nem találok .asm file-t mert c-ben írtad... Eddig csak assembly-vel próbálkoztam és c-vel nem foglalkoztam egy másodpercet sem, de hála az interneten fellelhető tananyagoknak, előbb-utóbb csak kitalálom hogy mivel üssem ki a hőmérést...
Ha kettőt vissza lapozol...
Bővebben: Link
Na most jól beégtem, pedig nagyjából átfutottam hsz-eket hogy ne járjak így, de már éjszaka nem igazán voltam toppon... Köszönöm szépen hogy szemem felnyitván rávilágítottál a megoldásra.
És ismét köszöm neked a bináris órát, már jó ideje gond nélkül itt ketyeg a polcon!
Na, hőmérséklet megoldva... helyette új problémám van. Az LRD-ből mekkorát raktatok bele, mert látom többféle induló és záró értékű létezik.
És még egy kérdés, csak azért mert mindig akad valami... a DCF modulnak az invertáló vagy a nem invertáló kimenetét használtad?
Mondtam hogy nem fogynak el a kérdések...
A teljesen kész órának hány mA a maximális fogyasztása? Mert gondolkodom rajta hogy dugasztáp helyett inkább tennék rá egy nyáktrafót és közvetlenül a hálózatról táplálnám. |
Bejelentkezés
Hirdetés |