Bin nun schon zwei Tage am basteln und komme nicht zum Ziel.
Ich will über die Serielle Schnittstelle einen String einlesen. Der Sender, ein Microcontroller, sendet ca. alle 16ms einen String mit ca. 10 Zeichen.
Ich schaffe es einfach nicht diesen String zu lesen. Zwar erhalte ich Zeichen, nur entsprechen die einfach nicht dem was gesendet wurde.
Die Parameter der Schnittstelle sind richtig gesetzt und mit einem andern Monitorprogramm funktioniert es.
Was mache ich falsch?
Vielen Dank
Christophe
Code:
Code: Alles auswählen
OpenWindow(#PB_Any,5,5,500,500, "Test", #PB_Window_SystemMenu |#PB_Window_ScreenCentered)
;Frame3DGadget(#PB_Any, 20, Top, 450, 200, "Instrument Info:") : Top+20
EditorGadget(10,20,20,460, 460, #PB_String_ReadOnly)
Port$ = "/dev/cu.usbserial-FTSEOH01"
If OpenSerialPort(1, Port$, 115200, #PB_SerialPort_NoParity, 8, 1, #PB_SerialPort_NoHandshake, 40, 40)
; Debug "Success"
Else
SetGadgetText(10,"Comport konnte nicht geöffnet werden" + Chr(13) + Chr(10))
EndIf
Repeat
EventID = WindowEvent()
While AvailableSerialPortInput(1) > 0
If ReadSerialPortData(1,@Byte,1) = 1
text.s=text.s+Chr(Byte)
EndIf
Wend
Text.s = Text.s + Chr(13) + GetGadgetText(10)
SetGadgetText(10, text.s)
Text.s = ""
Until EventID = #PB_Event_CloseWindow
Code-Tags hinzugefügt
25.08.2011
RSBasic