Hallo,
ich hab mir vorhin mal den Beispielcode des SRF10 Ultraschallsensors angeschaut.
In dem Code gibt es folgenden Codeschnipsel:
Welchen Sinn hat diese Zeile?:Code:'Messreichweite in cm festlegen Sub Srf10_reichweite(byval Srf10_slaveid As Byte , Byval Reichweite As Word) Local Wert As Word Local Temp As Byte Wert = Reichweite / 4 'Ungefähre Registerberechnung Temp = Low(wert) I2cstart I2cwbyte Srf10_slaveid I2cwbyte 2 'Register I2cwbyte Wert I2cstop Print Temp End Sub
Temp = Low(wert)
Ich komm da einfach auf keine Lösung. Ich hab das mal im Bascom Index gesucht und da steht folgendes:
"Retrieves the least significant byte of a variable."
Allerdings hab ich mir dann mal das Beispielprogramm zu diesem Befehl in den Simulator geladen und das mal mit den Werten aus dem Programm vom SRF10 getestet.
Das ist dieses Programm:
Wenn ich dann die Simulation starte erscheint als Wert für die Variable "Temp" 30. Da frag ich mich was soll dieser Befehl in dem Code von dem US-Sensor bewirken wenn er an der Zahl nichts ändert?Code:$sim $regfile = "m48def.dat" ' specify the used micro $crystal = 4000000 ' used crystal frequency $baud = 19200 ' use baud rate $hwstack = 32 ' default use 32 for the hardware stack $swstack = 10 ' default use 10 for the SW stack $framesize = 40 ' default use 40 for the frame space Dim I As Integer , Z As Byte I = 30 Z = Low(i) Print Z ' is 1 End
Ich stehe gerade ziemlich auf dem Schlauch.
Danke für eure Antworten.
Gruß
Daniel







Zitieren

Lesezeichen