Hallo Leute,
sory das ich jetzt erst schreibe aber konnte nicht schneller.
Damit stimmt es schon fast also die die Gemessen 2,x Volt scheine wohl zu passen aber es kommen immer 10 volt raus mein multi meter zeig aberCode:WORD Result = 0; float Volt = 0; float Teiler = 5.2941; CLEARBIT(ADCSRA,ADEN); // aus schlaten damit ich den port wechseln kann // Messen an port 6 CLEARBIT(ADMUX,MUX4); CLEARBIT(ADMUX,MUX3); SETBIT(ADMUX,MUX2); SETBIT(ADMUX,MUX1); CLEARBIT(ADMUX,MUX0); SETBIT(ADCSRA,ADEN); // Bit invertieren messung starten ADCSRA |=_BV(ADSC); waitforad = 1; // warten bis messung abgesclossen ist und wert gültig while(waitforad != 0) { //warten auf den adwandler; }; // den wert aus dem register holen char buffer2[20]; SendString("Messe :"); Result = ADCH*256 + ADCL; itoa(Result,buffer2,10); SendString(buffer2); Volt = ((Result * 5)/ 1023)*Teiler; // Berechnung Volt gemessen bei Ref von 5V SendString("Volt :"); itoa(Volt,buffer2,10); SendString(buffer2); if(Volt > 11) { if(Volt >=12) { if(Volt >= 13) { SendMCData(2,100); // frisch geladen } else { SendMCData(2,50); // Bat OK aber bald } } else { SendMCData(2,20); //fast leer } } else { SendMCData(2,0); // Batt ist leer }
11.8 Volt an und jetzt ?
Gruß







Zitieren

Lesezeichen