Also so langsam krieg ich hier die Krise. Ich hab das ganze jetzt so umgesetzt wie du gesagt hast, aber jetzt bekomme ich gar keine Zeichen mehr ausgegeben. Hier der Code ausm Timer:
Ich nehme mal stark an, dass mein Counter t anscheinend nie die eigentlich gewünschten Zahlen erreicht. Sollte ich vielleicht den Voreingestellten Timer, der ja jetzt auf 0,01ms steht auf z.b. mal 10ms sekunden erhöhen? Oder liegt das Problem doch ganz woanders?Code:if(!(PINC & (1<<PC0))) //Kein Impuls==Pause { if(t>78000 && t<82000) { if(dcf!='0') dcf='1'; } if(t>88000 && t<92000) { dcf='0'; } if(t>170000 && t<180000) { dcf_buf[t2]='1'; //ENDEBIT dcf_buf[t2+1]='\0'; t2=0; r='2'; //empfangene Zeichenkette über RS232 senden } if(t>180000 && t<190000) { dcf_buf[t2]='0'; //ENDEBIT dcf_buf[t2+1]='\0'; t2=0; r='2'; //empfangene Zeichenkette über RS232 senden } t++; //Timer inkrementieren } else //Impuls==timer zurücksetzen { if(dcf=='0' || dcf=='1') //Wenn Zeichen empfangen { dcf_buf[t2]=dcf; //empfangenes Zeichen in zur Zeichenkette hinzufügen dcf_buf[t2+1]='\0'; t2++; //eine Stelle weiterrücken } t=0; //Timer zurücksetzen }
Gruß
cesupa







Zitieren

Lesezeichen