Metainformationen zur Seite
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
computer:raspberrypi:projekte:blinken [2013/08/01 13:45] gaubes angelegt |
computer:raspberrypi:projekte:blinken [2018/03/16 21:11] (aktuell) |
||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | ===== blinkende LED ===== | + | ===== Blinken ===== |
- | Um eine LED mithilfe eines Raspberry Pis zum blinken zu bringen benötigt man zu allererst WiringPi. | + | Um eine LED mithilfe eines Raspberry Pis zum Blinken zu bringen, nutzen wir das kleine Programm für die Shell: [[computer:raspberrypi:gpio#ansprechen_ueber_die_shell]] |
- | Dieses lässt sich über das Terminal folgendermaßen runterladen: | + | |
- | <code> | + | |
- | wget http://project-downloads.drogon.net/files/wiringPi.tgz | + | |
- | </code> | + | |
- | und installieren: | + | |
- | <code> | + | |
- | tar xfz wiringPi.tgz | + | |
- | cd wiringPi/wiringPi | + | |
- | make | + | |
- | make install | + | |
- | cd ../gpio | + | |
- | make | + | |
- | </code> | + | |
- | Eine kurze php-Datei (blink.php) steuert und schaltet GPIO 23 an: | + | Eine kurze php-Datei (an.php) steuert und schaltet GPIO 23 an: |
- | <code> | + | <code php> |
<?php | <?php | ||
$val = trim(@shell_exec("/usr/local/bin/gpio -g mode 23 out")); | $val = trim(@shell_exec("/usr/local/bin/gpio -g mode 23 out")); | ||
Zeile 24: | Zeile 11: | ||
</code> | </code> | ||
Eine weitere kurze php-Datei (aus.php) schaltet GPIO 23 aus: | Eine weitere kurze php-Datei (aus.php) schaltet GPIO 23 aus: | ||
- | <code> | + | <code php> |
<?php | <?php | ||
$val = trim(@shell_exec("/usr/local/bin/gpio -g mode 23 out")); | $val = trim(@shell_exec("/usr/local/bin/gpio -g mode 23 out")); | ||
Zeile 30: | Zeile 17: | ||
?> | ?> | ||
</code> | </code> | ||
+ | Dazu schließt man die LED, wie auf dem Bild an: | ||
+ | |||
+ | {{:computer:raspberrypi:projekte:dsc_0004.jpg?320|}} | ||
+ | |||
+ | |||
+ | |||
+ | Verschiebt man diese beiden Dateien in das Verzeichnis /var/www kann man, wenn man zuvor einen [[computer:raspberrypi:webserver|Webserver]] installiert hat, die LED auch online ansteuern. | ||
+ | Dazu müsste man fürs anschalten **IP-Adresse/an.php** und fürs ausschalten **IP-Adresse/aus.php** aufrufen. | ||
+ | |||
+ | Da ein solches Ansteuern über Internet zwar funktioniert aber lästig ist, lässt sich das ganze auch grafisch programmieren. | ||
+ | Zur Vereinfachung nutzen wir jQuery (jQuery-Bibliothek herrunterladen siehe auch: [[computer:raspberrypi:projekte:matrix|Matrix]]) | ||
+ | |||
+ | Das Programm nutzt die beiden vorherigen: | ||
+ | |||
+ | <code html> | ||
+ | <!DOCTYPE html> | ||
+ | <html> | ||
+ | <head> | ||
+ | <meta charset=utf-8 /> | ||
+ | <script src="jquery.min.js"></script> | ||
+ | <style> | ||
+ | /* Gestaltung der LED */ | ||
+ | #a { position:absolute; padding:30px; background-color:lightgrey; border-radius:100px; } | ||
+ | /* zusätzliche Gestaltung der LED im Zustand "an" */ | ||
+ | #a.an { background-color:yellow; } | ||
+ | </style> | ||
+ | <script> | ||
+ | $(document).ready(function(){ | ||
+ | $("#a").click(function(){ | ||
+ | // Umschalten der "LED" | ||
+ | $(this).toggleClass("an"); | ||
+ | if ($(this).hasClass("an")) { | ||
+ | // Aufruf der Seite an.php | ||
+ | $.post("an.php",{},function(){}); | ||
+ | } else { | ||
+ | // Aufruf der Seite aus.php | ||
+ | $.post("aus.php",{},function(){}); | ||
+ | } | ||
+ | }); | ||
+ | }); | ||
+ | </script> | ||
+ | </head> | ||
+ | <body> | ||
+ | <div id="a" class="aus"></div> | ||
+ | </body> | ||
+ | </html> | ||
+ | </code> | ||
+ | |||
+ | Man kann JQuery auch direkt online beziehen: <code html> <script src="jquery.min.js"></script></code> durch <code html><script src="http://code.jquery.com/jquery-latest.js"></script></code> ersetzen. Dadurch muss man die Library nicht downloaden. | ||