Im Anhang ein etwas anderer Weg, einen Wert z.B. vom ADC umzurechnen und auszugeben. Die erste Tabelle ist z.B. für einen 10-Bit-ADC 1024 Words lang und beinhaltet -falls gewünscht- die Linearisierung und eine Vorumwandlung in Digits. Aufbau z.B.: für 0..39999: 2 Bits 10000er 7 Bits 100er 7 Bits 1er z.B. für 0..79998: 3 Bits 10000er 7 Bits 100er 6 Bits 1er (nur gerade Werte) Auch Vorzeichen ist möglich. Fullscale kann nach Belieben 3.2968, 3.3000, 4.9951, 5.0000 oder ein anderer Wert sein. Die zweite Tabelle könnte durch Software ersetzt werden und beinhaltet die Umwandlung von 7bit nach 2 Digits. Vorteile: - sehr schnelle Routine, nur ein paar Tabellenzugriffe. - Linearisierung möglich z.B. NTC -> Temperatur Nachteil: rel. lange Tabelle im PROGMEM Viel Spaß Kommentare erwünscht!
@ eProfi (Gast)
>Kommentare erwünscht!
Naja, schon ganz nett, aber in den meisten Fällen wohl unnötig. Wenns um
Geschwindigkeit geht, speichert man die rohen ADC-Daten und rechnet
offline um. Und für eine User-Ausgabe breucht man keine superschnelle
Tabelle, da reicht ein direkte, kompakte Umrechung. Wo also wäre die
Anwendung?
MFG
Falk
Hallo Falk, danke für Deinen Beitrag, mich hat halt die Doppel- oder sogar Dreifachfunktion (Linearisierung, Umrechnung (Skalierung) und BCD-Wandlung) der Tabelle gereizt. Wollte nur mal zeigen, dass es auch anders (unkonventionell) geht. Noch ein Nachtrag zum besseren Verständnis: Aufbau z.B.: für 0..39999: 2 Bits 10000er 7 Bits 1000er und 100er 7 Bits 10er und 1er Immerhin hat es bisher 101 Leute interessiert.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.