ADC Messen und Spannung ausgeben

Gast #4455770
Servus,

ich arbeite mich in das Thema uC Programmierung in C ein und sieht 
soweit nicht schlecht aus. Ich komme nur bei dem Thema Rechnen mit 
Kommazahlen nicht zu recht.

Ziel: Batteriespannung messen und mit 12.3V vergleichen. Die 
Eingangsschaltung sieht aus wie im Anhang.

Status: Ich lese erfolgreiche den ADC Wert raus. Jedoch stimmt was nicht 
an meiner Formel.

float     Voltage;
uint16_t  Voltage16;

Voltage16 = ADC_Read_Avg(0,10) //Kanal 0, 10x auslesen und durch 10
Voltage = (float)((Voltage16*(5/1024))*6.6);

if (Voltage < 12.3){
    SET_OUT1;
}

Egal welche Spannung ich anlege auch 20V der Output wird immer gesetzt, 
d.h. Voltage ist immer grösser 12.3V.
Kann mir einer sagen was ich falsch mache?

Gruss Thomas
Angehängte Dateien:
Gast #4455833
Verhältnis ist 0,1515 und 1/0,15 ist das gleiche wie 1*6,6.

Teiler: R2/R1+R2

Ergibt 10/10+56 = 10/66 = 0,1515.

Da kann jetzt natürlich auch ein Denkfehler drin sein, wie das immer so 
ist.
#4455856
Naja, das Ganze geht natuerlich auch viel einfacher :

MyInt = ReadADC(); // Integer Wert zwischen 0 .. 1023

if (Myint < Irgendwas){ SET_OUT1; } else {Clear_Out1; }

Und das Irgendwas (integer) kann ich ja mit dem Taschenrechner schnell 
ausrechnen

.. Tsss .. :-)

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 10 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.