286 questions
Hi Edgar,
here is an interesting link:
tinkering-arduino-and-small-basic
I'm assuming USB is simulating a COM port and would do the following:
- Find out which COM port is used and which commands are necessary to control the LED (forum, IDE, manuals, ...)
- Try to control the board manually with these commands with a terminal emulation (Teraterm, Hyperterminal, ...)
- Now everything can be automated with SmallBasic and the litdev-extension LDCOMMPort and brought into a nice GUI.
Example of simple polling of the Kettler exercise bike AX1:
GraphicsWindow.Title = "MS SmallBasic Ergograph Kettler AX1"
GraphicsWindow.BackgroundColor = "#30C8CF"
GraphicsWindow.Height = 600
GraphicsWindow.Width = 800
GraphicsWindow.BrushColor = "Black"
INFO_Box=Controls.AddTextBox(7,570)
Controls.SetSize(INFO_Box,400,20)
Count_Box=Controls.AddTextBox(407,570)
Controls.SetSize(Count_Box,70,20)
Puls_Box=Controls.AddTextBox(7,10)
Controls.SetSize(Puls_Box,40,22)
Drehzahl_Box=Controls.AddTextBox(7,40)
Controls.SetSize(Drehzahl_Box,40,22)
kmh_Box=Controls.AddTextBox(7,70)
Controls.SetSize(kmh_Box,40,22)
km_Box=Controls.AddTextBox(7,100)
Controls.SetSize(km_Box,40,22)
Watt_Box=Controls.AddTextBox(755,40)
Controls.SetSize(Watt_Box,40,22)
kJoule_Box=Controls.AddTextBox(7,130)
Controls.SetSize(kJoule_Box,40,22)
runtime_Box=Controls.AddTextBox(750,10)
Controls.SetSize(runtime_Box,45,22)
iWatt_Box=Controls.AddTextBox(755,63)
Controls.SetSize(iWatt_Box,40,22)
LDCommPort.OpenPort("COM1",9600)
Program.Delay(50)
For i=1 To 10000
LDCommPort.TXString("PW")
LDCommPort.TXByte(13) 'Send carriage return'
LDCommPort.TXByte(10) 'Send linefeed'
Program.Delay(400)
ST = LDCommPort.RXAll()
Controls.SetTextBoxText(INFO_Box,ST)
Controls.SetTextBoxText(Count_Box,i)
'TextWindow.Write(i+":")'
'TextWindow.Write(CommPort.RXAll())'
Program.Delay(100)
Puls = Text.GetSubText(ST,1,3)
Controls.SetTextBoxText(Puls_Box,Puls)
Drehzahl = Text.GetSubText(ST,5,3)
Controls.SetTextBoxText(Drehzahl_Box,Drehzahl)
kmh = Text.GetSubText(ST,9,3)
Controls.SetTextBoxText(kmh_Box,kmh/10)
km = Text.GetSubText(ST,13,3)
Controls.SetTextBoxText(km_Box,km/10)
Watt = Text.GetSubText(ST,17,3)
Controls.SetTextBoxText(Watt_Box,Watt)
kJoule = Text.GetSubText(ST,21,4)
Controls.SetTextBoxText(kJoule_Box,kJoule)
runtime = Text.GetSubText(ST,26,5)
Controls.SetTextBoxText(runtime_Box,runtime)
iWatt = Text.GetSubText(ST,32,3)
Controls.SetTextBoxText(iWatt_Box,iWatt)
EndFor
LDCommPort.ClosePort()