dcf77 + gcc + problem ´:/

Gast #1492398
Lesenswert?

hi,

ich versuche gerade ein dcf77 empfänger mithilfe eines atmega8 
auszulesen...

das problem fängt leider schon bei der hardware an...
das empfänger modul ist aus einem billigen wecker und ich bin mir nur zu 
99% sicher das es richtig angeschlossen ist :/

gestern hatte ich glaube ich schonmal einen richtigen 
empfang...jedenfalls hat er mir im sekunden takt einsen und nullen auf 
einem lcd display ausgespuckt..
und beim min umsprung konnte man die verzögerung bedingt durch das 
fehlende bit merken...

dummerweise lässt sich der erfolg nicht mehr reproduzieren :/

sei es weil ich den code etwas verändert habe oder weil das verfluchte 
ding auf jede art von störung mit müll reagiert
das ist echt ne qual....

hier der code
ja, die delays werden irgendwann durch interrupts und counter 
ersetzt...
die lcd_*** funktionen funktionieren

1
#define down   !(PINB & (1<<PB1))
2
#define up     (PINB & (1<<PB1))
3

4
main()
5
{
6

7
char out;
8
lcd_pwrup();
9

10
DDRB = 0x00;
11

12

13
for(int i=0;1;i++)
14
{
15
    while(down);
16
    
17
    _delay_ms(150);  //prüft ob 100ms oder 200ms signal
18

19
    if(up)     {out='1';}   
20
    if(down)   {out='0';}
21

22
    lcd_senddata(out);
23
    
24
    if(i==16) {lcd_choporder(1); i=0;}
25

26
    _delay_ms(80);  //überbrückt die immernoch 1 zeit damit   die while(down) nicht direkt übersprungen wird
27
  
28
}
29

30
}


das problem äußert sich folgendermaßen...auf meinem schreibtisch fliegen 
die nullen nur so übers display...
> erklärungsversuch: monitor und andere pc strahlung

auf der fensterbank tut sich garnix
> keine ahnung?

berühre ich die antenne ist das signal dauerhaft null und dadurch 
bedingt bleibt das programm in der while(down) hängen...
>deutet für mich schonmal daraufhin das es nicht ganz falsch angeschlossen >ist

die platine hat 4 anschlüsse
G - definitiv ground..auf der pcb sichtbar
P - an aus schalter (nicht sicher)
T - ausgang (nicht sicher)
V - ziemlich sicher die versorgungsspannung




gruß
#1492404
Lesenswert?

Erster Test sollte ein Programm sein, das das Signal direkt wiedergibt. 
Also beispielsweise direkt und verzögerungsfrei den Pinzustand auf eine 
LED gibt.

Dann kann man auf einfachste Art sehen, ob mit dem Signal überhaupt 
etwas anzufangen ist. Antenne drehen, Störquelle finden, ...

4 Pins haben beispielsweise die Module von Pollin und Reichelt. Der 
vierte ist ein Reset, und ohne Reset am Anfang läuft nichts.
Gast #1492431
Lesenswert?

>Erster Test sollte ein Programm sein, das das Signal direkt wiedergibt.

hmm das mache ich ja im prinzip
ob ich jetzt eine led blinken lasse oder eine 1 oder 0 in eine variable 
schreibe, müsste doch eigentlich egal sein.

>4 Pins haben beispielsweise die Module von Pollin und Reichelt.
jo anhand denen habe ich mich bei der identifizierung der pins gerichtet

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren