Multiplikation und Division mit pbp

K

klemm

Guest
Hallo, wie ich diese Formel in pbp schreiben können: Volt = INT (5.0/1024 * volt1 * 1000) Dank Klemm
 
Ich weiß nicht viel über Basic, aber es ist in der Regel besser nach rechts als Kluft zu verschieben, vor allem wenn man durch eine Potenz von 2 teilen. Shifting ist nicht so anspruchsvolle Aufgabe als Bereichsleiter. 1024 ist das gleiche wie 2 ^ 10 so statt der Teilung von 1024 sollte man rechts zu verschieben 10-mal. Sie sollten auch nicht alle Multiplikationen vor der Teilung, um Rundungsfehler zu minimieren. In C wäre in etwa so aussehen: Volt = ((5 * 1000 * volt1)>> 10), oder einfacher: Volt = ((5000 * volt1)>> 10);
 
Zuerst muss ich sagen, dass ich nichts über PBP wissen ... Ich nehme an, Sie wollen die Spannung von einem Wert von einem 10-Bit-DAC Pic gemessen berechnen? Wenn PBP hat einen Datentyp, der mindestens zu halten, kann 640.000 (also 3 Byte) Ich würde es so machen: Volt = (volt1 * 625) / 128 A Division um 128 könnte als eine Verschiebung der Wert 7 Bits, die getan werden rechts, kann keine Ahnung, ob PBP tun. Nur eine kurze Notiz: Sie werden nie erreichen den Wert von 5000, als die maximale Wert, den Sie aus dem DAC erhalten, ist 1023 (oder 0x3ff) ... best regards
 
Dann wird der beste Weg wäre, wie dies zu tun: Volt = ((625 * volt1)>> 7); Das ist C-Sprache. >> 7 menas rechte Shift-7-mal. Ich weiß nicht, wie dies in BASIC zu schreiben, aber vielleicht können Sie dies selbst herausfinden.
 

Welcome to EDABoard.com

Sponsor

Back
Top