Metainformationen zur Seite
  •  

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

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.