Fórum témák

» Több friss téma
Fórum » DCF77 óra Nixie-csövekkel
 
Témaindító: Gipszi Jakab 2, idő: Szept 15, 2006
Lapozás: OK   252 / 252
(#) Hp41C válasza yodee hozzászólására (») Aug 19, 2021 /
 
A Mülle-2 ellenőrzi:
- az 59. másodperc időzítését, ez adja a szinkront,
- az egyes bitek időzítését
- a dátum, idő paritás bitjét.
A paritásos ellenőrzés miatt páros számú bithibát nem veszi észre.
Nagyban javítható a vétel minősége a DCF77 vevő modul tápjának szűrésével.
(#) Gafly válasza yodee hozzászólására (») Aug 19, 2021 /
 
Ahogy nézem a driver kódot, csak paritás ellenőrzés van benne.
Ha azon átment, akkor ész nélkül felülirja az időt.
Idézet:
„/* if new DCF77 data is received and the data is valid */
if (dcf77_newdata() != FALSE)
...”

Német a srác, ott biztosan jobb a vétel, mint nálunk...
A paritás ellenőrzés csak egy bithibát tud jelezni.
Én bevárnék több táviratot, és csak akkor fogadnám el, ha konzisztens (mondjuk 3 egymást követő percben rendesen lépkednek az értékek). Persze igy sokkal többet kell várni a szinkronra...
(#) yodee válasza Gafly hozzászólására (») Aug 19, 2021 /
 
Ez lenne a teljes kód. Mivel így kaptam készen, és nem tudom mit is kellene módosítani tudnátok segíteni ebben nekem? Nagyon megköszönném.

dcf77.h
    
(#) yodee válasza Hp41C hozzászólására (») Aug 19, 2021 /
 
Bocsánat, erre meg elfelejtettem válaszolni. A Mule-2 kódját sajnos nem ismerem és itt sincs fent ha jól tudom. Táp szűrésre a mellékelt "öcsi-panel" van használatban.

1.JPG
    
(#) Gafly válasza yodee hozzászólására (») Aug 19, 2021 /
 
Én valahogy igy csinalnám:
  1. dcf77_newdata érkezett:
  2.         DCF_DATA tömbben minden sort előre léptet.
  3.         DCF_DATA tömbben utolsó sorba az új adatot beir.
  4. Ezután DCF_DATA tömb sorok ellenőrzése:
  5.         - Ha az eltárolt adatsorok között van TRUE és olyan,
  6.         ahol a következő időérték nem nagyobb (pontosan egy perccel, ha nagyon precizkedünk),
  7.         akkor szinkronizálunk és növeljük a SIGNAL_QUALITY számlálót.
  8.         - Minden egyéb esetben nem szinkronizálunk, és csökkentjük a SIGNAL_QUALITY számlálót.
  9. Főciklusban automatikusan számoljuk és kijelezzük az időt (szinkronizálástól függetlenül!), és a vétel minőséget (opcionális).
(#) Gafly válasza Gafly hozzászólására (») Aug 19, 2021 /
 
nem nagyobb -> nagyobb
(#) yodee válasza Gafly hozzászólására (») Aug 21, 2021 /
 
Köszönöm az ötletet, fontolóra veszem.
(#) yodee válasza Hp41C hozzászólására (») Szept 13, 2021 /
 
Galfy:

Agyaltunk a Haverral, aki segít a progam tökéletesítésében. Ennyire komoly, tömbös megoldást Ő feleslegesnek tart, így ezt félre tesszük, de nagyon szépen köszönöm az ötletet.

Hp41C:

Tudnál nekem segíteni a Mule2 dcf vevő kódjával kapcsolatban? Mennyire publikus?

Köszönöm
(#) Hp41C válasza yodee hozzászólására (») Szept 13, 2021 /
 
A DCF jelből másodpercenként 50 -szer vesz mintát, a minták alapján keresi a szinkront, ha az megvan a 1 és 0 mintának megfelelő szélességű impulzusokat. Hibás szélességű impulzus esetén újra a szinkronizáló mintát keresi.
A hozzászólás módosítva: Szept 13, 2021
(#) yodee válasza Hp41C hozzászólására (») Okt 14, 2021 /
 
Köszönöm szépen! Eesetleg egy kódot nem tudnál küldeni?
(#) Hp41C válasza yodee hozzászólására (») Okt 14, 2021 /
 
Aki keres, az talál.
(#) yodee válasza Hp41C hozzászólására (») Okt 14, 2021 /
 
Ez szuper, de sajnos nekem C-ben van a program ez meg ha jól látom assembly
(#) Hp41C válasza yodee hozzászólására (») Okt 14, 2021 /
 
Nem egy ördöngösség...
ASM:
  1. lDCF77                                                          ; DCF77 decoding stuff
  2.                 movf    PORTB,w                         ; Digital filter of PORTB bit
  3.                 movwf   FSR
  4.  
  5.                 btfss   FSR,bDCF77inp
  6.                 decf    DCF_temp,f
  7.                 btfsc   FSR,bDCF77inp
  8.                 incf    DCF_temp,f
  9.  
  10.                 decfsz  DCF_20ms_cnt,f          ; Time base for DCF77 decode
  11.                 goto    lTMR2EXIT
  12.                 movlw   .100                                    ; .100 * .200 uS = .20 ms
  13.                 movwf   DCF_20ms_cnt


C:
  1. temp = PORTB;
  2.   if (temp & DCF77inpMask) DCF_temp++; ELSE DCF_temp--;
  3.   if (--DCF_20ms_cnt)
  4.   {
  5.     DCF_20ms_cnt = 100;
  6.     DCF77Dec();
  7.   }
(#) MrBrown hozzászólása Ápr 3, 2022 /
 
Sziasztok,
Olyan nixie csövet szeretnék üzembe helyezni amiről lekopott a típusszám.
A step up konverterem 170V-ot szolgáltat, ez eléggé univerzális érték nixie-s körökben, így annyit tettem, hogy elkezdtem berakosgatni anódellenállásokat 47Kohm-tól lefelé és mértem az anódáramot.
33Kohm-al 1,3mA-re adta ki és a karakterek rajzolata is jó volt, így maradnék ennél ha nincs ellenvetés
Non-multiplex üzemmódról beszélünk.
köszönöm.
(#) Bakman válasza MrBrown hozzászólására (») Ápr 3, 2022 / 1
 
Maradhat. Akkor van gond, ha túlságosan parázslik a karakter.
(#) yodee válasza MrBrown hozzászólására (») Ápr 3, 2022 /
 
Esetleg egy kép a csőröl?
(#) MrBrown válasza yodee hozzászólására (») Ápr 3, 2022 /
 
Kb. ITT B5853S, de nem biztos. Ezek mind egyformák
Meg abból indulok ki, hogy ha szépen rajzol és nem folyik túl nagy áram akkor baj nem lehet (remélhetőleg).
A hozzászólás módosítva: Ápr 3, 2022
Következő: »»   252 / 252
Bejelentkezés

Belépés

Hirdetés
Lapoda.hu     XDT.hu     HEStore.hu
Az oldalon sütiket használunk a helyes működéshez. Bővebb információt az adatvédelmi szabályzatban olvashatsz. Megértettem