Hallo,
Ich arbeite derzeit an einem Ladegerät mit 8 USB Ausgängen. Dieses Ladegerät wird gespeist von einem Bleiakku oder auch direkt von einer Solarzelle. Läuft die Schaltung über den Akku ist es wichtig das nur ein USB Port gleichzeitig aktiv ist. Der Akku liefert nur eine begrenzte Stromstärke. Die USB Ports werden vom Mikrocontroller via P-Kanal Mosfets gesteuert. Die Steuerung ermittelt anhand der Stromstärke wann ein abgeschlossenes Gerät voll geladen ist und wechselt dann auf einen anderen USB-Port. Deshalb verwende ich einen ADC Kanal für die Strommessung und einen anderen für die Spannungsmessung.
Nun ist mir aufgefallen das er den Strom korrekt misst aber auf zu niedrige Spannung gar nicht reagiert. Selbst wenn ich den ADC Kanal auf GND ziehe schaltet er nicht ab.
Der ADC läuft im "Single Conversion Mode" mit 62.5Khz. Die entsprechenden Register setze ich zu Beginn des Programmes. In den Abfrageroutinen schalte ich nur ADMUX auf den gewollten Kanal und dann ADCSRA.6 ein damit die Wandlung beginnt.
Ich warte nach dem ADMUX Kanalwechsel sogar noch 10ms und schalte die Wandlung dann erst ein aber trotzdem scheint ein falscher Wert gemessen zu werden. Ich habe des Problem bisher dadurch gelöst daß ich zwei Mal konvertiere also den ersten Wert verwerfe. Nur bei anderen Chips funktioniert es auch ohne doppelt messen und ohne 10ms Pause direkt auf Anhieb richtig zu messen.
Gibt es denn bei den Attiny44 eine Besonderheit weswegen das hier nicht so funktioniert?
Freundliche Grüße
PS: Ich kann auch bei Bedarf das Programm hochladen.