{"id":638,"date":"2019-04-16T11:05:30","date_gmt":"2019-04-16T02:05:30","guid":{"rendered":"https:\/\/ahnbk.com\/?p=638"},"modified":"2019-04-16T11:05:30","modified_gmt":"2019-04-16T02:05:30","slug":"jetson-nano-gpio-%ec%82%ac%ec%9a%a9-%ed%95%b4%eb%b3%b4%ea%b8%b0","status":"publish","type":"post","link":"https:\/\/ahnbk.com\/?p=638","title":{"rendered":"Jetson Nano GPIO \uc0ac\uc6a9 \ud574\ubcf4\uae30"},"content":{"rendered":"\n<p>Jetson Nano\uc5d0\ub294 \ub77c\uc988\ubca0\ub9ac\ud30c\uc774\uc640 \ub9c8\ucc2c\uac00\uc9c0\ub85c 40\ud540\uc758 GPIO \ud5e4\ub354\uac00 \uc874\uc7ac\ud55c\ub2e4. \uc774\ub97c \uc774\uc6a9\ud574 \ub2e4\uc591\ud55c \uc678\ubd80\uae30\uae30\uc640 \uc5f0\uacb0 \uac00\ub2a5\ud55c\ub370, python\uc758 \ub77c\uc774\ube0c\ub7ec\ub9ac\ub97c \uc774\uc6a9\ud558\uba74 \uc0ac\uc6a9\uc790\uac00 \uc81c\uc5b4 \uac00\ub2a5\ud558\ub2e4.<\/p>\n\n\n\n<p>\uba3c\uc800 \ud544\uc694\ud55c \ud328\ud0a4\uc9c0\ub97c \uc124\uce58\ud55c\ub2e4. python3\ub294 \uae30\ubcf8 \uc124\uce58\ub418\uc5b4 \uc788\uace0, pip3\ub294 \uc124\uce58\ud574\uc57c \ud55c\ub2e4.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo apt install python3-pip<\/code><\/pre>\n\n\n\n<p>\ub2e4\uc74c\uc73c\ub85c Jetson.GPIO \ud328\ud0a4\uc9c0\ub97c \uc124\uce58\ud55c\ub2e4.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo pip3 install Jetson.GPIO<\/code><\/pre>\n\n\n\n<p>\uc774\uc81c python3\ub97c \uc2e4\ud589\ud558\uace0 \uc124\uce58\ud55c \ud328\ud0a4\uc9c0\ub97c import \ud574\ubcf4\uba74 \ub2e4\uc74c\uacfc \uac19\uc774 \ud37c\ubbf8\uc158 \uc5d0\ub7ec\uac00 \ubc1c\uc0dd\ud55c\ub2e4. \uba87\uac00\uc9c0 \uc124\uc815\uc774 \ud544\uc694\ud558\ub2e4.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>>>> import Jetson.GPIO\nTraceback (most recent call last):\n  File \"&lt;stdin>\", line 1, in &lt;module>\n  File \"\/usr\/local\/lib\/python3.6\/dist-packages\/Jetson\/GPIO\/__init__.py\", line 1, in &lt;module>\n    from .gpio import *\n  File \"\/usr\/local\/lib\/python3.6\/dist-packages\/Jetson\/GPIO\/gpio.py\", line 33, in &lt;module>\n    raise RuntimeError(\"The current user does not have permissions set to \"\nRuntimeError: The current user does not have permissions set to access the library functionalites. Please configure permissions or use the root user to run this<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n\n\n\n<p>gpio \uadf8\ub8f9\uc744 \uc0dd\uc131\ud558\uace0 \uc0ac\uc6a9\uc790\ub97c gpio \uadf8\ub8f9\uc5d0 \ucd94\uac00\ud55c\ub2e4.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo groupadd -f -r gpio\n$ sudo usermod -a -G gpio &lt;user_id><\/code><\/pre>\n\n\n\n<p>\ub2e4\uc74c\uc73c\ub85c udev \ub8f0\uc744 rules.d \ub514\ub809\ud1a0\ub9ac\ub85c \ubcf5\uc0ac\ud55c\ub2e4. <\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo cp \/opt\/nvidia\/jetson-gpio\/etc\/99-gpio.rules \/etc\/udev\/rules.d\/<\/code><\/pre>\n\n\n\n<p>\uc7ac\ubd80\ud305\ud558\uac70\ub098, \ub2e4\uc74c\uacfc \uac19\uc774 \uc785\ub825\ud558\uc5ec udev \ub8f0\uc744 \ub2e4\uc2dc \ubd88\ub7ec\uc628\ub2e4. (\uc7ac\ubd80\ud305\ud574\uc57c \ud568.)<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo udevadm control --reload-rules &amp;&amp; sudo udevadm trigger<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n\n\n\n<p>\uc774\uc81c python3\ub97c \uc2e4\ud589\ud55c \ub2e4\uc74c, \ud328\ud0a4\uc9c0\ub97c import \ud574\ubcf4\uba74, \uc815\uc0c1\uc801\uc73c\ub85c \uc0ac\uc6a9 \uac00\ub2a5\ud558\ub2e4.  \uba87\uac00\uc9c0 \uc608\uc81c \ucf54\ub4dc\ub4e4\uc774 \/opt\/nvidia\/jetson-gpio\/samples\uc5d0 \uc788\uc73c\ubbc0\ub85c \ucc38\uace0\ud558\uba74 \ub420\ub4ef\ud558\ub2e4. \uc0ac\uc6a9\ubc95\uc740 RPi.GPIO\uc640 \ub3d9\uc77c\ud558\ub2e4.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>>>> import Jetson.GPIO as GPIO\n>>> GPIO.setmode(GPIO.BOARD)\n>>> GPIO.setup(33, GPIO.OUT)\n>>> GPIO.output(33, GPIO.HIGH)\n>>> GPIO.output(33, GPIO.LOW)<\/code><\/pre>\n\n\n\n<p>\uc704\uc640 \uac19\uc774 \uac04\ub2e8\ud788 \uc0ac\uc6a9 \uac00\ub2a5\ud558\uace0, \uc778\ud130\ub7fd\ud2b8, \ucf5c\ubc31\ud568\uc218 \ub4f1 \ub2e4\uc591\ud55c \uae30\ub2a5\uc744 \uc9c0\uc6d0\ud55c\ub2e4.  \uba87\uac00\uc9c0 \uc8fc\uc758 \uc0ac\ud56d\uc73c\ub85c\ub294,<\/p>\n\n\n\n<ul><li>GPIO\uc758 \uc804\uc555\uc740 5V\uac00 \uc544\ub2cc 3.3V<\/li><li>PWM \uae30\ub2a5\uc740 \uc9c0\uc6d0\ud558\uc9c0 \uc54a\uc74c<\/li><li>I2C, SPI\ub294 \uac01\uac01 \ub450\uac1c\uc529 \uc9c0\uc6d0<\/li><li>\uba87\uac00\uc9c0 \ud2b9\uc218\ud391\uc158\ub4e4 \uc0ac\uc6a9\ud558\uace0, \uc804\uc6d0\uad00\ub828 \ud540\uc744 \ube7c\uba74 \uc5ec\ubd84\uc758 GPIO\ub294 \ubcc4\ub85c \uc5c6\ub294\ub4ef.<\/li><\/ul>\n\n\n\n<p>\uc0c1\uc138\ud55c \ud540\uc544\uc6c3\uc740 <a href=\"https:\/\/www.jetsonhacks.com\/nvidia-jetson-nano-j41-header-pinout\/\">https:\/\/www.jetsonhacks.com\/nvidia-jetson-nano-j41-header-pinout\/<\/a>\uc744 \ucc38\uace0\ud558\uba74 \ub428.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Jetson Nano\uc5d0\ub294 \ub77c\uc988\ubca0\ub9ac\ud30c\uc774\uc640 \ub9c8\ucc2c\uac00\uc9c0\ub85c 40\ud540\uc758 GPIO \ud5e4\ub354\uac00 \uc874\uc7ac\ud55c\ub2e4. \uc774\ub97c \uc774\uc6a9\ud574 \ub2e4\uc591\ud55c \uc678\ubd80\uae30\uae30\uc640 \uc5f0\uacb0 \uac00\ub2a5\ud55c\ub370, python\uc758 \ub77c\uc774\ube0c\ub7ec\ub9ac\ub97c \uc774\uc6a9\ud558\uba74 \uc0ac\uc6a9\uc790\uac00 \uc81c\uc5b4 \uac00\ub2a5\ud558\ub2e4. \uba3c\uc800 \ud544\uc694\ud55c \ud328\ud0a4\uc9c0\ub97c \uc124\uce58\ud55c\ub2e4. python3\ub294 \uae30\ubcf8 \uc124\uce58\ub418\uc5b4 \uc788\uace0, pip3\ub294 \uc124\uce58\ud574\uc57c \ud55c\ub2e4. \ub2e4\uc74c\uc73c\ub85c Jetson.GPIO \ud328\ud0a4\uc9c0\ub97c \uc124\uce58\ud55c\ub2e4. \uc774\uc81c python3\ub97c \uc2e4\ud589\ud558\uace0 \uc124\uce58\ud55c \ud328\ud0a4\uc9c0\ub97c import \ud574\ubcf4\uba74 \ub2e4\uc74c\uacfc \uac19\uc774 \ud37c\ubbf8\uc158 \uc5d0\ub7ec\uac00 \ubc1c\uc0dd\ud55c\ub2e4. \uba87\uac00\uc9c0 \uc124\uc815\uc774 \ud544\uc694\ud558\ub2e4. gpio \uadf8\ub8f9\uc744 \uc0dd\uc131\ud558\uace0 \uc0ac\uc6a9\uc790\ub97c gpio &hellip; <\/p>\n<p class=\"link-more\"><a href=\"https:\/\/ahnbk.com\/?p=638\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;Jetson Nano GPIO \uc0ac\uc6a9 \ud574\ubcf4\uae30&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"advanced_seo_description":"","jetpack_seo_html_title":"","jetpack_seo_noindex":false,"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,"footnotes":"","_jetpack_memberships_contains_paid_content":false},"categories":[114],"tags":[126,115,127],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p2wXSW-ai","jetpack-related-posts":[],"jetpack_likes_enabled":false,"_links":{"self":[{"href":"https:\/\/ahnbk.com\/index.php?rest_route=\/wp\/v2\/posts\/638"}],"collection":[{"href":"https:\/\/ahnbk.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/ahnbk.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/ahnbk.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/ahnbk.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=638"}],"version-history":[{"count":2,"href":"https:\/\/ahnbk.com\/index.php?rest_route=\/wp\/v2\/posts\/638\/revisions"}],"predecessor-version":[{"id":640,"href":"https:\/\/ahnbk.com\/index.php?rest_route=\/wp\/v2\/posts\/638\/revisions\/640"}],"wp:attachment":[{"href":"https:\/\/ahnbk.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=638"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/ahnbk.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=638"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/ahnbk.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=638"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}