Neuigkeiten Das Projekt Technik RoboSpatium Unterstützung Stichwortverzeichnis Download Reaktionen Spiele Kauftipps Kontakt <<< C: Einleitung Python: GPIOs schalten >>> C: digitalWrite()Der Schaltplan zum Kapitel![]() Um eine LED blinken lassen zu können, muss diese natürlich auch mit dem Raspberry Pi verkabelt werden. Alles zum korrekten Anschließen von LEDs an GPIOs gibt's im Kapitel zu LEDs mit Hilfe von GPIOs schalten. Welche Pins welche Funktion haben, ist im Kapitel zur Hardware des Raspberry Pi nachzulesen. Was ist Python?Computer verarbeiten Daten im Dualsystem. Programmcode muss also in Form von Nullen und Einsen vorliegen. Derartigen Code direkt zu schreiben ist möglich, aber seeeehr abstrakt. Daher hat man schon früh damit begonnen, sogenannte Interpreter Software zu programmieren. Diese verwandelt von Menschen einfacher zu lesenden Text in den von Computern ausführbaren Code aus Dualzahlen. Der Python-Interpreter macht genau das. Der zu schreibende Programmtext kann allerdings nicht frei formuliert werden, sondern muss den Regeln dieser Programmiersprache entsprechen. Die Textzeile:Schalte GPIO Nummer 16 ein Kann der Python Interpreter nicht verarbeiten. Diese muss wie folgt lauten: GPIO.output(16, GPIO.HIGH) Die Textzeile mus genau so lauten. Selbst Groß- und Kleinschreibung ist genauestens einzuhalten. Die Zeile: gpio.output(16, GPIO.HIGH) kann vom Python-Interpreter ebenfalls nicht verarbeitet werden. Vor der eigentlichen Zeile, welche den Befehl zum Einschalten des GPIO repräsentiert, sind weitere Befehle nötig, um den GPIO vorzubereiten. Kommen wir somit zu dem kompletten... Python Skript zum Ein- und Ausschalten eines GPIO
Der Python Interpreter ignoriert sämtlichen Text, der hinter dem Sonderzeichen "#" steht. Somit können Kommentare im Klartext in den Programmcode geschrieben werden. Derartige Kommetare sollten überall dort eingefügt werden, wo es sinnvoll erscheint, Erklärungen abzugeben, welchen Zweck einen Programmteil erfüllen soll. In dem obigen Beispiel habe ich jede Zeile kommentiert, da dieses für Anfänger in Sachen Python Programmierung gedacht ist. Wer nur ein wenig geübt ist, wird sofort erkennen, dass die Zeile: GPIO.output(16, GPIO.HIGH) Den Pin 16 einschaltet. Den Kommentar dahinter kann man sich also sparen. Wie viele Kommentare ihr einfügt, bleibt einzig und alleine euch überlassen. Denkt aber daran, dass ihr ein Programm mit unter nach Jahren mal wieder ändern müsst, weil sich ein Fehler eingeschlichen hat oder ihr etwas erweitern möchtet und dann sind Kommentare Gold wert! Prinzipiell können aber auch alle Kommentare aus dem Skript wntfernt werden. Dieses läft dann genau so wie mit den Kommentaren. Ein Sonderfall ist der allererste Kommentar: #!/usr/bin/env python Dieser muss in der ersten Zeile stehen! Mit dieser Zeile wird dem Betriebssystem angezeigt, dass diese Textdatei ein Python Quelltext ist und somit über den entsprechenden Interpreter aufgerufen werden muss. Ausführen des Python SkriptsWird die Textdatei unter dem Namen "blink.py" gespeichert, so kann diese auf zweierlei Arten über die Kommandozeile gestartet werden:Entweder durch Aufrufen des Python Interpreters mit der Übergabe des Dateinamens als Parameter: python blink.py oder indem die Datei als ausführbare Datei deklariert wird: chmod a+x blink.py und diese anschließend wie ein Programm gestartet wird: ./blink.py "./" vor dem Dateinamen darf nicht vergessen werden! Ferner müsst ihr vor Aufrufen der oben angegebenen Befehle in das Verzeichnis wechseln, in dem ihr die Datei "blink.py" zuvor gespeichert habt. Die zweite Version funktioniert nur, wenn die erste Zeile im Script, wie bereits geschrieben: #!/usr/bin/env python lautet! ProgrammfehlerDer Python Interpreter gibt Meldungen aus, wenn etwas im Programmcode nicht so geschrieben ist, wie erwartet. Das können Warnmeldungen sein, die den Programmablauf (scheinbar) nicht beeinflussen oder Fehler, die dazu führen, dass die Ausführung beendet wird. Diese Meldungen sind dazu gedacht, gelesen und beachtet zu werden! Wichtigste Angabe ist die Programmzeile, an welcher der Fehler aufgetreten ist. Wenn ihr im Netz nach Beschreibungen zu der Fehlermeldung sucht, wird euch geholfen, aber NEIN, ihr solltet als Anfänger nicht gleich wegen jedem Sch... einen neuen Post in den entsprechenden Foren setzen! Sucht weiter, bis ihr die Antwort gefunden habt, denn Anfängerfehler haben schon abertausende von Anfängern vor euch gemacht! Findet die Antwort, bevor ihr andere Menschen mit euren Problemchen bombardiert! Ich habe bislang zu allen Fragestellungen eine Lösung im Netz gefunden ohne einen Post zu setzen - bisweilen recherchiert man schon so einige Stunden. Ja, programmieren ist nicht an einem Nachmittag erlernt und so manches Problem wird euch über Tage hinweg beschäftigen, bevor ihr die Lösung gefunden habt. Das ist halt so! Bedenkt, dass ihr als Programmierer den Willen haben müsst, über das "Setup.exe-Klicker" Niveau herauszuwachsen. In einer zunehmend technisierten Welt erhaltet ihr somit Einblicke in die Datenverarbeitung, welche den "Muggels" für immer verborgen bleiben.Habt aber keine Scheu davor, einen Kommentar auf meinen Seiten zu hinterlassen, wenn ihr Fehler entdeckt, etwas nicht verstanden habt (was, genau?) oder nach eurer Ansicht Informationen fehlen (welche, genau?). <<< C: Einleitung Python: GPIOs schalten >>> Neuigkeiten Das Projekt Technik RoboSpatium Unterstützung Stichwortverzeichnis Archiv Download Reaktionen Spiele Verweise Kauftipps Kontakt Impressum |
![]() ![]() ![]() ![]() ![]() |