{"id":757,"date":"2020-10-17T14:53:25","date_gmt":"2020-10-17T12:53:25","guid":{"rendered":"https:\/\/www.picademie.nl\/?p=757"},"modified":"2025-06-06T11:58:14","modified_gmt":"2025-06-06T09:58:14","slug":"schakel-i2c-interface-in-op-de-raspberry-pi","status":"publish","type":"post","link":"https:\/\/www.picademie.nl\/index.php\/2020\/10\/17\/schakel-i2c-interface-in-op-de-raspberry-pi\/","title":{"rendered":"Activeer I2C-bus op de Raspberry Pi"},"content":{"rendered":"\n<pre class=\"wp-block-preformatted\">I2C is een bus voor meerdere apparaten die wordt gebruikt om low-speed randapparatuur aan te sluiten op computers en embedded systemen. De Raspberry Pi ondersteunt deze interface op zijn GPIO-header en het is een geweldige manier om sensoren en apparaten aan te sluiten. Eenmaal geconfigureerd, kunt u meer dan \u00e9\u00e9n apparaat aansluiten zonder extra pinnen op de header te gebruiken.<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Stap 1 &#8211; Schakel I2C-interface in<\/h2>\n\n\n\n<p>De standaard Raspbian-afbeelding schakelt I2C standaard uit, dus voordat u het kunt gebruiken, moet de interface zijn ingeschakeld.&nbsp;Dit kan op twee manieren worden gedaan.&nbsp;Ik zal alle methoden beschrijven, maar de eerste is waarschijnlijk gemakkelijker en sneller.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Methode 1 &#8211; Met behulp van &#8220;Raspi-config&#8221; op de opdrachtregel<\/h3>\n\n\n\n<p>Start vanaf de opdrachtregel of het terminalvenster door de volgende opdracht uit te voeren:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><span class=\"has-inline-color has-vivid-cyan-blue-color\">sudo raspi-config<\/span><\/pre>\n\n\n\n<p>Hiermee wordt het raspi-config-hulpprogramma gestart.&nbsp;Selecteer &#8220;Interfacing-opties&#8221;:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"735\" height=\"287\" src=\"https:\/\/www.picademie.nl\/wp-content\/uploads\/2021\/11\/image-28.png\" alt=\"\" class=\"wp-image-7054\" srcset=\"https:\/\/www.picademie.nl\/wp-content\/uploads\/2021\/11\/image-28.png 735w, https:\/\/www.picademie.nl\/wp-content\/uploads\/2021\/11\/image-28-300x117.png 300w\" sizes=\"auto, (max-width: 735px) 100vw, 735px\" \/><\/figure>\n\n\n\n<p>Markeer de optie &#8220;I2C&#8221; en activeer &#8220;&lt;Select&gt;&#8221;.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"735\" height=\"288\" src=\"https:\/\/www.picademie.nl\/wp-content\/uploads\/2021\/11\/image-27.png\" alt=\"\" class=\"wp-image-7053\" srcset=\"https:\/\/www.picademie.nl\/wp-content\/uploads\/2021\/11\/image-27.png 735w, https:\/\/www.picademie.nl\/wp-content\/uploads\/2021\/11\/image-27-300x118.png 300w\" sizes=\"auto, (max-width: 735px) 100vw, 735px\" \/><\/figure>\n\n\n\n<p>Selecteer en activeer &#8220;&lt;Ja&gt;&#8221;:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"480\" height=\"153\" src=\"https:\/\/www.picademie.nl\/wp-content\/uploads\/2021\/11\/image-29.png\" alt=\"\" class=\"wp-image-7055\" srcset=\"https:\/\/www.picademie.nl\/wp-content\/uploads\/2021\/11\/image-29.png 480w, https:\/\/www.picademie.nl\/wp-content\/uploads\/2021\/11\/image-29-300x96.png 300w\" sizes=\"auto, (max-width: 480px) 100vw, 480px\" \/><\/figure>\n\n\n\n<p>Markeer en activeer &#8220;&lt;Ok&gt;&#8221;:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"479\" height=\"111\" src=\"https:\/\/www.picademie.nl\/wp-content\/uploads\/2021\/11\/image-30.png\" alt=\"\" class=\"wp-image-7056\" srcset=\"https:\/\/www.picademie.nl\/wp-content\/uploads\/2021\/11\/image-30.png 479w, https:\/\/www.picademie.nl\/wp-content\/uploads\/2021\/11\/image-30-300x70.png 300w\" sizes=\"auto, (max-width: 479px) 100vw, 479px\" \/><\/figure>\n\n\n\n<p>Wanneer gevraagd wordt om opnieuw op te starten, markeer en activeer je &#8220;&lt;<strong>Ja<\/strong>&gt;&#8221;<\/p>\n\n\n\n<p>De Raspberry Pi wordt opnieuw opgestart en de interface wordt ingeschakeld.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Methode 2 &#8211; &#8216;Raspberry Pi-configuratie&#8217; gebruiken<\/h3>\n\n\n\n<p>Als je Pi opstart naar het bureaublad, kun je ofwel een Terminal-venster openen en Methode 1 gebruiken of de grafische tool &#8220;Raspberry Pi-configuratie&#8221; gebruiken.&nbsp;Dit is te vinden onder&nbsp;&nbsp;<strong>Menu&gt; Voorkeuren&gt; Raspberry Pi-configuratie<\/strong><\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter\"><img decoding=\"async\" src=\"https:\/\/www.raspberrypi-spy.co.uk\/wp-content\/uploads\/2014\/08\/rc_gui_launch.jpg\" alt=\"Raspberry Pi Configuratie starten vanuit menu\" class=\"wp-image-7296\"\/><\/figure>\n<\/div>\n\n\n<p>Dan hoeft u alleen maar het tabblad &#8220;Interfaces&#8221; te selecteren en I2C in te stellen op &#8220;Ingeschakeld&#8221;:<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter\"><img decoding=\"async\" src=\"https:\/\/www.raspberrypi-spy.co.uk\/wp-content\/uploads\/2014\/11\/rc_gui_interfaces_i2c.png\" alt=\"Raspberry Pi-configuratie - tabblad Interfaces - I2C\" class=\"wp-image-7312\"\/><\/figure>\n<\/div>\n\n\n<p>Klik op de knop &#8220;OK&#8221;.&nbsp;Selecteer &#8220;Ja&#8221; als u wordt gevraagd om opnieuw op te starten, zodat de wijzigingen van kracht worden.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter\"><img decoding=\"async\" src=\"https:\/\/www.raspberrypi-spy.co.uk\/wp-content\/uploads\/2014\/08\/rc_gui_reboot.png\" alt=\"Raspberry Pi-configuratie - Herstartprompt\" class=\"wp-image-7299\"\/><\/figure>\n<\/div>\n\n\n<p>De Raspberry Pi wordt opnieuw opgestart en de I2C-interface wordt ingeschakeld.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Stap 2 &#8211; Installeer hulpprogramma&#8217;s<\/h2>\n\n\n\n<p>Om te helpen bij het debuggen en om de interface te gebruiken binnen Python, kunnen we &#8220;python-smbus&#8221; en &#8220;i2c-tools&#8221; installeren:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><span class=\"has-inline-color has-vivid-cyan-blue-color\">sudo apt-get update\nsudo apt-get install -y python-smbus i2c-tools<\/span><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Stap 3 &#8211; Afsluiten<\/h2>\n\n\n\n<p>Schakel uw Pi uit met:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><span class=\"has-inline-color has-vivid-cyan-blue-color\">sudo halt<\/span><\/pre>\n\n\n\n<p>Wacht tien seconden, koppel de stroom naar je Pi los en je bent nu klaar om je I2C-hardware aan te sluiten.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Controleren of I2C is ingeschakeld (optioneel)<\/h2>\n\n\n\n<p>Wanneer u uw Pi opstart of opnieuw opstart, kunt u controleren of de i2c-module actief is door de volgende opdracht te gebruiken:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><span class=\"has-inline-color has-vivid-cyan-blue-color\">lsmod | grep i2c_<\/span><\/pre>\n\n\n\n<p>Dat toont alle modules die beginnen met &#8220;i2c_&#8221;.&nbsp;Als het &#8220;i2c_bcm2708&#8221; vermeldt, dan werkt de module correct.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Hardware testen (optioneel)<\/h2>\n\n\n\n<p>Controleer de bedrading nadat u uw hardware hebt aangesloten.&nbsp;Zorg ervoor dat 3.3V naar de juiste pinnen gaat en dat je geen kortsluiting hebt.&nbsp;Schakel de Pi in en wacht tot deze is opgestart.<\/p>\n\n\n\n<p>Als je een Model A, B Rev 2 of B + Pi hebt, typ dan de volgende opdracht:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><span class=\"has-inline-color has-vivid-cyan-blue-color\">i2cdetect -y 1<\/span><\/pre>\n\n\n\n<p>Als je een originele Model B Rev 1 Pi hebt, typ dan de volgende opdracht:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><span class=\"has-inline-color has-vivid-cyan-blue-color\">i2cdetect -y 0<\/span><\/pre>\n\n\n\n<p>Waarom het verschil?&nbsp;Tussen de Rev 1- en Rev 2-versies van de Pi veranderden ze de signalen die naar Pin 3 en Pin 5 op de GPIO-header gingen.&nbsp;Dit veranderde het apparaatnummer dat moet worden gebruikt met I2C van 0 in 1.<\/p>\n\n\n\n<p>Ik gebruikte een Pi 2 Model B met een aangesloten sensor en mijn output zag er als volgt uit:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><span class=\"has-inline-color has-vivid-green-cyan-color\">pi @ raspberrypi<\/span> <span style=\"color:#000aa3\" class=\"has-inline-color\">~ $<\/span> <span class=\"has-inline-color has-vivid-cyan-blue-color\">i2cdetect -y 1<\/span><\/pre>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"462\" height=\"227\" src=\"https:\/\/www.picademie.nl\/wp-content\/uploads\/2020\/10\/i2cdetectie.png\" alt=\"\" class=\"wp-image-783\" srcset=\"https:\/\/www.picademie.nl\/wp-content\/uploads\/2020\/10\/i2cdetectie.png 462w, https:\/\/www.picademie.nl\/wp-content\/uploads\/2020\/10\/i2cdetectie-300x147.png 300w\" sizes=\"auto, (max-width: 462px) 100vw, 462px\" \/><\/figure>\n\n\n\n<p>Dit toont aan dat ik \u00e9\u00e9n apparaat heb aangesloten en het (hex) adres is 0x27 (39 in decimaal).<\/p>\n","protected":false},"excerpt":{"rendered":"<div class=\"mh-excerpt\"><p>I2C is een bus voor meerdere apparaten die wordt gebruikt om low-speed randapparatuur aan te sluiten op computers en embedded systemen. De Raspberry Pi ondersteunt <a class=\"mh-excerpt-more\" href=\"https:\/\/www.picademie.nl\/index.php\/2020\/10\/17\/schakel-i2c-interface-in-op-de-raspberry-pi\/\" title=\"Activeer I2C-bus op de Raspberry Pi\">[&#8230;]<\/a><\/p>\n<\/div>","protected":false},"author":1,"featured_media":905,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[1],"tags":[],"class_list":["post-757","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-uncategorized"],"jetpack_featured_media_url":"https:\/\/www.picademie.nl\/wp-content\/uploads\/2020\/10\/I2C2.png","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/www.picademie.nl\/index.php\/wp-json\/wp\/v2\/posts\/757","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.picademie.nl\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.picademie.nl\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.picademie.nl\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.picademie.nl\/index.php\/wp-json\/wp\/v2\/comments?post=757"}],"version-history":[{"count":0,"href":"https:\/\/www.picademie.nl\/index.php\/wp-json\/wp\/v2\/posts\/757\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.picademie.nl\/index.php\/wp-json\/wp\/v2\/media\/905"}],"wp:attachment":[{"href":"https:\/\/www.picademie.nl\/index.php\/wp-json\/wp\/v2\/media?parent=757"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.picademie.nl\/index.php\/wp-json\/wp\/v2\/categories?post=757"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.picademie.nl\/index.php\/wp-json\/wp\/v2\/tags?post=757"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}