Metainformationen zur Seite
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
computer:raspberrypi:projekte:blinken [2013/08/01 13:57] gaubes |
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. | 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/blink.php** und fürs ausschalten **IP-Adresse/aus.php** aufrufen. | + | 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: (jQuery-Bibliothek herrunterladen siehe: [[computer:raspberrypi:projekte:matrix|Matrix]]) | + | |
- | <code> | + | 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> | <!DOCTYPE html> | ||
<html> | <html> | ||
<head> | <head> | ||
<meta charset=utf-8 /> | <meta charset=utf-8 /> | ||
- | <meta name="viewport" content="width=device-width"> | ||
<script src="jquery.min.js"></script> | <script src="jquery.min.js"></script> | ||
<style> | <style> | ||
+ | /* Gestaltung der LED */ | ||
#a { position:absolute; padding:30px; background-color:lightgrey; border-radius:100px; } | #a { position:absolute; padding:30px; background-color:lightgrey; border-radius:100px; } | ||
+ | /* zusätzliche Gestaltung der LED im Zustand "an" */ | ||
#a.an { background-color:yellow; } | #a.an { background-color:yellow; } | ||
- | </style> | + | </style> |
<script> | <script> | ||
$(document).ready(function(){ | $(document).ready(function(){ | ||
$("#a").click(function(){ | $("#a").click(function(){ | ||
+ | // Umschalten der "LED" | ||
$(this).toggleClass("an"); | $(this).toggleClass("an"); | ||
if ($(this).hasClass("an")) { | if ($(this).hasClass("an")) { | ||
- | $.post("blink.php",{},function(){}); | + | // Aufruf der Seite an.php |
+ | $.post("an.php",{},function(){}); | ||
} else { | } else { | ||
+ | // Aufruf der Seite aus.php | ||
$.post("aus.php",{},function(){}); | $.post("aus.php",{},function(){}); | ||
} | } | ||
Zeile 62: | Zeile 63: | ||
</body> | </body> | ||
</html> | </html> | ||
- | |||
</code> | </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. | ||
+ |