sitemap link mailform link home

GPIO mit C und GTK+ steuern

Beitrag vom 19.1.2016

 

ACHTUNG: Die GTK+-Version 3.x läuft in Codeblocks derzeit noch nicht!

Im vorigen Kapitel GPIO programmieren in C hatten wir ein Konsolenprogramm geschrieben, um eine an Pin 11 des Raspberry-GPIO angeschlossene LED blinken zu lassen.

Nun wollen wir ein grafisches Interface (GUI - Graphic User Interface) mit einem Button erzeugen, um die LED ein- und auszuschalten.

Wir öffnen LXTerminal (Konsole) und starten darin Codeblocks:

LXTerminal


  pi@raspberrypi: ~ $ sudo codeblocks                                 

Codeblocks öffnet sich. Wir wählen nun File - New - Project.

Im Fenster New from template wählen wir GTK+ project:

GTK

Wir müssen wieder einen Project title eingeben und einen Folder (Ordner) auswählen oder anlegen:

GTK

Als Compiler wählen wir im nächsten Schritt wieder GNU GCC Compiler.

Es wird nun eine Projektstruktur namens GTK-Project angelegt und gleichzeitig eine Datei main.c. Diese enthält bereits eine Menge Programmcode - und zwar eine Art Hello-world-Programm mit grafischer Benutzeroberfläche:

GTK

Wenn wir nun Build an run klicken, dann bekommen wir eine Fehlermeldung:

GTK

Das ist auch ganz klar, da wir noch die Bibliothek GTK+ installieren müssen.

Zuerst mal das tägliche Update:

  pi@raspberrypi: ~ $ sudo apt update                            

  pi@raspberrypi: ~ $ sudo apt upgrade                           

Dann wird die eigentliche GTK+-Bibliothek installiert:

  pi@raspberrypi: ~ $ sudo apt install libgtkmm-2.4         

Das dauert ein paar Minuten.


Danach haben wir also die GTK+-Version 2.4 installiert.

 

ACHTUNG: Die GTK+-Version 3.x läuft in Codeblocks derzeit noch nicht!

 

Wenn wir nun wieder Build an run klicken, dann funktioniert das kleine Testprogramm ordnungsgemäß:

GTK

Wenn wir auf Information klicken, da erscheint "Hello World":

GTK

So, jetzt müssen wir den Programmcode nur noch so modifizieren, dass die LED am Pin 11 des GPIO blinkt, sobald der Button Information geklickt wird.

Das machen wir im nächsten Kapitel.

.

Letzte Änderung:
June 21. 2024 19:13:39
«    top    »