Zien
Deze lijkt interessant: (van 2016)
1. Gambas GPIO and android on raspberryPi3
https://www.youtube.com/watch?v=j1HoN-ySK7Q
Deze is nog ouder (03-2015) en niet NL-talig, en ondanks de titel ook niet Engelstalig:
2. Controlling Raspberry Pi 2 GPIO with Gambas (2015)
https://www.youtube.com/watch?v=VPj_Hjh7viQ
Library
Een van de basisbenodigdheden naast gambas en een pi is een library om de raspberry pi GPIO pinnen aan te spreken (met een soort seriële communicatie):
- wiringPi
- pigpio
Een code-voorbeeld van gebruik vind je hier op elinux.org
libwiringPi
(Zie ook deze topic 2013 op pi forum – en blijkbaar moet je Gambas programma draaien als root)
De library moet je aanroepen in de software, in het 1e voorbeeld:
Library "/usr/local/lib/libwiringPi"
Dan worden er een aantal dingen uitgehaald, bv
Public Extern wiringPiSetup() As Integer ' blabla
Public Extern pinMode(pin as Integer, ...
Dan doet hij een “setup”:
Public sub Form_Open()
wiringPiSetup()
pinMode(7, PIN_OUTPUT)
pinMode(0, PIN_OUTPUT)
pinMode(2, PIN_OUTPUT)
pinMode(4, PWM_MODE)
pwmSetMod(0)
pwmSetClock(400)
pwmSetRang(1024)
pwmWrite(1, Slider8.Value)
End
Ik begrijp de indentatie niet zo goed, maar ik heb gewoon de code overgenomen uit zijn videootje.
Dan heeft hij nog code om naar de Arduino te sturen via de serialport1:
PUBLIC SUB _new()
' ...
serialport1.PortName= "/dev/ttyUSB0"
serialport1.speed = 9600
serialport1.
serialport1.
' enz
TRY serialport.Open()
IF Erro Then
Message.Error("Connection error in port " & serialport1.Portname)
ELSE
Try Print #serialport1, "S"
IF Error Then
Messag.Error("Error sending data .." )
Print "Cannot connect"
ELSE
Print "ok .. Connected"
ENDIF
ENDIF
END
Ook dat zou ik anders doen, nl met
WITH serialport
.Portname= "/dev/ttyUSB0"
.speed = 9600
.Parity = .None
.DataBits = .Bits8
.StopBits = .Bits1
.FlowControl = .None
END WITH
En dan stuurt hij slider informatie door naar de arduino:
Public Sub Slider3_Chang()
Dim b as Byte[]
b = [99, Slider3.Value, 101]
Write #serialport1, b AS Byte[]
End
Volgens zijn uitleg is het allemaal erg eenvoudig vanuit Gambas!
pigpio
Volgens Captain Bodgit (http://captainbodgit.blogspot.be/2016/08/raspberry-pi-gpio-gambas-pigpio-library.html) kan je ook deze pigpio (als .zip van abyz.co.uk/rpi/pigpio/) gebruiken:
wget abyz.co.uk/rpi/pigpio/pigpio.zip
Daarna:
unzip pigpio.zip
wat een mapje PIGPIO geeft, met inhoud.
cd PIGPIO
make
sudo make install
(uitgevoerd op OpenSUSE 42.3)