mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Bascom: Single zu Word konvertieren


Autor: jojansen (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Moin,
ich habe gerade ein Problem mit folgendem Codeschnipsel:

dim s as single
dim W as word

W = int(S)

Bascom ist der Meinung, daß es bei "W = Int(s)" ein Assignment error 
gibt.
Wie kann ich am sinnvollsten eine Single in ein Word umwandeln? Darum, 
daß der maximale Wert der Single den vom Word nicht übersteigt, sorge 
ich schon.
Letztendlich will ich einen vom ADC gemessenen Wert mit dem Produkt 
einer Berechnung vergleichen.
Ideen?
:-) Johannes

Autor: Steffen Warzecha (derwarze)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hmm, soweit ich mich erinnere geht das in Bascom einfach mit W = s. 
Dabei werden die Nachkommastellen weggeworfen.

Wozu eigentlich die Singlevariable? Mach doch die Rechnung komplett mit 
WORD-Variablen.

Autor: jojansen (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hier mal der Schnipsel etwas ausführlicher:

dim s as single
dim umin as single
dim wumin as word

S = 10 / 1024
S = Umin / S
Wumin = S     alternativ: wumin = int(s)

Ich habe woander schon gelesen, daß das Umwandeln eigentlich kein 
Problem sein sollte, aber bei mir funktioniert es nicht.
:-) Johannes

Autor: jojansen (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich mag es ja fast nicht sagen, aber bei der Variablendeklaration hatte 
ich einen klitzekleinen Schreibfehler gemacht schäm.
Mein Compiler mag jetzt, was ich geschrieben hatte.
@Steffen: Danke für Deine Antwort :-)
:-) Johannes

Autor: Steffen Warzecha (derwarze)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
S=10/1024 ist unnötig da ja fest, da kannst Du auch gleich 
S=Umin*0,009765625 schreiben wenn S eine Singlevarable sein muss 
(vorausgesetzt die wird noch anderweitig im Programm verwendet und 
braucht da die Nachkommastellen)

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.