Hallo,
hab jetzt mal den Fehler in meinem Timer behoben. Jetzt läuft die ISR wirklich mit 10ms
Ich lasse mir grad ein paar Werte ausgeben, unzwar mit folgendendem Code, der in der ISR steht:
Wenn ich das laufen lasse, erhalte ich ziemlich viele Einsen, jedoch nur recht wenig Nullen(Also hin und wieder mal eine Null zwischen zwei einsen). Ab und zu erscheint auch mal eine längere Folge an Einsen, aber größtenteils erhalte ich solche folgen wie: "01010101..." -Muss das so sein?Code:if(!(PINC & (1<<PC0))) { if(t>70 && t<85) { if(dcf!='1') dcf='1'; } if(t>85 && t<95) { if(dcf!='0') dcf='0'; } if(t>172 && t<183) { if(dcf!='1') dcf='1'; if(start!=1) start=1; } if(t>183 && t<192) { if(dcf!='0') dcf=0; if(start!=0) start=0; } t++; } else { t=0; //Timer zurücksetzen t2=1; //Empfangenes Zeichen an PC senden }
Desweiteren empfange ich nie ein ENDEBIT, woran kann das liegen?
Gruß
cesupa







Zitieren

Lesezeichen