{"id":103,"date":"2017-06-04T22:58:51","date_gmt":"2017-06-04T22:58:51","guid":{"rendered":"http:\/\/fambach.net\/?p=103"},"modified":"2019-05-31T08:36:29","modified_gmt":"2019-05-31T08:36:29","slug":"raspberry-pi-3-led-ansteuern","status":"publish","type":"post","link":"https:\/\/www.fambach.net\/en\/raspberry-pi-3-led-ansteuern\/","title":{"rendered":"Controlling the Raspberry Pi 3 LED"},"content":{"rendered":"<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_73 ez-toc-wrap-left counter-hierarchy ez-toc-counter ez-toc-grey ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<span class=\"ez-toc-title-toggle\"><a href=\"#\" class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\" aria-label=\"Toggle Table of Content\"><span class=\"ez-toc-js-icon-con\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewbox=\"0 0 24 24\" version=\"1.2\" baseprofile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/span><\/a><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1' ><li class='ez-toc-page-1 ez-toc-heading-level-1'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/www.fambach.net\/en\/raspberry-pi-3-led-ansteuern\/#Hardware\" title=\"Hardware\">Hardware<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-1'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/www.fambach.net\/en\/raspberry-pi-3-led-ansteuern\/#Aufbau\" title=\"Structure\">Structure<\/a><ul class='ez-toc-list-level-2' ><li class='ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/www.fambach.net\/en\/raspberry-pi-3-led-ansteuern\/#Schaltplan\" title=\"Schematic\">Schematic<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/www.fambach.net\/en\/raspberry-pi-3-led-ansteuern\/#Verdrahtung\" title=\"Verdrahtung\">Verdrahtung<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-1'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/www.fambach.net\/en\/raspberry-pi-3-led-ansteuern\/#Software\" title=\"Software\">Software<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/www.fambach.net\/en\/raspberry-pi-3-led-ansteuern\/#Entwicklungsumgebung\" title=\"Entwicklungsumgebung\">Entwicklungsumgebung<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/www.fambach.net\/en\/raspberry-pi-3-led-ansteuern\/#Code\" title=\"Code\">Code<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-8\" href=\"https:\/\/www.fambach.net\/en\/raspberry-pi-3-led-ansteuern\/#LED-Klasse\" title=\"LED-Klasse\">LED-Klasse<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-9\" href=\"https:\/\/www.fambach.net\/en\/raspberry-pi-3-led-ansteuern\/#Test-Klasse\" title=\"Test-Klasse\">Test-Klasse<\/a><\/li><\/ul><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-1'><a class=\"ez-toc-link ez-toc-heading-10\" href=\"https:\/\/www.fambach.net\/en\/raspberry-pi-3-led-ansteuern\/#Tips\" title=\"Tips\">Tips<\/a><ul class='ez-toc-list-level-2' ><li class='ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-11\" href=\"https:\/\/www.fambach.net\/en\/raspberry-pi-3-led-ansteuern\/#Starten_des_Programms_als_Root\" title=\"Starten des Programms als Root\">Starten des Programms als Root<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-12\" href=\"https:\/\/www.fambach.net\/en\/raspberry-pi-3-led-ansteuern\/#Fehlende_pi4j_Klassen\" title=\"Fehlende pi4j Klassen\">Fehlende pi4j Klassen<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-13\" href=\"https:\/\/www.fambach.net\/en\/raspberry-pi-3-led-ansteuern\/#LED_geht_nicht_an\" title=\"LED geht nicht an\">LED geht nicht an<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-14\" href=\"https:\/\/www.fambach.net\/en\/raspberry-pi-3-led-ansteuern\/#Verwandte_Beitrage\" title=\"Related Posts\">Related Posts<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-1'><a class=\"ez-toc-link ez-toc-heading-15\" href=\"https:\/\/www.fambach.net\/en\/raspberry-pi-3-led-ansteuern\/#Quellen\" title=\"Sources\">Sources<\/a><\/li><\/ul><\/nav><\/div>\n\n<p>Hier der erste Versuch eine LED mit dem Raspberry PI 3 anzusteuern. Aufgebaut wird das Ganze auf einem Brotboard mit Freiluft-Verkabelung.<\/p>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n\n\n\n<h1 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Hardware\"><\/span>Hardware<span class=\"ez-toc-section-end\"><\/span><\/h1>\n\n\n\n<p>PI3 (oder \u00e4lter bitte auf die richtigen Pins achten)<br>\nLED (Ich habe ne gr\u00fcne Standard-Led 1,5V)<br>\n220 Ohm (Vorwiderstand f\u00fcr die LED)<br>\nBrot-Board (zum leichteren Aufbau)<br>\nDiverse Kabel ( Vorgefertigte Pin-Header Kabel)<\/p>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n\n\n\n<h1 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Aufbau\"><\/span>Structure<span class=\"ez-toc-section-end\"><\/span><\/h1>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Schaltplan\"><\/span>Schematic<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"283\" height=\"300\" src=\"https:\/\/fambach.net\/wp-content\/uploads\/2017\/06\/RP3_LED_Schaltplan-283x300.jpg\" alt=\"\" class=\"wp-image-105\" srcset=\"https:\/\/www.fambach.net\/wp-content\/uploads\/2017\/06\/RP3_LED_Schaltplan-283x300.jpg 283w, https:\/\/www.fambach.net\/wp-content\/uploads\/2017\/06\/RP3_LED_Schaltplan.jpg 693w\" sizes=\"(max-width: 599px) calc(100vw - 50px), (max-width: 767px) calc(100vw - 70px), (max-width: 991px) 429px, (max-width: 1199px) 637px, 354px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><\/h2>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Verdrahtung\"><\/span>Verdrahtung<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"222\" src=\"https:\/\/fambach.net\/wp-content\/uploads\/2017\/06\/RP3_LED_Steckplatine-300x222.jpg\" alt=\"\" class=\"wp-image-106\" srcset=\"https:\/\/www.fambach.net\/wp-content\/uploads\/2017\/06\/RP3_LED_Steckplatine-300x222.jpg 300w, https:\/\/www.fambach.net\/wp-content\/uploads\/2017\/06\/RP3_LED_Steckplatine-768x568.jpg 768w, https:\/\/www.fambach.net\/wp-content\/uploads\/2017\/06\/RP3_LED_Steckplatine-1024x758.jpg 1024w, https:\/\/www.fambach.net\/wp-content\/uploads\/2017\/06\/RP3_LED_Steckplatine.jpg 1338w\" sizes=\"(max-width: 599px) calc(100vw - 50px), (max-width: 767px) calc(100vw - 70px), (max-width: 991px) 429px, (max-width: 1199px) 637px, 354px\" \/><\/figure>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n\n\n\n<h1 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Software\"><\/span>Software<span class=\"ez-toc-section-end\"><\/span><\/h1>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Entwicklungsumgebung\"><\/span>Entwicklungsumgebung<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p>Als Entwicklungsumgebung habe ich zum ersten mal BlueJ auf dem PI verwendet. Mir gef\u00e4llt daran, dass man hier mit Klassendiagrammen erst einmal die Struktur definiert und im n\u00e4chsten Schritt mit dem gleichen Tool die Implementierung realisieren kann.<\/p>\n\n\n\n<p>Ein weiterer Vorteil bietet die Testumgebung. Es ist m\u00f6glich Instanzen von Klassen per Knopfdruck zu erstellen und deren Methoden mit ein paar Klicks zu testen.<\/p>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Code\"><\/span>Code<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"LED-Klasse\"><\/span>LED-Klasse<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p>Klasse zur Steuerung einer LED mit den Methoden On, Off und Toggle.<\/p>\n\n\n<div data-brk-container=\"repo\"><\/div>\n\n\n\n<p>Der Try\/Catch Block im Konstruktor ist dem Umstand geschuldet, dass meine ersten Tests auch mal schief gingen und dann die GPIOs nicht frei gegeben wurden.<br>\nDie Freigabe mache ich aktuell wenig elegant im Konstruktor. Sch\u00f6ner w\u00e4re vorher abzufragen ob der Pin schon initialisiert wurde und&nbsp;dann entsprechend weiter zu machen.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Test-Klasse\"><\/span>Test-Klasse<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p>Klasse mit Main-Methode zum Testen der LED Klasse. In der Main-Methode ist eine Endlosschleife, welche die LED in einem Intervall von 2 Sekunden an und wieder aus schaltet.<\/p>\n\n\n<div data-brk-container=\"repo\"><\/div>\n\n\n\n<h1 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Tips\"><\/span>Tips<span class=\"ez-toc-section-end\"><\/span><\/h1>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Starten_des_Programms_als_Root\"><\/span>Starten des Programms als Root<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>Die GPIOs m\u00fcssen als Root angesprochen werden. Im BlueJ gibt es in den Einstellungen einen Button aber dieser scheint nicht richtig initialisiert zu sein. Diesen einfach nochmal rausnehmen und wieder setzten, die Einstellungen speichern, dann sollte es gehen.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Fehlende_pi4j_Klassen\"><\/span>Fehlende pi4j Klassen<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>Wenn es beim compilieren Probleme mit fehlen pi4j Klassen gibt muss das entsprechende Paket installiert werden. (<a href=\"http:\/\/pi4j.com\">Hier gibt es Hilfe<\/a>)<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"LED_geht_nicht_an\"><\/span>LED geht nicht an<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>Die LED geht einfach nicht an, evtl. mal mit GPIO auf der Console testen.&nbsp;Vielleicht stimmt die Verdrahtung nicht,&nbsp; es fehlen Einstellungen oder die Pinbelegung stimmt nicht (<a href=\"http:\/\/www.netzmafia.de\/skripten\/hardware\/RasPi\/RasPi_GPIO_Shell.html\">Hier gibt es Hilfe dazu<\/a>)<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Verwandte_Beitrage\"><\/span>Related Posts<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n\n\n<h1 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Quellen\"><\/span>Sources<span class=\"ez-toc-section-end\"><\/span><\/h1>\n\n\n\n<figure class=\"wp-block-embed\"><div class=\"wp-block-embed__wrapper\">\nhttp:\/\/pi4j.com\/example\/control.html\n<\/div><\/figure>\n\n\n\n<figure class=\"wp-block-embed-wordpress wp-block-embed is-type-wp-embed is-provider-entwickler-de\"><div class=\"wp-block-embed__wrapper\">\n<blockquote class=\"wp-embedded-content\" data-secret=\"Ym79sBTaOp\"><a href=\"https:\/\/entwickler.de\/online\/iot\/raspberry-pi-2-gpio-java-256385.html\">Raspberry Pi 2 \u2013 mit Java die GPIO ausreizen<\/a><\/blockquote><iframe title=\"&#8222;Raspberry Pi 2 \u2013 mit Java die GPIO ausreizen&#8220; &#8212; entwickler.de\" class=\"wp-embedded-content\" sandbox=\"allow-scripts\" security=\"restricted\" style=\"position: absolute; clip: rect(1px, 1px, 1px, 1px);\" src=\"https:\/\/entwickler.de\/online\/iot\/raspberry-pi-2-gpio-java-256385.html\/embed#?secret=Ym79sBTaOp\" data-secret=\"Ym79sBTaOp\" width=\"600\" height=\"338\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\"><\/iframe>\n<\/div><\/figure>","protected":false},"excerpt":{"rendered":"<p>Hier der erste Versuch eine LED mit dem Raspberry PI 3 anzusteuern. Aufgebaut wird das Ganze auf einem Brotboard mit Freiluft-Verkabelung. Hardware PI3 (oder \u00e4lter bitte auf die richtigen Pins achten) LED (Ich habe ne gr\u00fcne Standard-Led 1,5V) 220 Ohm (Vorwiderstand f\u00fcr die LED) Brot-Board (zum leichteren Aufbau) Diverse Kabel ( Vorgefertigte Pin-Header Kabel) Aufbau &#8230;<\/p>\n<a href=\"https:\/\/www.fambach.net\/en\/raspberry-pi-3-led-ansteuern\/\" class=\"read-more-link\">Continue reading <span class=\"screen-reader-text\">\"Raspberry PI 3 LED ansteuern\"<\/span> <span class=\"meta-nav\">&rarr;<\/span><\/a>","protected":false},"author":1,"featured_media":106,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_lmt_disableupdate":"","_lmt_disable":"","footnotes":""},"categories":[201,164],"tags":[92,4],"modified_by":"sfambach","_links":{"self":[{"href":"https:\/\/www.fambach.net\/en\/wp-json\/wp\/v2\/posts\/103"}],"collection":[{"href":"https:\/\/www.fambach.net\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.fambach.net\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.fambach.net\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.fambach.net\/en\/wp-json\/wp\/v2\/comments?post=103"}],"version-history":[{"count":16,"href":"https:\/\/www.fambach.net\/en\/wp-json\/wp\/v2\/posts\/103\/revisions"}],"predecessor-version":[{"id":3917,"href":"https:\/\/www.fambach.net\/en\/wp-json\/wp\/v2\/posts\/103\/revisions\/3917"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.fambach.net\/en\/wp-json\/wp\/v2\/media\/106"}],"wp:attachment":[{"href":"https:\/\/www.fambach.net\/en\/wp-json\/wp\/v2\/media?parent=103"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.fambach.net\/en\/wp-json\/wp\/v2\/categories?post=103"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.fambach.net\/en\/wp-json\/wp\/v2\/tags?post=103"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}