pariteitscontrole in PICbasic bij DCF77

Hallo beste lezers(essen)
Ik ben een nieuwkomer in deze materie en ben bezig met een klok
op het DCF-signaal volgens het programma van Fits Kieftenbelt.
Omdat ik graag begrijp waar ik mee bezig ben, zoek ik iemand die
mij uit kan leggen hoe de pariteitscontrole in dit programma wordt gerealiseerd.
Ik heb wel een paar regels gelezen If pariteitsbit = on Then pariteitserror = True , maar dat vind ik iets te kort door de bocht.
Aan de zendzijde wordt bepaald of het pariteitsbit een 1 of een 0
moet zijn.
Aan de ontvangzijde mis ik de controle op de ontvangbyte hoeveel
bits met waarde 1 er zijn.
Het is goed mogelijk dat ik iets over het hoofd zie, maar dat hoor ik dan graag van U.
Groeten,
Piet.

Ja de variabelen hebben zeer warrige namen, Paritybit is eigenlijk een tellertje en die moet dus op 0 uitkomen. De echte Paritybit is natuurlijk de 9e bit na het ontvangen van een byte (8 bits).

" ParityBit = ParityBit + ReceiveBit ;Bit, thus 0+0=0 / 0+1=1 / 1+1=0 / 1+0=1 On the end you can see if it is even or uneven"

Paritybit(Teller, ik noem hem P) begint met 0 en dan ontvang bijvoorbeeld een byte (linker kolom, de teller helemaal rechts):
P=0
0 P=0+0 = 0
1 P=0+1 = 1
0 P=1+0 = 1
0 P=1+0 = 1
0 P=1+0 = 1
1 P=1+1 = 0
0 P=0+0 = 0
1 P=0+1 = 1

Klaar met databyte, nu nog de echte Paritybit ontvangen:

1 P=1+1 = 0

P=0 , de teller is totaal "even" dus geen error. de echte paritybit was 1 om de teller even te maken.

Frederick E. Terman

Honourable Member

Klopt; de pariteit wordt bijgehouden in subroutine 'OntvangEenBit'.
(http://www.picbasic.nl/downloads/DCF16NLD_V-2.bas)

Alleen gaat het hier natuurlijk niet over bytes. Er zijn drie pariteitsbits voor 35 databits:

P1 over bit 21..27 ( 7 bits); minuten
P2 over bit 29..34 ( 6 bits); uren
P3 over bit 36..57 (22 bits); dag etc.

Keramisch, kalibratie, parasitair: woordenlijst.org

Hallo, K7Jz en Frederick E. Terman.

Hartelijk dank voor jullie snelle reactie.
Met name de uitleg van K7Jz was voor mij zeer verhelderend.
Nogmaals hartelijk dank.

Groeten,
Piet.

big_fat_mama

Zie Paulinha_B

Beste Piet,

Aan de discussie ten gronde had ik nooit iets kunnen toevoegen, en dat lijkt ook niet meer nodig. Maar ik steek u graag een stevige pluim op de hoed voor uw beleefde afsluiter, en nog meer voor uw vlekkeloze Nederlands. Hulde!

hoe beter de vraag geschreven, zoveel te meer kans op goed antwoord

Slijmert :-)

Pariteit is niets anders dan het aanvullen van de reeks ontvangen bits tot een even of oneven aantal. Bij even pariteit: als de data 7 enen bevat, moet er 1tje bij om het even te maken -> parity bit = 1. Op zich maakt het niets uit of het over een byte gaat, of over een hele reeks losse bits zoals bij DCF77.

TS, je had het nut van die parity wel begrepen?

(info was voor TS, mama)

"We cannot solve our problems with the same thinking we used when we created them" - Albert Einstein
big_fat_mama

Zie Paulinha_B

;)

je had het nut van die parity wel begrepen?

Jawel, dankje. ;)

hoe beter de vraag geschreven, zoveel te meer kans op goed antwoord