<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>라즈이노 iOT</title>
    <link>https://rasino.tistory.com/</link>
    <description>라즈베리파이, 아두이노를 중심으로 ioT학습 프로젝트를 진행합니다.</description>
    <language>ko</language>
    <pubDate>Thu, 16 Apr 2026 07:50:08 +0900</pubDate>
    <generator>TISTORY</generator>
    <ttl>100</ttl>
    <managingEditor>엑소더스팩토리</managingEditor>
    <image>
      <title>라즈이노 iOT</title>
      <url>https://tistory1.daumcdn.net/tistory/2870901/attach/53e15aa2315c41939dfec4819d064d39</url>
      <link>https://rasino.tistory.com</link>
    </image>
    <item>
      <title>【 3D프린팅 】 Fusion360(퓨전360) 체험판 버전을 개인용 무료 버전으로 전환하는 방법</title>
      <link>https://rasino.tistory.com/399</link>
      <description>&lt;h4 data-ke-size=&quot;size20&quot;&gt;Fusion360을 설치할 때 개인용 무료(기능제한)버전을 설치하려 했으나 Free Trial(30일 풀 기능 체험판)버전으로 잘못 설치 됐을 때,&amp;nbsp; 개인용 무료 버전으로 다시 이용하는 방법에 대한 내용입니다.&lt;/h4&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&amp;nbsp;&lt;/h4&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;각각의 경우에 대해 다음과 같은 결론과 해결방법을 정리해 드립니다.&lt;/h4&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&amp;nbsp;&lt;/h4&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;1. 처음부터 체험판 버전으로 잘못 설치된 경우 :&amp;nbsp;&lt;br /&gt;&amp;nbsp;이 경우는 30일 이용 기간이 지나면&amp;nbsp; 서브스크립션 만료라고 표시되면서, 프로그램은 열리고 새파일 작성은 가능하나, 저장, 내보내기, 메시로 저장 등의 핵심 기능이 불가합니다.&amp;nbsp;&lt;/h4&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&amp;nbsp;☞ 해결법 :&lt;/h4&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&amp;nbsp; &amp;nbsp;① 제어판&amp;rarr; 프로그램 추가/삭제 메뉴에서 Fusion360 체험판 버전을 완전 삭제 &amp;rarr; 윈도우 재부팅&lt;/h4&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&amp;nbsp; &amp;nbsp;② 다음 경로에서 반드시 개인용 Autodesk Fusion 다운로드 클릭하여 다운로드 받고 설치 진행(기존 가입 사용하던 이메일 사용가능함) &amp;nbsp;&lt;a href=&quot;https://www.autodesk.com/kr/products/fusion-360/personal&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://www.autodesk.com/kr/products/fusion-360/personal&lt;/a&gt;&lt;/h4&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1488&quot; data-origin-height=&quot;547&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/H3Tgb/dJMcahiPTO8/p1ZUXMfxUhGSLayKMDteK1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/H3Tgb/dJMcahiPTO8/p1ZUXMfxUhGSLayKMDteK1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/H3Tgb/dJMcahiPTO8/p1ZUXMfxUhGSLayKMDteK1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FH3Tgb%2FdJMcahiPTO8%2Fp1ZUXMfxUhGSLayKMDteK1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1488&quot; height=&quot;547&quot; data-origin-width=&quot;1488&quot; data-origin-height=&quot;547&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;h4 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size20&quot;&gt;2. 개인용 무료버전을 사용하다가 다른 PC 등에서 체험판 버전으로 다시 설치된 경우 :&amp;nbsp;&lt;br /&gt;&amp;nbsp;이 경우는 30일 체험 기간이 지나면, 기존 개인용 무료버전으로 다시 자동 변경되어 사용가능하니 안심하고 사용해도 됩니다.&amp;nbsp; &amp;nbsp;만약, 안 될 경우 위 1번과 같은 절차로 진행.&lt;/h4&gt;
&lt;h4 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size20&quot;&gt;&amp;nbsp;&lt;/h4&gt;</description>
      <category>3D 프린팅/3D프린터_자격증</category>
      <author>엑소더스팩토리</author>
      <guid isPermaLink="true">https://rasino.tistory.com/399</guid>
      <comments>https://rasino.tistory.com/399#entry399comment</comments>
      <pubDate>Mon, 12 Jan 2026 14:27:06 +0900</pubDate>
    </item>
    <item>
      <title>【AndroidStudio】 AppBar(앱바)와  ActionBar(액션바), ToolBar(툴바)의 정의와 활용법 정리</title>
      <link>https://rasino.tistory.com/398</link>
      <description>&lt;h3 style=&quot;box-sizing: border-box; padding: 7px 10px 5px; margin: 0 0 10px; border-left: 5px solid #FF4000; font-size: 24px; background-color: #fafafa; color: #333;&quot; data-ke-size=&quot;size26&quot;&gt;1. AppBar의 정의?&lt;/h3&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;AppBar(앱바)란, 앱에서 화면 위쪽의 꾸밀 수 있는 영역을 의미합니다.&amp;nbsp; 이 앱바 영역에는 이동할 수 있는 내비게이션 아이콘을 배치하거나 로그인 등 여러가지 기능(액션:Action)을 넣을 수 있도록 하여 앱을 좀 더 편리하게 사용할 수 있도록 하는 영역을 말합니다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; padding: 7px 10px 5px; margin: 0 0 10px; border-left: 5px solid #FF4000; font-size: 24px; background-color: #fafafa; color: #333;&quot; data-ke-size=&quot;size26&quot;&gt;2. ActionBar(액션바)의 정의?&lt;/h3&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;ActionBar(액션바)란,&amp;nbsp; 위에서 정의한 AppBar(앱바)의 영역에 실질적으로 네비게이션 아이콘 같은 기능을 넣을 수 있도록 안드로이드 초기부터 제공되던 클래스를 말하는데요, 다만 안드로이드 버전이 업그레이드될 때마다, 즉 버전이 달라질 때마다 다양한 기능이 추가되고 변경되었기 때문에, 기기에 설치된 안드로이드 버전마다 다른 동작을 하게 되는 결과를 초래하게 됩니다. (단점)&amp;nbsp; &amp;nbsp;이는 다른 말로 버전 하위 호환성 문제가 있다고 합니다. &lt;span style=&quot;background-color: #ffffff; color: #333333; text-align: start;&quot;&gt;(Backward Compatibility)&lt;br /&gt;예전 버전의 안드로이드 스튜디오에서는 기본적으로 ActionBar가 나타나도록 설정되어 있었지만, 최근 버전부터는 액션바가 나타나지 않도록 NoActionBar 형태로 세팅되어 있습니다.&lt;/span&gt;&lt;span style=&quot;background-color: #ffffff; color: #333333; text-align: start;&quot;&gt;&lt;/span&gt;&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; padding: 7px 10px 5px; margin: 0 0 10px; border-left: 5px solid #FF4000; font-size: 24px; background-color: #fafafa; color: #333;&quot; data-ke-size=&quot;size26&quot;&gt;3. ToolBar(툴바)의 정의?&lt;/h3&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;ToolBar(툴바)란, 위 액션바의 큰 단점을 해결하기 위해, 안드로이드 버전이 달라지더라도 동일한 동작(액션)을 하도록, &lt;span style=&quot;background-color: #ffffff; color: #333333; text-align: start;&quot;&gt;안드로이드 5.0 (API Level 21)부터 추가된 위젯(Widget)을 말하는데요, 주로 이 툴바를 사용하여 편리하게 앱바(AppBar) 영역을 만들 수 있도록 하였습니다.&amp;nbsp; &amp;nbsp;그리고 위젯을 직접 사용하지 않더라도 기본적으로 &lt;span style=&quot;background-color: #ffffff; color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;activity_main.xml에&amp;nbsp;&lt;/span&gt; toolbar.xml을 추가(include)하여 툴바 기능을 하도록 처리할 수 있습니다.&lt;/span&gt;&lt;span style=&quot;background-color: #ffffff; color: #333333; text-align: start;&quot;&gt;&lt;/span&gt;&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; padding: 7px 10px 5px; margin: 0 0 10px; border-left: 5px solid #FF4000; font-size: 24px; background-color: #fafafa; color: #333;&quot; data-ke-size=&quot;size26&quot;&gt;4. ToolBar(툴바) 만들기 예제&lt;/h3&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;그럼, 가장 기본적인 ToolBar(툴바)를 만들어 볼 텐데요.&amp;nbsp; layout 폴더에 toolbar.xml 파일을 추가하여 activity_main.xml에서&amp;nbsp; 이와 같은 &amp;lt;include layout=&quot;@layout/toolbar&quot; /&amp;gt;&amp;nbsp; include 태그를 이용해 툴바기능을 하도록 해볼게요. 우선, 툴바 사용을 위해서는 액션바가 없는 조건으로 해야 하는데요, 기본적으로 NoActionBar로 설정되어 있기에 특별히 건드릴 것은 없습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;lt; 예제 실행 결과 이미지 미리 보기 &amp;gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;404&quot; data-origin-height=&quot;894&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/YeHiO/btsLmOOcZts/Q0T907zDRAPG0J0PKEoH4k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/YeHiO/btsLmOOcZts/Q0T907zDRAPG0J0PKEoH4k/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/YeHiO/btsLmOOcZts/Q0T907zDRAPG0J0PKEoH4k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FYeHiO%2FbtsLmOOcZts%2FQ0T907zDRAPG0J0PKEoH4k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;404&quot; height=&quot;894&quot; data-origin-width=&quot;404&quot; data-origin-height=&quot;894&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;그리고&amp;nbsp; &quot;&amp;larr; 화살표&quot;와&amp;nbsp; &quot;Home&quot; 글자와&amp;nbsp; &quot;☰&quot; 메뉴기호를 각각 터치할 때 어떤 액션을 취할 수 있는데요, 여기서는 간단하게 Toast 명령어로 메시지를 띄워보도록 할게요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;414&quot; data-origin-height=&quot;205&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bAGBKS/btsLoCFmV4J/JYe4ZIrVmlGKM7JnTFE9c0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bAGBKS/btsLoCFmV4J/JYe4ZIrVmlGKM7JnTFE9c0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bAGBKS/btsLoCFmV4J/JYe4ZIrVmlGKM7JnTFE9c0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbAGBKS%2FbtsLoCFmV4J%2FJYe4ZIrVmlGKM7JnTFE9c0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;414&quot; height=&quot;205&quot; data-origin-width=&quot;414&quot; data-origin-height=&quot;205&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;br /&gt;&lt;b&gt;① 그럼, 안드로이드 스튜디오를 실행시키고, 새 프로젝트를 여세요.&amp;nbsp;&lt;/b&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;여기서는 프로젝트 이름을 &quot;AppBar_ToolBar&quot;로 했습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;902&quot; data-origin-height=&quot;651&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cGamD7/btsLmV0G3rV/I24lxFDsuO4qsrD4mKEHu0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cGamD7/btsLmV0G3rV/I24lxFDsuO4qsrD4mKEHu0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cGamD7/btsLmV0G3rV/I24lxFDsuO4qsrD4mKEHu0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcGamD7%2FbtsLmV0G3rV%2FI24lxFDsuO4qsrD4mKEHu0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;902&quot; height=&quot;651&quot; data-origin-width=&quot;902&quot; data-origin-height=&quot;651&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;②&amp;nbsp; build.gradle.kts에&amp;nbsp; 뷰바인딩 기능 사용을 위해, &quot;viewBinding.isEnabled = true&quot;를 추가하고&amp;nbsp; &quot;Sync Now&quot;를 클릭해 주세요.&lt;/b&gt;&lt;/h4&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1161&quot; data-origin-height=&quot;623&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/d2pVLh/btsLn01fAXJ/Scaz1epuPlwGZ6ksQpAfm1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/d2pVLh/btsLn01fAXJ/Scaz1epuPlwGZ6ksQpAfm1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/d2pVLh/btsLn01fAXJ/Scaz1epuPlwGZ6ksQpAfm1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fd2pVLh%2FbtsLn01fAXJ%2FScaz1epuPlwGZ6ksQpAfm1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1161&quot; height=&quot;623&quot; data-origin-width=&quot;1161&quot; data-origin-height=&quot;623&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;③ layout 폴더에서 마우스 우클릭(RMB) &amp;gt;&amp;gt; New &amp;gt;&amp;gt; Layout Resource File을 선택하여 toolbar.xml 파일을 만들어 주세요.&lt;/b&gt;&lt;/h4&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;881&quot; data-origin-height=&quot;273&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/9vWmP/btsLoLbfiG5/AoRusMBleSaoikQ0JhbYm0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/9vWmP/btsLoLbfiG5/AoRusMBleSaoikQ0JhbYm0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/9vWmP/btsLoLbfiG5/AoRusMBleSaoikQ0JhbYm0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F9vWmP%2FbtsLoLbfiG5%2FAoRusMBleSaoikQ0JhbYm0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;881&quot; height=&quot;273&quot; data-origin-width=&quot;881&quot; data-origin-height=&quot;273&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;layout 방식은 RelaytiveLayout으로 해주세요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;826&quot; data-origin-height=&quot;499&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bbB1y6/btsLoaWU0t8/UkYYWPhsVt1E2C1RCs7vKk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bbB1y6/btsLoaWU0t8/UkYYWPhsVt1E2C1RCs7vKk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bbB1y6/btsLoaWU0t8/UkYYWPhsVt1E2C1RCs7vKk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbbB1y6%2FbtsLoaWU0t8%2FUkYYWPhsVt1E2C1RCs7vKk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;826&quot; height=&quot;499&quot; data-origin-width=&quot;826&quot; data-origin-height=&quot;499&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;④ 툴바에는 하나의 텍스트와 두 개의 이미지를 넣을 건데요, 이 두 개의 이미지는 아래처럼 에셋에서 다운로드하여 처리할게요.&lt;/b&gt;&lt;/h4&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;906&quot; data-origin-height=&quot;418&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/pUYXy/btsLny42JkA/HORBagjPIfqUKcbO5hh950/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/pUYXy/btsLny42JkA/HORBagjPIfqUKcbO5hh950/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/pUYXy/btsLny42JkA/HORBagjPIfqUKcbO5hh950/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FpUYXy%2FbtsLny42JkA%2FHORBagjPIfqUKcbO5hh950%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;906&quot; height=&quot;418&quot; data-origin-width=&quot;906&quot; data-origin-height=&quot;418&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;Vector Asset창이 열리면 Clip art를 클릭하세요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;702&quot; data-origin-height=&quot;541&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/1iGwf/btsLnz3VYxt/53p8yE0X0UoG98ZFZF5ph0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/1iGwf/btsLnz3VYxt/53p8yE0X0UoG98ZFZF5ph0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/1iGwf/btsLnz3VYxt/53p8yE0X0UoG98ZFZF5ph0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F1iGwf%2FbtsLnz3VYxt%2F53p8yE0X0UoG98ZFZF5ph0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;702&quot; height=&quot;541&quot; data-origin-width=&quot;702&quot; data-origin-height=&quot;541&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;검색창에 &quot;arrow&quot;로 검색하고 &quot;arrow back&quot;를 선택 후, OK 클릭하세요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;826&quot; data-origin-height=&quot;699&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/moI0X/btsLpkxGp2k/0uQHGvzSW2saUDsdmDUZm1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/moI0X/btsLpkxGp2k/0uQHGvzSW2saUDsdmDUZm1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/moI0X/btsLpkxGp2k/0uQHGvzSW2saUDsdmDUZm1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FmoI0X%2FbtsLpkxGp2k%2F0uQHGvzSW2saUDsdmDUZm1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;826&quot; height=&quot;699&quot; data-origin-width=&quot;826&quot; data-origin-height=&quot;699&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;Color를 클릭하여 흰색(FFFFFF)을 선택하고 Next 클릭 후 Finish를 클릭하세요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;702&quot; data-origin-height=&quot;541&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/eH9MY5/btsLmIN2kk1/Am1UTOtFjMPV0zv0FQmFN0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/eH9MY5/btsLmIN2kk1/Am1UTOtFjMPV0zv0FQmFN0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/eH9MY5/btsLmIN2kk1/Am1UTOtFjMPV0zv0FQmFN0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FeH9MY5%2FbtsLmIN2kk1%2FAm1UTOtFjMPV0zv0FQmFN0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;702&quot; height=&quot;541&quot; data-origin-width=&quot;702&quot; data-origin-height=&quot;541&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;그럼,&amp;nbsp; 안드로이드 스튜디오의 프로젝트 탐색창에&amp;nbsp; Res &amp;gt;&amp;gt; drawable &amp;gt;&amp;gt; 폴더에 아래와 같이 화살표 파일이 다운로드된 것을 볼 수 있어요.&amp;nbsp;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;331&quot; data-origin-height=&quot;75&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/FpSJc/btsLoA1RhkE/EA1M8XN4VkAPymspnIY0Sk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/FpSJc/btsLoA1RhkE/EA1M8XN4VkAPymspnIY0Sk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/FpSJc/btsLoA1RhkE/EA1M8XN4VkAPymspnIY0Sk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FFpSJc%2FbtsLoA1RhkE%2FEA1M8XN4VkAPymspnIY0Sk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;331&quot; height=&quot;75&quot; data-origin-width=&quot;331&quot; data-origin-height=&quot;75&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;동일한 방법으로&amp;nbsp; &lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&quot;&lt;/span&gt;☰&quot; 메뉴 이미지를 추가해 주세요.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;702&quot; data-origin-height=&quot;541&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dxifNr/btsLnWYPKKp/NNJJfgpv5pfqlinsIYtRyk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dxifNr/btsLnWYPKKp/NNJJfgpv5pfqlinsIYtRyk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dxifNr/btsLnWYPKKp/NNJJfgpv5pfqlinsIYtRyk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdxifNr%2FbtsLnWYPKKp%2FNNJJfgpv5pfqlinsIYtRyk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;702&quot; height=&quot;541&quot; data-origin-width=&quot;702&quot; data-origin-height=&quot;541&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;br /&gt;&lt;b&gt;⑤ 그럼, 이제&amp;nbsp;toolbar.xml 파일의 내용은 아래처럼 해주세요.&amp;nbsp;&lt;/b&gt;&lt;/h4&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1710&quot; data-origin-height=&quot;999&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cvEZlA/btsLnPlbmsC/BwgQ6rU9e8RWSbqimAYOS0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cvEZlA/btsLnPlbmsC/BwgQ6rU9e8RWSbqimAYOS0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cvEZlA/btsLnPlbmsC/BwgQ6rU9e8RWSbqimAYOS0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcvEZlA%2FbtsLnPlbmsC%2FBwgQ6rU9e8RWSbqimAYOS0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1710&quot; height=&quot;999&quot; data-origin-width=&quot;1710&quot; data-origin-height=&quot;999&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;lt; toolbar.xml 코드 내용 &amp;gt;&lt;/p&gt;
&lt;div style=&quot;background-color: #1e1f22; color: #bcbec4;&quot;&gt;
&lt;pre class=&quot;xml&quot;&gt;&lt;code&gt;&amp;lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&amp;gt;
&amp;lt;RelativeLayout xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;
    android:layout_width=&quot;match_parent&quot;
    android:layout_height=&quot;wrap_content&quot;
    android:id=&quot;@+id/toolbar&quot;
    android:background=&quot;@android:color/holo_red_light&quot;&amp;gt;
    &amp;lt;RelativeLayout
        android:layout_width=&quot;match_parent&quot;
        android:layout_height=&quot;wrap_content&quot;
        android:layout_marginTop=&quot;10dp&quot;
        android:padding=&quot;18dp&quot;&amp;gt;
        &amp;lt;ImageView
            android:layout_width=&quot;wrap_content&quot;
            android:layout_height=&quot;wrap_content&quot;
            android:id=&quot;@+id/iv_backArrow&quot;
            android:layout_centerVertical=&quot;true&quot;
            android:src=&quot;@drawable/baseline_arrow_back_24&quot;/&amp;gt;
        &amp;lt;TextView
            android:layout_width=&quot;wrap_content&quot;
            android:layout_height=&quot;wrap_content&quot;
            android:text=&quot;Home&quot;
            android:textColor=&quot;@color/white&quot;
            android:id=&quot;@+id/tv_home&quot;
            android:textStyle=&quot;bold&quot;
            android:textSize=&quot;20dp&quot;
            android:layout_centerVertical=&quot;true&quot;
            android:layout_marginStart=&quot;30dp&quot;/&amp;gt;

        &amp;lt;ImageView
            android:layout_width=&quot;wrap_content&quot;
            android:layout_height=&quot;wrap_content&quot;
            android:id=&quot;@+id/iv_menu&quot;
            android:src=&quot;@drawable/baseline_menu_24&quot;
            android:layout_centerVertical=&quot;true&quot;
            android:layout_alignParentEnd=&quot;true&quot;/&amp;gt;
    &amp;lt;/RelativeLayout&amp;gt;

&amp;lt;/RelativeLayout&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;lt; toolbar.xml&amp;nbsp; 미리 보기 모습 &amp;gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;289&quot; data-origin-height=&quot;137&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cF2FDk/btsLmVmbB6y/kxaDP9T2BsGcTCdcSDmShk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cF2FDk/btsLmVmbB6y/kxaDP9T2BsGcTCdcSDmShk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cF2FDk/btsLmVmbB6y/kxaDP9T2BsGcTCdcSDmShk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcF2FDk%2FbtsLmVmbB6y%2FkxaDP9T2BsGcTCdcSDmShk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;289&quot; height=&quot;137&quot; data-origin-width=&quot;289&quot; data-origin-height=&quot;137&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;⑥ activity_main.xml 파일은 아래와 같이 구성해 주세요.&lt;/b&gt;&lt;/h4&gt;
&lt;div style=&quot;background-color: #1e1f22; color: #bcbec4;&quot;&gt;
&lt;pre class=&quot;xml&quot;&gt;&lt;code&gt;&amp;lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&amp;gt;
&amp;lt;androidx.constraintlayout.widget.ConstraintLayout xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;
    xmlns:app=&quot;http://schemas.android.com/apk/res-auto&quot;
    xmlns:tools=&quot;http://schemas.android.com/tools&quot;
    android:id=&quot;@+id/main&quot;
    android:layout_width=&quot;match_parent&quot;
    android:layout_height=&quot;match_parent&quot;
    tools:context=&quot;.MainActivity&quot;&amp;gt;
        &amp;lt;include layout=&quot;@layout/toolbar&quot;/&amp;gt;

    &amp;lt;TextView
        android:layout_width=&quot;wrap_content&quot;
        android:layout_height=&quot;wrap_content&quot;
        android:textSize=&quot;20dp&quot;
        android:textStyle=&quot;bold&quot;
        android:text=&quot;Hello Rasino!&quot;
        app:layout_constraintBottom_toBottomOf=&quot;parent&quot;
        app:layout_constraintEnd_toEndOf=&quot;parent&quot;
        app:layout_constraintStart_toStartOf=&quot;parent&quot;
        app:layout_constraintTop_toTopOf=&quot;parent&quot; /&amp;gt;

&amp;lt;/androidx.constraintlayout.widget.ConstraintLayout&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;⑦ MainActivity.kt 에는 아래와 같이 구성해 주세요.&lt;/b&gt;&lt;/h4&gt;
&lt;div style=&quot;background-color: #1e1f22; color: #bcbec4;&quot;&gt;
&lt;pre class=&quot;reasonml&quot;&gt;&lt;code&gt;package com.example.appbar_toolbar

import android.os.Bundle
import android.widget.ImageView
import android.widget.TextView
import android.widget.Toast
import androidx.activity.enableEdgeToEdge
import androidx.appcompat.app.AppCompatActivity
import com.example.appbar_toolbar.databinding.ActivityMainBinding
import com.example.appbar_toolbar.databinding.ToolbarBinding
class MainActivity : AppCompatActivity() {
    private lateinit var binding: ActivityMainBinding
    private lateinit var toolbarBinding: ToolbarBinding
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        enableEdgeToEdge()
        binding = ActivityMainBinding.inflate(layoutInflater)
        toolbarBinding = ToolbarBinding.bind(binding.root.findViewById(R.id.toolbar))
        setContentView(binding.root)

        val backArrow = findViewById&amp;lt;ImageView&amp;gt;(R.id.iv_backArrow)
        val home = findViewById&amp;lt;TextView&amp;gt;(R.id.tv_home)
        val menu = findViewById&amp;lt;ImageView&amp;gt;(R.id.iv_menu)
        backArrow.setOnClickListener{
            Toast.makeText(this, &quot;&amp;larr; 처음 화면으로 이동합니다!&quot;, Toast.LENGTH_SHORT).show()
        }
        home.setOnClickListener{
            Toast.makeText(this, &quot;Home을 터치했습니다!&quot;, Toast.LENGTH_SHORT).show()
        }
        menu.setOnClickListener{
            Toast.makeText(this, &quot;Menu를 선택했습니다!&quot;, Toast.LENGTH_SHORT).show()
        }
    }
}&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;br /&gt;여기까지 작성하면 toolbar.xml 파일의 내용이 activity_main.xml 파일 속 상단에 나타나게 되어 툴바의 기능을 할 수 있게 됩니다.&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; padding: 7px 10px 5px; margin: 0 0 10px; border-left: 5px solid #FF4000; font-size: 24px; background-color: #fafafa; color: #333;&quot; data-ke-size=&quot;size26&quot;&gt;5. 예제 실행 결과 보기&lt;/h3&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;그럼, 결과를 실행해 보면 아래와 같고, 영상으로도 보여드릴게요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;404&quot; data-origin-height=&quot;894&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/YeHiO/btsLmOOcZts/Q0T907zDRAPG0J0PKEoH4k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/YeHiO/btsLmOOcZts/Q0T907zDRAPG0J0PKEoH4k/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/YeHiO/btsLmOOcZts/Q0T907zDRAPG0J0PKEoH4k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FYeHiO%2FbtsLmOOcZts%2FQ0T907zDRAPG0J0PKEoH4k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;404&quot; height=&quot;894&quot; data-origin-width=&quot;404&quot; data-origin-height=&quot;894&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;그리고 각각의 이미지나 Home 글자를 터치하게 되면 여러 가지 액션을 줄 수 있는데 여기서는 간단히 Toast 명령어로 메시지만 팝업 시켰어요.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;414&quot; data-origin-height=&quot;205&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bAGBKS/btsLoCFmV4J/JYe4ZIrVmlGKM7JnTFE9c0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bAGBKS/btsLoCFmV4J/JYe4ZIrVmlGKM7JnTFE9c0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bAGBKS/btsLoCFmV4J/JYe4ZIrVmlGKM7JnTFE9c0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbAGBKS%2FbtsLoCFmV4J%2FJYe4ZIrVmlGKM7JnTFE9c0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;414&quot; height=&quot;205&quot; data-origin-width=&quot;414&quot; data-origin-height=&quot;205&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;br /&gt;&amp;lt; 결과 실행 동영상 보기 &amp;gt;&lt;/p&gt;
&lt;figure data-ke-type=&quot;video&quot; data-ke-style=&quot;alignCenter&quot; data-video-host=&quot;kakaotv&quot; data-video-url=&quot;https://tv.kakao.com/v/451746145&quot; data-video-thumbnail=&quot;https://scrap.kakaocdn.net/dn/uP9fK/hyXOpUG4Mw/5XqudYl1j4woz6SCjwDKq0/img.jpg?width=406&amp;amp;height=884&amp;amp;face=0_0_406_884,https://scrap.kakaocdn.net/dn/dtmMLw/hyXOboCY8I/x0yKPY3P7GCzHUQff61e90/img.jpg?width=406&amp;amp;height=884&amp;amp;face=0_0_406_884&quot; data-video-width=&quot;406&quot; data-video-height=&quot;884&quot; data-video-origin-width=&quot;406&quot; data-video-origin-height=&quot;884&quot; data-ke-mobilestyle=&quot;widthContent&quot; data-video-play-service=&quot;daum_tistory&quot; data-original-url=&quot;&quot; data-video-title=&quot;&quot;&gt;&lt;iframe src=&quot;https://play-tv.kakao.com/embed/player/cliplink/451746145?service=daum_tistory&quot; width=&quot;406&quot; height=&quot;884&quot; frameborder=&quot;0&quot; allowfullscreen=&quot;true&quot;&gt;&lt;/iframe&gt;
&lt;figcaption style=&quot;display: none;&quot;&gt;&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;br /&gt;그럼, 오늘도 좋은 하루 보내세요~&amp;nbsp; ^^&lt;/p&gt;</description>
      <category>App개발/Android_Studio</category>
      <category>actionbar(액션바)</category>
      <category>appbar(앱바)</category>
      <category>make toolbar with kotlin</category>
      <category>noactionbar</category>
      <category>toolbar(툴바)의 정의?</category>
      <category>xml 파일로 툴바 만들기</category>
      <category>안드로이드 앱 툴바 만들기 코틀린</category>
      <author>엑소더스팩토리</author>
      <guid isPermaLink="true">https://rasino.tistory.com/398</guid>
      <comments>https://rasino.tistory.com/398#entry398comment</comments>
      <pubDate>Thu, 19 Dec 2024 00:32:34 +0900</pubDate>
    </item>
    <item>
      <title>【AndroidStudio】 Kotlin Navigation Drawer(코틀린 네비게이션 드로어-사이드메뉴) 활용하기</title>
      <link>https://rasino.tistory.com/397</link>
      <description>&lt;h3 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size23&quot;&gt;&amp;nbsp;이번 실습은 메인 창에서 흔히 사이드 메뉴라고 하는 Sub Menu를 여는 Drawer 기능에 대해 다루어 보려고 하는데요, 영어 뜻 그대로 마치 서랍(Drawer)을 열고 닫는 기능을 통해 평소에는 메인 화면을 깔끔하게 보여주고 필요시 서브 메뉴를 열어 특정 메뉴를 선택할 수 있도록 해주는 기능입니다.&amp;nbsp;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Navigation_Drawer.png&quot; data-origin-width=&quot;918&quot; data-origin-height=&quot;841&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bomxjm/btsK2zXLnoE/jbXOPcgQDLBqDkLaXmjca1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bomxjm/btsK2zXLnoE/jbXOPcgQDLBqDkLaXmjca1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bomxjm/btsK2zXLnoE/jbXOPcgQDLBqDkLaXmjca1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbomxjm%2FbtsK2zXLnoE%2FjbXOPcgQDLBqDkLaXmjca1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;700&quot; height=&quot;641&quot; data-filename=&quot;Navigation_Drawer.png&quot; data-origin-width=&quot;918&quot; data-origin-height=&quot;841&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;&amp;nbsp;먼저 안드로이드 스튜디오를 실행하고 New Project로 아래와 같이 Empty Views Activity를 선택해 주세요.&lt;/b&gt;&lt;/h4&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;902&quot; data-origin-height=&quot;651&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cKkz1d/btsK2yxKOdF/NFflVws26i3lwck1KXcF4K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cKkz1d/btsK2yxKOdF/NFflVws26i3lwck1KXcF4K/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cKkz1d/btsK2yxKOdF/NFflVws26i3lwck1KXcF4K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcKkz1d%2FbtsK2yxKOdF%2FNFflVws26i3lwck1KXcF4K%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;500&quot; height=&quot;361&quot; data-origin-width=&quot;902&quot; data-origin-height=&quot;651&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;title 제목으로 Navigation Drawer를 입력했습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #000000; text-align: start;&quot;&gt;Drawer 기능을 이용하려면 적용하고 싶은 곳, 예를 들어 activity_main.xml에 Drawer Layout을 적용해 주면 되는데요,&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000; text-align: start;&quot;&gt;그리고 Drawer Layout은 네비게이션 아이콘을 클릭하거나 사이드를 드래그했을 때 기존 레이아웃 위에 새로운 메뉴를 보여주게 되는데, 이것이 바로 Navigation View입니다.&amp;nbsp;&lt;br /&gt;&lt;/span&gt;따라서 Drawer 기능을 이용한다는 뜻은 Drawer Layout과 Navigation View를 세트로 같이 사용하게 되며, 아래와 같은 구조로 사용해야 하니 기억해 주세요.&amp;nbsp; &amp;nbsp;왜냐하면 메인뷰 화면(View)이 먼저 존재하고 네이게이션뷰가 그 위로 오버랩 되기 때문이죠.&amp;nbsp; 따라서 배치 순서를 &lt;span style=&quot;color: #000000; text-align: start;&quot;&gt;Drawer Layout을 먼저 배치하고 그 아래에 Navigation View가 위치해야 합니다. 만약 순서가 바뀔경우 에러가 발생하게 됩니다. (아래 순서 참고)&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1733068545188&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;lt;DrawerLayout&amp;gt; 
 	....
 
    &amp;lt;ConstraintLayout&amp;gt;
    	...
    &amp;lt;/ConstraintLayout&amp;gt;
    
    &amp;lt;NavigationView&amp;gt;
    	...
    &amp;lt;/NavigationView&amp;gt;
    
&amp;lt;/DrawerLayout&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;그럼,&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;1. activity_main.xml 파일에 아래와 같이 코드를 구성해 주세요.&lt;/b&gt;&lt;/h3&gt;
&lt;div style=&quot;background-color: #1e1f22; color: #bcbec4;&quot;&gt;
&lt;pre class=&quot;bash&quot; data-ke-language=&quot;bash&quot;&gt;&lt;code&gt;&amp;lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&amp;gt;
&amp;lt;androidx.drawerlayout.widget.DrawerLayout
    xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;
    xmlns:app=&quot;http://schemas.android.com/apk/res-auto&quot;
    xmlns:tools=&quot;http://schemas.android.com/tools&quot;
    android:id=&quot;@+id/drawerLayout&quot;
    android:layout_width=&quot;match_parent&quot;
    android:layout_height=&quot;match_parent&quot;
    tools:context=&quot;.MainActivity&quot;&amp;gt;

    &amp;lt;androidx.constraintlayout.widget.ConstraintLayout
        android:layout_width=&quot;match_parent&quot;
        android:layout_height=&quot;match_parent&quot;&amp;gt;
        &amp;lt;TextView
            android:layout_width=&quot;wrap_content&quot;
            android:layout_height=&quot;wrap_content&quot;
            android:text=&quot;Rasino IoT!&quot;
            android:textSize=&quot;20dp&quot;
            app:layout_constraintBottom_toBottomOf=&quot;parent&quot;
            app:layout_constraintEnd_toEndOf=&quot;parent&quot;
            app:layout_constraintStart_toStartOf=&quot;parent&quot;
            app:layout_constraintTop_toTopOf=&quot;parent&quot; /&amp;gt;
    &amp;lt;/androidx.constraintlayout.widget.ConstraintLayout&amp;gt;

    &amp;lt;com.google.android.material.navigation.NavigationView
        android:id=&quot;@+id/nav_view&quot;
        android:layout_width=&quot;wrap_content&quot;
        android:layout_height=&quot;match_parent&quot;
        app:headerLayout=&quot;@layout/nav_header&quot;
        app:menu=&quot;@menu/nav_menu&quot;
        android:layout_gravity=&quot;start&quot;
        android:fitsSystemWindows=&quot;true&quot;/&amp;gt;

&amp;lt;/androidx.drawerlayout.widget.DrawerLayout&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1271&quot; data-origin-height=&quot;880&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/daoKAy/btsK2T2MZhM/RqZLmaSfpNS5AxAdwZses1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/daoKAy/btsK2T2MZhM/RqZLmaSfpNS5AxAdwZses1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/daoKAy/btsK2T2MZhM/RqZLmaSfpNS5AxAdwZses1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdaoKAy%2FbtsK2T2MZhM%2FRqZLmaSfpNS5AxAdwZses1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1271&quot; height=&quot;880&quot; data-origin-width=&quot;1271&quot; data-origin-height=&quot;880&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;여기서 위와 같이 작성하면, app:headerLayout=&quot;@layout/nav_header&quot; 부분에 에러가 날텐데요, activity_main.xml 파일이 있는 res&amp;gt;&amp;gt;layout&amp;gt;&amp;gt; 폴더에 nav_header.xml 파일을 아래처럼 만들어주면 됩니다.&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;2. nav_header.xml 파일 생성과 코드 작성&lt;/b&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;897&quot; data-origin-height=&quot;800&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/oFdkr/btsK4tbWxre/3u438BN8XNej0BtiCH8lF0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/oFdkr/btsK4tbWxre/3u438BN8XNej0BtiCH8lF0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/oFdkr/btsK4tbWxre/3u438BN8XNej0BtiCH8lF0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FoFdkr%2FbtsK4tbWxre%2F3u438BN8XNej0BtiCH8lF0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;897&quot; height=&quot;800&quot; data-origin-width=&quot;897&quot; data-origin-height=&quot;800&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;&amp;lt;code&amp;gt;&lt;/b&gt;&lt;/h4&gt;
&lt;div style=&quot;background-color: #1e1f22; color: #bcbec4;&quot;&gt;
&lt;pre class=&quot;xml&quot;&gt;&lt;code&gt;&amp;lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&amp;gt;
&amp;lt;androidx.constraintlayout.widget.ConstraintLayout xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;
    android:layout_width=&quot;match_parent&quot;
    android:layout_height=&quot;150dp&quot;
    android:background=&quot;@android:color/holo_orange_dark&quot;&amp;gt;

&amp;lt;/androidx.constraintlayout.widget.ConstraintLayout&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;&amp;lt;생성결과&amp;gt;&lt;/b&gt;&lt;/h4&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1259&quot; data-origin-height=&quot;826&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bwdMac/btsK4dG8hOG/nN2k0cEiuBq5tXw7PSMPTK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bwdMac/btsK4dG8hOG/nN2k0cEiuBq5tXw7PSMPTK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bwdMac/btsK4dG8hOG/nN2k0cEiuBq5tXw7PSMPTK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbwdMac%2FbtsK4dG8hOG%2FnN2k0cEiuBq5tXw7PSMPTK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1259&quot; height=&quot;826&quot; data-origin-width=&quot;1259&quot; data-origin-height=&quot;826&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;3. nav_menu.xml 파일 생성과 코드 작성&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;그리고&amp;nbsp; app:menu=&quot;@menu/nav_menu&quot;&amp;nbsp; 비부분도 아래처럼 res 폴더에서 마우스 우클릭(RMB) New&amp;gt;&amp;gt;Android Resource Directory를 선택하여 menu 폴더를 만들어주고, 여기에 nav_menu.xml 파일을 생성해 주면 됩니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;837&quot; data-origin-height=&quot;817&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/mncjc/btsK5baBfca/INPDgrc9vniujf71rHjxT1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/mncjc/btsK5baBfca/INPDgrc9vniujf71rHjxT1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/mncjc/btsK5baBfca/INPDgrc9vniujf71rHjxT1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fmncjc%2FbtsK5baBfca%2FINPDgrc9vniujf71rHjxT1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;837&quot; height=&quot;817&quot; data-origin-width=&quot;837&quot; data-origin-height=&quot;817&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;&amp;lt;Code&amp;gt;&lt;/b&gt;&lt;/h4&gt;
&lt;div style=&quot;background-color: #1e1f22; color: #bcbec4;&quot;&gt;
&lt;pre class=&quot;xml&quot;&gt;&lt;code&gt;&amp;lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&amp;gt;
&amp;lt;menu xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;&amp;gt;

    &amp;lt;item
        android:id=&quot;@+id/item1&quot;
        android:title=&quot;Item 1&quot;
        android:icon=&quot;@drawable/ic_home&quot;/&amp;gt;
    &amp;lt;item
        android:id=&quot;@+id/item2&quot;
        android:title=&quot;Item 2&quot;
        android:icon=&quot;@drawable/ic_home&quot;/&amp;gt;
    &amp;lt;item
        android:id=&quot;@+id/item3&quot;
        android:title=&quot;Item 3&quot;
        android:icon=&quot;@drawable/ic_home&quot;/&amp;gt;
&amp;lt;/menu&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;&amp;lt;생성 결과&amp;gt;&lt;/b&gt;&lt;/h4&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1204&quot; data-origin-height=&quot;642&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/UFZYh/btsK4fdOucM/AemtSSPGS6uFm72hth87fk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/UFZYh/btsK4fdOucM/AemtSSPGS6uFm72hth87fk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/UFZYh/btsK4fdOucM/AemtSSPGS6uFm72hth87fk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FUFZYh%2FbtsK4fdOucM%2FAemtSSPGS6uFm72hth87fk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1204&quot; height=&quot;642&quot; data-origin-width=&quot;1204&quot; data-origin-height=&quot;642&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;위 코드에서 Item1~3 앞에 아이콘이 나오도록 하려면 넣고 싶은 아이콘 이미지를 res&amp;gt;&amp;gt;drawable 폴더에 넣어주면 되는데요,&amp;nbsp; 여기서는 간편하게 제공되는 클립아트(Clip Art) 기능인, Vector Asset에서 찾아서 넣었습니다.&amp;nbsp; 그럼, 아래와 res&amp;gt;&amp;gt;drawable 폴더를 RMB 해서 Vector Asset을 클릭해 주세요. 여기서는 모두 동일한 집(Home) 아이콘을 선택했어요.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1076&quot; data-origin-height=&quot;771&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/3JGXJ/btsK5mJTX47/VbYZWgiSKIfB4jaKKwTK90/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/3JGXJ/btsK5mJTX47/VbYZWgiSKIfB4jaKKwTK90/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/3JGXJ/btsK5mJTX47/VbYZWgiSKIfB4jaKKwTK90/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F3JGXJ%2FbtsK5mJTX47%2FVbYZWgiSKIfB4jaKKwTK90%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1076&quot; height=&quot;771&quot; data-origin-width=&quot;1076&quot; data-origin-height=&quot;771&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;아래와 같은 창이 뜨면, Clip art 부분을 클릭하세요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;702&quot; data-origin-height=&quot;541&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bpYrL0/btsK5pGDoep/ByG3NWIYh4k8KsJ397c0t0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bpYrL0/btsK5pGDoep/ByG3NWIYh4k8KsJ397c0t0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bpYrL0/btsK5pGDoep/ByG3NWIYh4k8KsJ397c0t0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbpYrL0%2FbtsK5pGDoep%2FByG3NWIYh4k8KsJ397c0t0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;702&quot; height=&quot;541&quot; data-origin-width=&quot;702&quot; data-origin-height=&quot;541&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;만약, 여기서 클립아트 부분이 클릭을 해서 아래와 같은 창이 안나오거나 아무 변화가 없다면, 아래 게시글을 참고해서 특정 임시 폴더를 삭제하고 Android Studio를 재실행하면 해결될 수 있으니 참고하세요.&amp;nbsp;&lt;br /&gt;(클립아트 문제 시 해결방법 : &lt;a href=&quot;https://rasino.tistory.com/389&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;[App개발/Android_Studio] - 【AndroidStudio】 gradle 관련 에러 해결하기!&lt;/a&gt; )&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;그럼, 아래에 보이는 검색창에 home 이라고 입력해서 home 모양의 아이콘을 선택 추가해 주면 됩니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;826&quot; data-origin-height=&quot;699&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bKK7T2/btsK4PTecM6/wBHhJsSvLtcN39N66kepRk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bKK7T2/btsK4PTecM6/wBHhJsSvLtcN39N66kepRk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bKK7T2/btsK4PTecM6/wBHhJsSvLtcN39N66kepRk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbKK7T2%2FbtsK4PTecM6%2FwBHhJsSvLtcN39N66kepRk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;826&quot; height=&quot;699&quot; data-origin-width=&quot;826&quot; data-origin-height=&quot;699&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;826&quot; data-origin-height=&quot;699&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b4lurN/btsK4f5S0TP/HVTTKs1pwk6rsKKtKwkkv1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b4lurN/btsK4f5S0TP/HVTTKs1pwk6rsKKtKwkkv1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b4lurN/btsK4f5S0TP/HVTTKs1pwk6rsKKtKwkkv1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb4lurN%2FbtsK4f5S0TP%2FHVTTKs1pwk6rsKKtKwkkv1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;826&quot; height=&quot;699&quot; data-origin-width=&quot;826&quot; data-origin-height=&quot;699&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;702&quot; data-origin-height=&quot;541&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cTdPBV/btsK5BUkCkP/RgKqyRUm3oP3XZEFpAtcAK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cTdPBV/btsK5BUkCkP/RgKqyRUm3oP3XZEFpAtcAK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cTdPBV/btsK5BUkCkP/RgKqyRUm3oP3XZEFpAtcAK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcTdPBV%2FbtsK5BUkCkP%2FRgKqyRUm3oP3XZEFpAtcAK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;702&quot; height=&quot;541&quot; data-origin-width=&quot;702&quot; data-origin-height=&quot;541&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;저장할 때 , 혹은 저장하고서 icon의 이름은 ic_home.xml로 너무 길지 않게 수정해 주었습니다.&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;h3 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;4.&amp;nbsp; MainActivity.kt 파일 생성과 코드 작성&lt;/b&gt;&lt;/h3&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;아래와 같이 메인 액티비티 코드를 작성해 주세요.&amp;nbsp;&lt;/p&gt;
&lt;div style=&quot;background-color: #1e1f22; color: #bcbec4;&quot;&gt;
&lt;pre class=&quot;reasonml&quot;&gt;&lt;code&gt;package com.example.navigationdrawer1

import android.os.Bundle
import android.view.Menu
import android.view.MenuItem
import android.widget.Toast
import androidx.activity.enableEdgeToEdge
import androidx.appcompat.app.ActionBarDrawerToggle
import androidx.appcompat.app.AppCompatActivity
import androidx.core.view.ViewCompat
import androidx.core.view.WindowInsetsCompat
import androidx.drawerlayout.widget.DrawerLayout
import com.example.navigationdrawer1.databinding.ActivityMainBinding
import com.google.android.material.navigation.NavigationView

class MainActivity : AppCompatActivity() {
    lateinit var toggle: ActionBarDrawerToggle
    lateinit var drawerLayout: DrawerLayout
    lateinit var navigationView: NavigationView

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)

        setContentView(R.layout.activity_main)
        drawerLayout = findViewById(R.id.drawerLayout)
        navigationView = findViewById(R.id.nav_view)
        toggle = ActionBarDrawerToggle(this,drawerLayout, R.string.open, R.string.close)
        drawerLayout.addDrawerListener(toggle)
        toggle.syncState()
        supportActionBar?.setDisplayHomeAsUpEnabled(true)
        navigationView.setNavigationItemSelectedListener {
            when(it.itemId) {
                R.id.item1 -&amp;gt; Toast.makeText(applicationContext, &quot;Item 1 Clicked&quot;, Toast.LENGTH_SHORT).show()
                R.id.item2 -&amp;gt; Toast.makeText(applicationContext, &quot;Item 2 Clicked&quot;, Toast.LENGTH_SHORT).show()
                R.id.item3 -&amp;gt; Toast.makeText(applicationContext, &quot;Item 3 Clicked&quot;, Toast.LENGTH_SHORT).show()
            }
            true
        }
    }
    override fun onOptionsItemSelected(item: MenuItem): Boolean {
        if(toggle.onOptionsItemSelected(item)) {
            true
        }
        return super.onOptionsItemSelected(item)
    }
}&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;위 코드에서 작성 중간에 toggle = ActionBarDrawerToggle(this,drawerLayout, R.string.open, R.string.close)&amp;nbsp; 코드에서,&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;open이라는 부분과 close라는 부분에서 붉은색으로 표시가 뜰 텐데요,&amp;nbsp; 그때 마우스를 Open 글자 위에 클릭 후 올려놓고 있으면 Sub메뉴가 뜨는데 &quot;Create String Value Resource&quot;를 클릭해서 아래처럼 각각 Open이라는 Value값을 입력해 주세요.&amp;nbsp; 그리고 이어서 Close도 동일하게 진행해 주세요.&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;&amp;lt; open &amp;gt;&lt;/b&gt;&lt;/h4&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1109&quot; data-origin-height=&quot;194&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/SF98Q/btsK4PZYJvF/x6vxM9nIkjkB5XwDaknqc0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/SF98Q/btsK4PZYJvF/x6vxM9nIkjkB5XwDaknqc0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/SF98Q/btsK4PZYJvF/x6vxM9nIkjkB5XwDaknqc0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FSF98Q%2FbtsK4PZYJvF%2Fx6vxM9nIkjkB5XwDaknqc0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1109&quot; height=&quot;194&quot; data-origin-width=&quot;1109&quot; data-origin-height=&quot;194&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1194&quot; data-origin-height=&quot;913&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b7szNq/btsK3jgS2pe/OSA5B2kMjwkX4V0EsHYTlk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b7szNq/btsK3jgS2pe/OSA5B2kMjwkX4V0EsHYTlk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b7szNq/btsK3jgS2pe/OSA5B2kMjwkX4V0EsHYTlk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb7szNq%2FbtsK3jgS2pe%2FOSA5B2kMjwkX4V0EsHYTlk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1194&quot; height=&quot;913&quot; data-origin-width=&quot;1194&quot; data-origin-height=&quot;913&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;&amp;lt; close도 동일하게 &amp;gt;&lt;/b&gt;&lt;/h4&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1329&quot; data-origin-height=&quot;636&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cS8s1k/btsK4sjPiKd/jqoKz3v6iXhQWCmwUkj281/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cS8s1k/btsK4sjPiKd/jqoKz3v6iXhQWCmwUkj281/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cS8s1k/btsK4sjPiKd/jqoKz3v6iXhQWCmwUkj281/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcS8s1k%2FbtsK4sjPiKd%2FjqoKz3v6iXhQWCmwUkj281%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1329&quot; height=&quot;636&quot; data-origin-width=&quot;1329&quot; data-origin-height=&quot;636&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1329&quot; data-origin-height=&quot;849&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/Uel25/btsK4PFFsqT/j8G9zIdVY65ztvB84hGotk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Uel25/btsK4PFFsqT/j8G9zIdVY65ztvB84hGotk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Uel25/btsK4PFFsqT/j8G9zIdVY65ztvB84hGotk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FUel25%2FbtsK4PFFsqT%2Fj8G9zIdVY65ztvB84hGotk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1329&quot; height=&quot;849&quot; data-origin-width=&quot;1329&quot; data-origin-height=&quot;849&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;그리고 내용에 보면, Drawer 메뉴가 오버랩 되며 열렸을 때 Item 1이나 Item 2, Item 3 등을 각각 선택했을 때 특정 View 페이지로 넘어가게(열게) 할 수도 있으며,&amp;nbsp; 여기서는 간단히 Toast 메시지를 출력하도록 했습니다.&amp;nbsp;&lt;/p&gt;
&lt;div style=&quot;background-color: #1e1f22; color: #bcbec4;&quot;&gt;
&lt;pre class=&quot;reasonml&quot;&gt;&lt;code&gt;navigationView.setNavigationItemSelectedListener {
    when(it.itemId) {
        R.id.item1 -&amp;gt; Toast.makeText(applicationContext, &quot;Item 1 Clicked&quot;, Toast.LENGTH_SHORT).show()
        R.id.item2 -&amp;gt; Toast.makeText(applicationContext, &quot;Item 2 Clicked&quot;, Toast.LENGTH_SHORT).show()
        R.id.item3 -&amp;gt; Toast.makeText(applicationContext, &quot;Item 3 Clicked&quot;, Toast.LENGTH_SHORT).show()
    }
    true
}&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;이렇게 하면 기본적으로 작성해야 할 것은 모두 작성했는데요,&amp;nbsp; 실행해 보면, Navigation View를 선택할 수 있는 Bar가 보이지 않는데요,&amp;nbsp; 이는 안드로이드 기본 설정이 NoActionBar가 적용되어 있기 때문에 그렇습니다.&amp;nbsp;&lt;br /&gt;이 때는&amp;nbsp; Action Bar가 보이도록 아래처럼&amp;nbsp; &amp;nbsp;res&amp;gt;&amp;gt; values &amp;gt;&amp;gt; themes 폴더에 있는 themes.xml 파일을 수정해 주세요.&amp;nbsp; 필요 시 night(다크 디스플레이 모드)화면 모드의 themes.xml 메뉴에도 적용해 주세요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1130&quot; data-origin-height=&quot;670&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/mNCKm/btsK5ta1NnF/eaMB3ehXeQh4kjgi6lv24k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/mNCKm/btsK5ta1NnF/eaMB3ehXeQh4kjgi6lv24k/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/mNCKm/btsK5ta1NnF/eaMB3ehXeQh4kjgi6lv24k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FmNCKm%2FbtsK5ta1NnF%2FeaMB3ehXeQh4kjgi6lv24k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1130&quot; height=&quot;670&quot; data-origin-width=&quot;1130&quot; data-origin-height=&quot;670&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;div style=&quot;background-color: #1e1f22; color: #bcbec4;&quot;&gt;
&lt;pre class=&quot;xml&quot;&gt;&lt;code&gt;&amp;lt;resources xmlns:tools=&quot;http://schemas.android.com/tools&quot;&amp;gt;
    &amp;lt;!-- Base application theme. --&amp;gt;
    &amp;lt;style name=&quot;Base.Theme.NavigationDrawer1&quot; parent=&quot;Theme.Material3.DayNight&quot;&amp;gt;
        &amp;lt;!-- Customize your light theme here. --&amp;gt;
        &amp;lt;!-- &amp;lt;item name=&quot;colorPrimary&quot;&amp;gt;@color/my_light_primary&amp;lt;/item&amp;gt; --&amp;gt;
    &amp;lt;/style&amp;gt;

    &amp;lt;style name=&quot;Theme.NavigationDrawer1&quot; parent=&quot;Base.Theme.NavigationDrawer1&quot; /&amp;gt;
&amp;lt;/resources&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;그리고 실행해 보면 아래처럼 실행 되는 것을 볼 수 있습니다.&amp;nbsp; 삼선 Action Bar 부분을 터치해도 Drawer 메뉴가 열리며,&amp;nbsp; 폰의 왼쪽 라인 부분을 한 손가락으로 살짝 누른 후 왼쪽에서 오른쪽으로 드래그해도 Drawer 메뉴가 열리는 것을 볼 수 있어요. (No ActionBar 사용시)&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Navigation_Drawer.png&quot; data-origin-width=&quot;918&quot; data-origin-height=&quot;841&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bomxjm/btsK2zXLnoE/jbXOPcgQDLBqDkLaXmjca1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bomxjm/btsK2zXLnoE/jbXOPcgQDLBqDkLaXmjca1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bomxjm/btsK2zXLnoE/jbXOPcgQDLBqDkLaXmjca1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbomxjm%2FbtsK2zXLnoE%2FjbXOPcgQDLBqDkLaXmjca1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;700&quot; height=&quot;641&quot; data-filename=&quot;Navigation_Drawer.png&quot; data-origin-width=&quot;918&quot; data-origin-height=&quot;841&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;br /&gt;&lt;b&gt;&amp;lt; 실행 동영상 &amp;gt;&lt;/b&gt;&lt;/h4&gt;
&lt;figure data-ke-type=&quot;video&quot; data-ke-style=&quot;alignCenter&quot; data-video-host=&quot;kakaotv&quot; data-video-url=&quot;https://tv.kakao.com/v/451372636&quot; data-video-thumbnail=&quot;https://scrap.kakaocdn.net/dn/cZQ5Zi/hyXGJTrJF6/tAPsNIYNikxkJES2YypaP1/img.jpg?width=386&amp;amp;height=834&amp;amp;face=0_0_386_834,https://scrap.kakaocdn.net/dn/B8lhd/hyXGKkwpqn/49Ez6UCHkWnwnGQfcR5Lek/img.jpg?width=386&amp;amp;height=834&amp;amp;face=0_0_386_834&quot; data-video-width=&quot;386&quot; data-video-height=&quot;834&quot; data-video-origin-width=&quot;386&quot; data-video-origin-height=&quot;834&quot; data-ke-mobilestyle=&quot;widthContent&quot; data-video-play-service=&quot;daum_tistory&quot; data-original-url=&quot;&quot; data-video-title=&quot;&quot;&gt;&lt;iframe src=&quot;https://play-tv.kakao.com/embed/player/cliplink/451372636?service=daum_tistory&quot; width=&quot;386&quot; height=&quot;834&quot; frameborder=&quot;0&quot; allowfullscreen=&quot;true&quot;&gt;&lt;/iframe&gt;
&lt;figcaption style=&quot;display: none;&quot;&gt;&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;감사합니다.&amp;nbsp;&lt;br /&gt;오늘도 보람된 하루 되세요~&lt;/p&gt;</description>
      <category>App개발/Android_Studio</category>
      <category>android studio kotlin basic</category>
      <category>kotlin navigation drawer</category>
      <category>navigation drawer</category>
      <category>네비게이션 드로워 기능</category>
      <category>안드로이드 스튜디오 코틀린 기능</category>
      <author>엑소더스팩토리</author>
      <guid isPermaLink="true">https://rasino.tistory.com/397</guid>
      <comments>https://rasino.tistory.com/397#entry397comment</comments>
      <pubDate>Mon, 2 Dec 2024 23:37:05 +0900</pubDate>
    </item>
    <item>
      <title>【AndroidStudio】 ViewPager2(뷰페이저2) 실습 #2 &amp;lt;Tab Layout &amp;amp; 텍스트 에디트 추가하기&amp;gt;</title>
      <link>https://rasino.tistory.com/396</link>
      <description>&lt;h3 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size23&quot;&gt;앞선 실습인 &quot;ViewPager2(뷰페이저 2) 실습#1&quot;에 이어서 화면 상단에 Tab Layout(Bar)를 추가해서 탭바로도 이동할 수 있도록 하고, &quot;One&quot; 첫 페이지에 간단히 텍스트 에디트(Text Edit) 기능을 넣어서 간단히 다루어 볼게요.&amp;nbsp; 보통은 Tab Layout과 뷰페이저2을 함께 연결하여 서로 간 스크롤(연동)이 가능하도록 사용하는 것이 일반적이에요.&lt;/h3&gt;
&lt;h3 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size23&quot;&gt;&amp;nbsp;&lt;/h3&gt;
&lt;h3 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size23&quot;&gt;먼저 앞선 실습#1게시글을 참고해 주세요.&lt;br /&gt;&lt;br /&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://rasino.tistory.com/395&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;[App개발/Android_Studio] - 【AndroidStudio】 ViewPager2(뷰페이저2) 실습 #1&lt;/a&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;1. 먼저 activity_main.xml 파일에 아래와 같이 ViewPager2위에 TabLayout을 추가해 주세요.(연동하기)&lt;br /&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1550&quot; data-origin-height=&quot;960&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/kLuvW/btsKS6vltKs/7eOCCMiE7uHseyXqBaq0Sk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/kLuvW/btsKS6vltKs/7eOCCMiE7uHseyXqBaq0Sk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/kLuvW/btsKS6vltKs/7eOCCMiE7uHseyXqBaq0Sk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FkLuvW%2FbtsKS6vltKs%2F7eOCCMiE7uHseyXqBaq0Sk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1550&quot; height=&quot;960&quot; data-origin-width=&quot;1550&quot; data-origin-height=&quot;960&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;lt;code&amp;gt;&lt;/p&gt;
&lt;div style=&quot;background-color: #1e1f22; color: #bcbec4;&quot;&gt;
&lt;pre class=&quot;bash&quot; data-ke-language=&quot;bash&quot;&gt;&lt;code&gt;&amp;lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&amp;gt;
&amp;lt;androidx.constraintlayout.widget.ConstraintLayout xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;
    xmlns:app=&quot;http://schemas.android.com/apk/res-auto&quot;
    xmlns:tools=&quot;http://schemas.android.com/tools&quot;
    android:id=&quot;@+id/main&quot;
    android:layout_width=&quot;match_parent&quot;
    android:layout_height=&quot;match_parent&quot;
    tools:context=&quot;.MainActivity&quot;&amp;gt;

    &amp;lt;com.google.android.material.tabs.TabLayout
        android:id=&quot;@+id/tab_layout&quot;
        android:layout_width=&quot;match_parent&quot;
        android:layout_height=&quot;0dp&quot;
        android:layout_marginTop=&quot;24dp&quot;
        android:background=&quot;#E8EDA7&quot;
        app:layout_constraintEnd_toEndOf=&quot;parent&quot;
        app:layout_constraintHorizontal_bias=&quot;0.0&quot;
        app:layout_constraintStart_toStartOf=&quot;parent&quot;
        app:layout_constraintTop_toTopOf=&quot;parent&quot;
        tools:ignore=&quot;SpeakableTextPresentCheck&quot; /&amp;gt;

    &amp;lt;androidx.viewpager2.widget.ViewPager2
        android:id=&quot;@+id/pager&quot;
        android:layout_width=&quot;match_parent&quot;
        android:layout_height=&quot;0dp&quot;
        app:layout_constraintBottom_toBottomOf=&quot;parent&quot;
        app:layout_constraintTop_toBottomOf=&quot;@+id/tab_layout&quot; /&amp;gt;

&amp;lt;/androidx.constraintlayout.widget.ConstraintLayout&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;다음, MainActivity.kt 에 아래와 같은 코드를 추가해 볼게요.&lt;/p&gt;
&lt;div style=&quot;background-color: #1e1f22; color: #bcbec4;&quot;&gt;
&lt;pre class=&quot;reasonml&quot;&gt;&lt;code&gt;TabLayoutMediator(binding.tabLayout, binding.pager) { tab, position -&amp;gt;
    tab.text = when(position) {
        0 -&amp;gt; &quot;Home&quot;
        1 -&amp;gt; &quot;Profile&quot;
        else -&amp;gt; &quot;Details&quot;
    }
}.attach()&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;lt;MainActivity.kt 의 전체 code&amp;gt;&lt;/p&gt;
&lt;div style=&quot;background-color: #1e1f22; color: #bcbec4;&quot;&gt;
&lt;pre class=&quot;bash&quot; data-ke-language=&quot;bash&quot;&gt;&lt;code&gt;package com.example.viewpager2_fragment
import android.os.Bundle
import androidx.activity.enableEdgeToEdge
import androidx.appcompat.app.AppCompatActivity
import androidx.fragment.app.Fragment
import com.example.viewpager2_fragment.databinding.ActivityMainBinding
import com.google.android.material.tabs.TabLayoutMediator

class MainActivity : AppCompatActivity() {
    private lateinit var binding: ActivityMainBinding
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        enableEdgeToEdge()
        binding = ActivityMainBinding.inflate(layoutInflater)
        setContentView(binding.root)
        val fragments : List&amp;lt;Fragment&amp;gt; = listOf(
            FragmentOne(),
            FragmentTwo(),
            FragmentThree()
        )
        val adapter = MyFragmentAdapter(fragments, supportFragmentManager, lifecycle)
        binding.pager.adapter = adapter

//        TabLayoutMediator(binding.tabLayout, binding.pager) { tab, position -&amp;gt;
//            tab.text = &quot;Tab $position&quot;
//        }.attach()
        TabLayoutMediator(binding.tabLayout, binding.pager) { tab, position -&amp;gt;
            tab.text = when(position) {
                0 -&amp;gt; &quot;Home&quot;
                1 -&amp;gt; &quot;Profile&quot;
                else -&amp;gt; &quot;Details&quot;
            }
        }.attach()
    }
}&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;여기까지만 하면 Tab Layout과 연동이 될 거예요.&lt;br /&gt;&amp;lt;TabLayou 연동결과&amp;gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;433&quot; data-origin-height=&quot;362&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/2cGTm/btsKVxYWcKS/GpzCcVkjB28PueHLM3SFXK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/2cGTm/btsKVxYWcKS/GpzCcVkjB28PueHLM3SFXK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/2cGTm/btsKVxYWcKS/GpzCcVkjB28PueHLM3SFXK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F2cGTm%2FbtsKVxYWcKS%2FGpzCcVkjB28PueHLM3SFXK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;433&quot; height=&quot;362&quot; data-origin-width=&quot;433&quot; data-origin-height=&quot;362&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;2. fragment_one.xml 에 아래와 같이 &quot;EditText&quot;와 &quot;Button&quot;을 추가해 주세요.&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1352&quot; data-origin-height=&quot;966&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dxk0rh/btsKVt3oin1/lbp1KQWWmo8PwlGAKZkpW0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dxk0rh/btsKVt3oin1/lbp1KQWWmo8PwlGAKZkpW0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dxk0rh/btsKVt3oin1/lbp1KQWWmo8PwlGAKZkpW0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fdxk0rh%2FbtsKVt3oin1%2Flbp1KQWWmo8PwlGAKZkpW0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1352&quot; height=&quot;966&quot; data-origin-width=&quot;1352&quot; data-origin-height=&quot;966&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;lt;code&amp;gt;&lt;/p&gt;
&lt;div style=&quot;background-color: #1e1f22; color: #bcbec4;&quot;&gt;
&lt;pre class=&quot;stata&quot;&gt;&lt;code&gt;&amp;lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&amp;gt;
&amp;lt;androidx.constraintlayout.widget.ConstraintLayout xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;
    xmlns:app=&quot;http://schemas.android.com/apk/res-auto&quot;
    xmlns:tools=&quot;http://schemas.android.com/tools&quot;
    android:id=&quot;@+id/frameLayout&quot;
    android:layout_width=&quot;match_parent&quot;
    android:layout_height=&quot;match_parent&quot;
    android:background=&quot;#8B71C3&quot;
    tools:context=&quot;.FragmentOne&quot;&amp;gt;
    &amp;lt;TextView
        android:id=&quot;@+id/tv_one&quot;
        android:layout_width=&quot;wrap_content&quot;
        android:layout_height=&quot;wrap_content&quot;
        android:layout_marginTop=&quot;148dp&quot;
        android:text=&quot;One&quot;
        android:textAlignment=&quot;center&quot;
        android:textColor=&quot;@color/white&quot;
        android:textSize=&quot;34sp&quot;
        android:textStyle=&quot;bold&quot;
        app:layout_constraintEnd_toEndOf=&quot;parent&quot;
        app:layout_constraintStart_toStartOf=&quot;parent&quot;
        app:layout_constraintTop_toTopOf=&quot;parent&quot; /&amp;gt;
    &amp;lt;EditText
        android:id=&quot;@+id/et&quot;
        android:layout_width=&quot;wrap_content&quot;
        android:layout_height=&quot;wrap_content&quot;
        android:layout_marginTop=&quot;72dp&quot;
        android:ems=&quot;10&quot;
        android:hint=&quot;enter your name&quot;
        android:inputType=&quot;text&quot;
        android:padding=&quot;16dp&quot;
        app:layout_constraintBottom_toTopOf=&quot;@+id/btn1&quot;
        app:layout_constraintEnd_toEndOf=&quot;parent&quot;
        app:layout_constraintHorizontal_bias=&quot;0.497&quot;
        app:layout_constraintStart_toStartOf=&quot;parent&quot;
        app:layout_constraintTop_toBottomOf=&quot;@+id/tv_one&quot;
        app:layout_constraintVertical_bias=&quot;0.279&quot; /&amp;gt;
    &amp;lt;Button
        android:id=&quot;@+id/btn1&quot;
        android:layout_width=&quot;wrap_content&quot;
        android:layout_height=&quot;wrap_content&quot;
        android:layout_marginBottom=&quot;152dp&quot;
        android:text=&quot;Change Title&quot;
        app:layout_constraintBottom_toBottomOf=&quot;parent&quot;
        app:layout_constraintEnd_toEndOf=&quot;parent&quot;
        app:layout_constraintStart_toStartOf=&quot;parent&quot; /&amp;gt;
&amp;lt;/androidx.constraintlayout.widget.ConstraintLayout&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;그럼, 추가된 버튼을 클릭하면 EditText에 입력된 내용이 TextView에 업데이트되도록&amp;nbsp; FragmentOne.kt 에 아래처럼 코드를 추가해 볼게요.&lt;/p&gt;
&lt;div style=&quot;background-color: #1e1f22; color: #bcbec4;&quot;&gt;
&lt;pre class=&quot;kotlin&quot;&gt;&lt;code&gt;override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
    super.onViewCreated(view, savedInstanceState)

    binding.btn1.setOnClickListener {
        binding.tvOne.text = binding.et.text
    }
}&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;lt; FragmentOne.kt 전체 code&amp;gt;&lt;/p&gt;
&lt;div style=&quot;background-color: #1e1f22; color: #bcbec4;&quot;&gt;
&lt;pre class=&quot;bash&quot; data-ke-language=&quot;bash&quot;&gt;&lt;code&gt;package com.example.viewpager2_fragment
import android.os.Bundle
import androidx.fragment.app.Fragment
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import com.example.viewpager2_fragment.databinding.FragmentOneBinding

class FragmentOne : Fragment() {

    private var _binding : FragmentOneBinding? = null
    private val binding get() = _binding!!

//        override fun onCreate(savedInstanceState: Bundle?) {
//        super.onCreate(savedInstanceState)
//    }
    override fun onCreateView(
        inflater: LayoutInflater, container: ViewGroup?,
        savedInstanceState: Bundle?
    ): View? {
        _binding = FragmentOneBinding.inflate(inflater,container,false)
        return _binding?.root
    }

    override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
        super.onViewCreated(view, savedInstanceState)

        binding.btn1.setOnClickListener {
            binding.tvOne.text = binding.et.text
        }
    }

    override fun onDestroyView() {
        super.onDestroyView()
        _binding = null
    }
}&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;이렇게까지만 해주면 EditText에 입력한 내용이 Button을 클릭하면 TextView에 적용이(업데이트) 됩니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;413&quot; data-origin-height=&quot;898&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/luCwQ/btsKUGvnjmM/Khhi2aXloKcoIX8WD3Wa5k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/luCwQ/btsKUGvnjmM/Khhi2aXloKcoIX8WD3Wa5k/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/luCwQ/btsKUGvnjmM/Khhi2aXloKcoIX8WD3Wa5k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FluCwQ%2FbtsKUGvnjmM%2FKhhi2aXloKcoIX8WD3Wa5k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;413&quot; height=&quot;898&quot; data-origin-width=&quot;413&quot; data-origin-height=&quot;898&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;그리고 뷰페이저2와 TabLayout이 연동이 되어 작동되기 때문에, 손가락으로 화면을 좌우로 스와이프 하거나 TabLayer의 각각의 탭을 터치하면 동일하게 화면 전환 되는 것을 볼 수 있어요.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;VewPager2_Result2(추가실습).png&quot; data-origin-width=&quot;1475&quot; data-origin-height=&quot;894&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/q7HIF/btsKUD6qWKv/O11la7wIRj9LIbqFQFsMh0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/q7HIF/btsKUD6qWKv/O11la7wIRj9LIbqFQFsMh0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/q7HIF/btsKUD6qWKv/O11la7wIRj9LIbqFQFsMh0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fq7HIF%2FbtsKUD6qWKv%2FO11la7wIRj9LIbqFQFsMh0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1475&quot; height=&quot;894&quot; data-filename=&quot;VewPager2_Result2(추가실습).png&quot; data-origin-width=&quot;1475&quot; data-origin-height=&quot;894&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;그럼, 실제 동작되는 모습을 아래 영상으로 확인해 보세요.&lt;/p&gt;
&lt;figure data-ke-type=&quot;video&quot; data-ke-style=&quot;alignCenter&quot; data-video-host=&quot;kakaotv&quot; data-video-url=&quot;https://tv.kakao.com/v/451169138&quot; data-video-thumbnail=&quot;https://scrap.kakaocdn.net/dn/cVtQOs/hyXC70MmLt/HuQsQ2mNjtWnib20VfwR60/img.jpg?width=406&amp;amp;height=892&amp;amp;face=0_0_406_892,https://scrap.kakaocdn.net/dn/0CMGY/hyXzTiPlMu/h64YLun72Sj0Fyb1mWJPK1/img.jpg?width=406&amp;amp;height=892&amp;amp;face=0_0_406_892&quot; data-video-width=&quot;406&quot; data-video-height=&quot;892&quot; data-video-origin-width=&quot;406&quot; data-video-origin-height=&quot;892&quot; data-ke-mobilestyle=&quot;widthContent&quot; data-video-title=&quot;'라즈이노 iOT'에서 업로드한 동영상&quot; data-video-play-service=&quot;daum_tistory&quot; data-original-url=&quot;&quot;&gt;&lt;iframe src=&quot;https://play-tv.kakao.com/embed/player/cliplink/451169138?service=daum_tistory&quot; width=&quot;406&quot; height=&quot;892&quot; frameborder=&quot;0&quot; allowfullscreen=&quot;true&quot;&gt;&lt;/iframe&gt;
&lt;figcaption style=&quot;display: none;&quot;&gt;&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;이번 시간에는 지난 시간에 이어 뷰페이저2에 TabLayout을 연동해 보고, EditText를 이용해 타이틀을 변경해 보는 기능에 대해 살펴보았습니다.&amp;nbsp; 그럼 오늘 하루도 좋은 하루 보내세요~&amp;nbsp;&amp;nbsp;&lt;/p&gt;</description>
      <category>App개발/Android_Studio</category>
      <category>kotlin viewpager2 tablayout</category>
      <category>viewpager2 tablayout 연동 연결하기</category>
      <category>뷰페이저2 탭 레이아웃</category>
      <category>안드로이드 스튜디오 뷰페이저2 tablayout 실습</category>
      <category>오블완</category>
      <category>티스토리챌린지</category>
      <author>엑소더스팩토리</author>
      <guid isPermaLink="true">https://rasino.tistory.com/396</guid>
      <comments>https://rasino.tistory.com/396#entry396comment</comments>
      <pubDate>Sun, 24 Nov 2024 18:01:05 +0900</pubDate>
    </item>
    <item>
      <title>【AndroidStudio】 ViewPager2(뷰페이저2) 실습 #1</title>
      <link>https://rasino.tistory.com/395</link>
      <description>&lt;h3 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size23&quot;&gt;&amp;nbsp;안드로이드 스튜디오에서(with코틀린) 앱을 만들 때, 가장 많이 사용되는 기능 중 하나인 ViewPager2(뷰페이저 2) 사용법에 대해 다루어 볼게요.&amp;nbsp;&lt;/h3&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;뷰페이저란?&amp;nbsp;&lt;br /&gt;&lt;/b&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;앱을 사용할 때 손가락으로 화면을 넘길 때 한 화면에서 다른 화면으로 넘어가며 보여주는 기능을 사용하려 할 때 사용되는 기능을 말해요.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&lt;br /&gt;1. New Project &amp;rarr; Empty Views Activity를 선택하고&amp;nbsp; Title을 정해주세요.&amp;nbsp; 여기서는 ViewPager2_fragment 라고 하였습니다. (페이지 구성을 fragment로 간단히 3개의 페이지로 구성해 볼게요)&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;이번 실습의 구현 결과는 아래와 같습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;VewPager2_Result_최종.png&quot; data-origin-width=&quot;1469&quot; data-origin-height=&quot;986&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/kCLbR/btsKMaRhi0m/RsVuk4pVZTjuQRR0hnvaQk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/kCLbR/btsKMaRhi0m/RsVuk4pVZTjuQRR0hnvaQk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/kCLbR/btsKMaRhi0m/RsVuk4pVZTjuQRR0hnvaQk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FkCLbR%2FbtsKMaRhi0m%2FRsVuk4pVZTjuQRR0hnvaQk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1469&quot; height=&quot;986&quot; data-filename=&quot;VewPager2_Result_최종.png&quot; data-origin-width=&quot;1469&quot; data-origin-height=&quot;986&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;프로젝트 구성은 아래와 같습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1883&quot; data-origin-height=&quot;734&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/97TRp/btsKMm4JADf/k4UBsobMNckDIcl5x4F5r1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/97TRp/btsKMm4JADf/k4UBsobMNckDIcl5x4F5r1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/97TRp/btsKMm4JADf/k4UBsobMNckDIcl5x4F5r1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F97TRp%2FbtsKMm4JADf%2Fk4UBsobMNckDIcl5x4F5r1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1883&quot; height=&quot;734&quot; data-origin-width=&quot;1883&quot; data-origin-height=&quot;734&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;처음, 프로젝트를 생성하고서, 비어있는 Fragment 페이지 3개을 아래처럼 만들어주세요.&lt;br /&gt;res &amp;gt;&amp;gt; layout 폴더에서 마우스 우클릭(RMB) 하거나,&amp;nbsp; app&amp;gt;&amp;gt;kotlin+java&amp;nbsp; 폴더에서 RMB 한 다음,&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1400&quot; data-origin-height=&quot;1041&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/c6KUy7/btsKMFDeMHv/uz7ESv0ZQVxMSnkimvMMY1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/c6KUy7/btsKMFDeMHv/uz7ESv0ZQVxMSnkimvMMY1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/c6KUy7/btsKMFDeMHv/uz7ESv0ZQVxMSnkimvMMY1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fc6KUy7%2FbtsKMFDeMHv%2Fuz7ESv0ZQVxMSnkimvMMY1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1400&quot; height=&quot;1041&quot; data-origin-width=&quot;1400&quot; data-origin-height=&quot;1041&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;우선, FragmentOne으로 이름을 적으면, 그 아래 Layout 이름도 자동으로 네이밍 되면서 Layout File도 자동으로 생성됩니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;578&quot; data-origin-height=&quot;424&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/kFAX5/btsKL9LDBUf/GF9SinjwrVwhyzILNKz5I1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/kFAX5/btsKL9LDBUf/GF9SinjwrVwhyzILNKz5I1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/kFAX5/btsKL9LDBUf/GF9SinjwrVwhyzILNKz5I1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FkFAX5%2FbtsKL9LDBUf%2FGF9SinjwrVwhyzILNKz5I1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;578&quot; height=&quot;424&quot; data-origin-width=&quot;578&quot; data-origin-height=&quot;424&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;이런 식으로, FragmentOne, FragmentTwo, FragmentThree 이렇게 3개의 파일을 생성해 주세요.&lt;br /&gt;그럼 아래처럼 각각 3개씩의 .Xml 파일과 클래서(.kt) 생성되어 있을 거예요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;368&quot; data-origin-height=&quot;629&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bYPJpQ/btsKMCNg3me/JzVeRDG1IpNIe4j7lYB95K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bYPJpQ/btsKMCNg3me/JzVeRDG1IpNIe4j7lYB95K/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bYPJpQ/btsKMCNg3me/JzVeRDG1IpNIe4j7lYB95K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbYPJpQ%2FbtsKMCNg3me%2FJzVeRDG1IpNIe4j7lYB95K%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;368&quot; height=&quot;629&quot; data-origin-width=&quot;368&quot; data-origin-height=&quot;629&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;우선, binding 기능을 사용하기 위해서 와래와 같이 바인딩 기능을 설정해 주세요.&lt;/p&gt;
&lt;h4 style=&quot;background-color: #ffffff; color: #2d2c2d; text-align: start;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;▶&lt;span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;viewBinding 사용법&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/h4&gt;
&lt;p style=&quot;background-color: #ffffff; color: #2d2c2d; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;① build.gradle.kts (Module:app) 파일을 클릭하여 android {&amp;nbsp; ...&amp;nbsp; }&amp;nbsp; 항목 속에 아래코드를 추가해 주세요.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;background-color: #ffffff; color: #2d2c2d; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&lt;span style=&quot;color: #ef5369;&quot;&gt;viewBinding&lt;/span&gt;.&lt;span style=&quot;color: #ef5369;&quot;&gt;isEnabled&lt;/span&gt;&amp;nbsp;=&amp;nbsp;&lt;span style=&quot;color: #ef6f53;&quot;&gt;true&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1731831624209&quot; class=&quot;nix&quot; style=&quot;background-color: #ffffff; color: #2d2c2d; text-align: start;&quot; data-ke-type=&quot;codeblock&quot; data-ke-language=&quot;kotlin&quot;&gt;&lt;code&gt;android {
    namespace = &quot;com.example.resourcetest&quot;
    compileSdk = 34
    viewBinding.isEnabled = true
    defaultConfig {
        applicationId = &quot;com.example.resourcetest&quot;
        minSdk = 24
        targetSdk = 34
        versionCode = 1
        versionName = &quot;1.0&quot;

        testInstrumentationRunner = &quot;androidx.test.runner.AndroidJUnitRunner&quot;
    }&lt;/code&gt;&lt;/pre&gt;
&lt;p style=&quot;background-color: #ffffff; color: #2d2c2d; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;코드 추가 후 상단에 보이는 Sync Now를 클릭하여 적용시켜 주세요.(아래)&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1053&quot; data-origin-height=&quot;409&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/w2KpW/btsKLeNpDaI/MHKOu73cYrdgJE2aTpJLPK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/w2KpW/btsKLeNpDaI/MHKOu73cYrdgJE2aTpJLPK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/w2KpW/btsKLeNpDaI/MHKOu73cYrdgJE2aTpJLPK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fw2KpW%2FbtsKLeNpDaI%2FMHKOu73cYrdgJE2aTpJLPK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1053&quot; height=&quot;409&quot; data-origin-width=&quot;1053&quot; data-origin-height=&quot;409&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;2. activity_main.xml 작성하기&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;아래와 같이 viewpager2 기능을 삽입하고 id는 &quot;pager&quot;라고 입력해 주세요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1267&quot; data-origin-height=&quot;645&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/be7Z36/btsKKPf6MXz/7a7f4WAceXexjoL3CKxHkK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/be7Z36/btsKKPf6MXz/7a7f4WAceXexjoL3CKxHkK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/be7Z36/btsKKPf6MXz/7a7f4WAceXexjoL3CKxHkK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbe7Z36%2FbtsKKPf6MXz%2F7a7f4WAceXexjoL3CKxHkK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1267&quot; height=&quot;645&quot; data-origin-width=&quot;1267&quot; data-origin-height=&quot;645&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;3. fragment_one.xml 과 &lt;b&gt;fragment_two.xml&lt;/b&gt; , &lt;b&gt;fragment_three.xml&lt;/b&gt; 파일 작성하기&lt;br /&gt;&lt;/b&gt;아래처럼 적당한 색상과 배경으로 3개의 파일의 id를 서로 다르게 하여 작성해 주세요.&lt;br /&gt;(단, 이번 실습에서는, FrgmentOne~Three.kt 클래스 파일의 내용은 사용하지 않기 때문에 자동 생성된 형태 그대로 두세요)&lt;br /&gt;① fragment_one.xml&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1381&quot; data-origin-height=&quot;896&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bdojaQ/btsKKO9nGBV/udOc44dqnv35KVYT4ky3m0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bdojaQ/btsKKO9nGBV/udOc44dqnv35KVYT4ky3m0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bdojaQ/btsKKO9nGBV/udOc44dqnv35KVYT4ky3m0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbdojaQ%2FbtsKKO9nGBV%2FudOc44dqnv35KVYT4ky3m0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1381&quot; height=&quot;896&quot; data-origin-width=&quot;1381&quot; data-origin-height=&quot;896&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;lt;code&amp;gt;&lt;/p&gt;
&lt;div style=&quot;background-color: #1e1f22; color: #bcbec4;&quot;&gt;
&lt;pre class=&quot;xml&quot;&gt;&lt;code&gt;&amp;lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&amp;gt;
&amp;lt;androidx.constraintlayout.widget.ConstraintLayout xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;
    xmlns:app=&quot;http://schemas.android.com/apk/res-auto&quot;
    xmlns:tools=&quot;http://schemas.android.com/tools&quot;
    android:id=&quot;@+id/frameLayout&quot;
    android:layout_width=&quot;match_parent&quot;
    android:layout_height=&quot;match_parent&quot;
    android:background=&quot;#8B71C3&quot;
    tools:context=&quot;.FragmentOne&quot;&amp;gt;

    &amp;lt;TextView
        android:id=&quot;@+id/tv_one&quot;
        android:layout_width=&quot;wrap_content&quot;
        android:layout_height=&quot;wrap_content&quot;
        android:text=&quot;One&quot;
        android:textAlignment=&quot;center&quot;
        android:textColor=&quot;@color/white&quot;
        android:textSize=&quot;34sp&quot;
        android:textStyle=&quot;bold&quot;
        app:layout_constraintBottom_toBottomOf=&quot;parent&quot;
        app:layout_constraintEnd_toEndOf=&quot;parent&quot;
        app:layout_constraintHorizontal_bias=&quot;0.5&quot;
        app:layout_constraintStart_toStartOf=&quot;parent&quot;
        app:layout_constraintTop_toTopOf=&quot;parent&quot;
        app:layout_constraintVertical_bias=&quot;0.5&quot; /&amp;gt;

&amp;lt;/androidx.constraintlayout.widget.ConstraintLayout&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;② fragment_two.xml&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1377&quot; data-origin-height=&quot;834&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/n0MbN/btsKMFiXPon/1snUowjQPsmm20IOng9mS0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/n0MbN/btsKMFiXPon/1snUowjQPsmm20IOng9mS0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/n0MbN/btsKMFiXPon/1snUowjQPsmm20IOng9mS0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fn0MbN%2FbtsKMFiXPon%2F1snUowjQPsmm20IOng9mS0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1377&quot; height=&quot;834&quot; data-origin-width=&quot;1377&quot; data-origin-height=&quot;834&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;lt;code&amp;gt;&lt;/p&gt;
&lt;div style=&quot;background-color: #1e1f22; color: #bcbec4;&quot;&gt;
&lt;pre class=&quot;xml&quot;&gt;&lt;code&gt;&amp;lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&amp;gt;
&amp;lt;androidx.constraintlayout.widget.ConstraintLayout xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;
    xmlns:app=&quot;http://schemas.android.com/apk/res-auto&quot;
    xmlns:tools=&quot;http://schemas.android.com/tools&quot;
    android:id=&quot;@+id/frameLayout&quot;
    android:layout_width=&quot;match_parent&quot;
    android:layout_height=&quot;match_parent&quot;
    android:background=&quot;#4E8138&quot;
    tools:context=&quot;.FragmentTwo&quot;&amp;gt;

    &amp;lt;!-- TODO: Update blank fragment layout --&amp;gt;
    &amp;lt;TextView
        android:id=&quot;@+id/tv_two&quot;
        android:layout_width=&quot;wrap_content&quot;
        android:layout_height=&quot;wrap_content&quot;
        android:text=&quot;Two&quot;
        android:textSize=&quot;34sp&quot;
        android:textStyle=&quot;bold&quot;
        android:textAlignment=&quot;center&quot;
        android:textColor=&quot;@color/white&quot;
        app:layout_constraintBottom_toBottomOf=&quot;parent&quot;
        app:layout_constraintEnd_toEndOf=&quot;parent&quot;
        app:layout_constraintHorizontal_bias=&quot;0.5&quot;
        app:layout_constraintStart_toStartOf=&quot;parent&quot;
        app:layout_constraintTop_toTopOf=&quot;parent&quot;
        app:layout_constraintVertical_bias=&quot;0.5&quot; /&amp;gt;

&amp;lt;/androidx.constraintlayout.widget.ConstraintLayout&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;③ fragment_three.xml&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1354&quot; data-origin-height=&quot;826&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bDQ2Fm/btsKKPG8dnk/dPJMcq5D6XxcvjeU3F12nK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bDQ2Fm/btsKKPG8dnk/dPJMcq5D6XxcvjeU3F12nK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bDQ2Fm/btsKKPG8dnk/dPJMcq5D6XxcvjeU3F12nK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbDQ2Fm%2FbtsKKPG8dnk%2FdPJMcq5D6XxcvjeU3F12nK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1354&quot; height=&quot;826&quot; data-origin-width=&quot;1354&quot; data-origin-height=&quot;826&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;lt;code&amp;gt;&lt;/p&gt;
&lt;div style=&quot;background-color: #1e1f22; color: #bcbec4;&quot;&gt;
&lt;pre class=&quot;xml&quot;&gt;&lt;code&gt;&amp;lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&amp;gt;
&amp;lt;androidx.constraintlayout.widget.ConstraintLayout xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;
    xmlns:app=&quot;http://schemas.android.com/apk/res-auto&quot;
    xmlns:tools=&quot;http://schemas.android.com/tools&quot;
    android:id=&quot;@+id/frameLayout&quot;
    android:layout_width=&quot;match_parent&quot;
    android:layout_height=&quot;match_parent&quot;
    android:background=&quot;#B46C01&quot;
    tools:context=&quot;.FragmentThree&quot;&amp;gt;

    &amp;lt;!-- TODO: Update blank fragment layout --&amp;gt;
    &amp;lt;TextView
        android:id=&quot;@+id/tv_three&quot;
        android:layout_width=&quot;wrap_content&quot;
        android:layout_height=&quot;wrap_content&quot;
        android:text=&quot;Three&quot;
        android:textSize=&quot;34sp&quot;
        android:textStyle=&quot;bold&quot;
        android:textAlignment=&quot;center&quot;
        android:textColor=&quot;@color/white&quot;
        app:layout_constraintBottom_toBottomOf=&quot;parent&quot;
        app:layout_constraintEnd_toEndOf=&quot;parent&quot;
        app:layout_constraintHorizontal_bias=&quot;0.5&quot;
        app:layout_constraintStart_toStartOf=&quot;parent&quot;
        app:layout_constraintTop_toTopOf=&quot;parent&quot;
        app:layout_constraintVertical_bias=&quot;0.5&quot; /&amp;gt;

&amp;lt;/androidx.constraintlayout.widget.ConstraintLayout&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;4. MyFragmentAdapter.kt&lt;span&gt;&amp;nbsp;&lt;/span&gt;파일 작성하기&lt;br /&gt;&lt;/b&gt;아래와 같은 이름으로 어댑터 클래스를 하나 만들고 내용을 입력해 주세요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;810&quot; data-origin-height=&quot;606&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cDO2AV/btsKNoU56GH/k4XTs5h8nk5VpHouxvpUA1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cDO2AV/btsKNoU56GH/k4XTs5h8nk5VpHouxvpUA1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cDO2AV/btsKNoU56GH/k4XTs5h8nk5VpHouxvpUA1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcDO2AV%2FbtsKNoU56GH%2Fk4XTs5h8nk5VpHouxvpUA1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;810&quot; height=&quot;606&quot; data-origin-width=&quot;810&quot; data-origin-height=&quot;606&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;MyFragmentAdapter.kt 파일의 &amp;lt;code&amp;gt;&lt;/p&gt;
&lt;div style=&quot;background-color: #1e1f22; color: #bcbec4;&quot;&gt;
&lt;pre class=&quot;kotlin&quot;&gt;&lt;code&gt;package com.example.viewpager2_fragment

import androidx.fragment.app.Fragment
import androidx.fragment.app.FragmentManager
import androidx.lifecycle.Lifecycle
import androidx.viewpager2.adapter.FragmentStateAdapter

class MyFragmentAdapter(
    val fragments: List&amp;lt;Fragment&amp;gt;,
    fragmentManager: FragmentManager, lifecycle: Lifecycle): FragmentStateAdapter( fragmentManager, lifecycle
) {
    override fun getItemCount(): Int {
        return fragments.size
    }

    override fun createFragment(position: Int): Fragment {
        return fragments[position]
    }
}&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;5. MainActivity.kt&lt;span&gt;&amp;nbsp;&lt;/span&gt;파일 작성하기&lt;br /&gt;&lt;/b&gt;아래와 같은 코드로 MainActivity.kt 파일을 완성해 주세요.&lt;/p&gt;
&lt;div style=&quot;background-color: #1e1f22; color: #bcbec4;&quot;&gt;
&lt;pre class=&quot;haskell&quot;&gt;&lt;code&gt;package com.example.viewpager2_fragment

import android.os.Bundle
import androidx.activity.enableEdgeToEdge
import androidx.appcompat.app.AppCompatActivity
import androidx.fragment.app.Fragment
import com.example.viewpager2_fragment.databinding.ActivityMainBinding

class MainActivity : AppCompatActivity() {
    private lateinit var binding: ActivityMainBinding
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)

        enableEdgeToEdge()
        binding = ActivityMainBinding.inflate(layoutInflater)
        setContentView(binding.root)

        val fragments : List&amp;lt;Fragment&amp;gt; = listOf(
            FragmentOne(),
            FragmentTwo(),
            FragmentThree()
        )
        val adapter = MyFragmentAdapter(fragments, supportFragmentManager, lifecycle)

        binding.pager.adapter = adapter
    }
}&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;6. 실행 결과 보기&lt;br /&gt;&lt;/b&gt;여기까지 작성하고 에러가 나지 않는 다면, 실행해 보면 아래와 같은 결과를 보실 수 있습니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;VewPager2_Result_최종.png&quot; data-origin-width=&quot;1469&quot; data-origin-height=&quot;986&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/kCLbR/btsKMaRhi0m/RsVuk4pVZTjuQRR0hnvaQk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/kCLbR/btsKMaRhi0m/RsVuk4pVZTjuQRR0hnvaQk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/kCLbR/btsKMaRhi0m/RsVuk4pVZTjuQRR0hnvaQk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FkCLbR%2FbtsKMaRhi0m%2FRsVuk4pVZTjuQRR0hnvaQk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1469&quot; height=&quot;986&quot; data-filename=&quot;VewPager2_Result_최종.png&quot; data-origin-width=&quot;1469&quot; data-origin-height=&quot;986&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;lt;실행 영상&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;figure data-ke-type=&quot;video&quot; data-ke-style=&quot;alignCenter&quot; data-video-host=&quot;kakaotv&quot; data-video-url=&quot;https://tv.kakao.com/v/451004972&quot; data-video-thumbnail=&quot;https://scrap.kakaocdn.net/dn/hi6H1/hyXzUgaVH1/pHET2gt4VbhgR58k9SXDdk/img.jpg?width=406&amp;amp;height=892&amp;amp;face=0_0_406_892,https://scrap.kakaocdn.net/dn/NckF0/hyXwnc10gy/iqiVGsuAC6c1CZdykuBpAK/img.jpg?width=406&amp;amp;height=892&amp;amp;face=0_0_406_892&quot; data-video-width=&quot;406&quot; data-video-height=&quot;892&quot; data-video-origin-width=&quot;406&quot; data-video-origin-height=&quot;892&quot; data-ke-mobilestyle=&quot;widthContent&quot; data-video-title=&quot;'라즈이노 iOT'에서 업로드한 동영상&quot; data-video-play-service=&quot;daum_tistory&quot; data-original-url=&quot;&quot;&gt;&lt;iframe src=&quot;https://play-tv.kakao.com/embed/player/cliplink/451004972?service=daum_tistory&quot; width=&quot;406&quot; height=&quot;892&quot; frameborder=&quot;0&quot; allowfullscreen=&quot;true&quot;&gt;&lt;/iframe&gt;
&lt;figcaption style=&quot;display: none;&quot;&gt;&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그럼, 다음 시간에 이번 실습에 이어서 기능을 더 추가해 보도록 할게요.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;감사합니다. 좋은 하루 되세요.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>App개발/Android_Studio</category>
      <category>fragment 프래그먼트로 뷰페이저2구현하기</category>
      <category>kotlin viewpager2</category>
      <category>viewpager2기능사용하기</category>
      <category>뷰페이저2 실습</category>
      <category>오블완</category>
      <category>코틀린 뷰페이저2</category>
      <category>티스토리챌린지</category>
      <author>엑소더스팩토리</author>
      <guid isPermaLink="true">https://rasino.tistory.com/395</guid>
      <comments>https://rasino.tistory.com/395#entry395comment</comments>
      <pubDate>Sun, 17 Nov 2024 17:44:25 +0900</pubDate>
    </item>
    <item>
      <title>【AndroidStudio】 RecyclerView 실습 #3( Card View 기능 추가하기)</title>
      <link>https://rasino.tistory.com/394</link>
      <description>&lt;h3 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size23&quot;&gt;이번 시간에도 안드로이드 스튜디오에서(with코틀린) 가장 많이 활용되는 기능 중 하나인 RecyclerView를 연습해 볼 텐데요, 여기에 Card View 기능을 활용해 보려고 합니다.&lt;/h3&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&lt;br /&gt;1. New Project &amp;rarr; Empty Views Activity를 선택하고&amp;nbsp; Title을 정해주세요.&amp;nbsp; 여기서는 RecycleView4 라고 하였습니다.&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;프로젝트의 구성은 아래와 같습니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;368&quot; data-origin-height=&quot;636&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/C2JtS/btsKKqZV33W/DvmDqzndeplPatVqasZw5K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/C2JtS/btsKKqZV33W/DvmDqzndeplPatVqasZw5K/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/C2JtS/btsKKqZV33W/DvmDqzndeplPatVqasZw5K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FC2JtS%2FbtsKKqZV33W%2FDvmDqzndeplPatVqasZw5K%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;368&quot; height=&quot;636&quot; data-origin-width=&quot;368&quot; data-origin-height=&quot;636&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;실행결과는 아래와 같아요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;405&quot; data-origin-height=&quot;899&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cAUojU/btsKJlZI86e/O4FkvyWHKrRwUF5LB736r0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cAUojU/btsKJlZI86e/O4FkvyWHKrRwUF5LB736r0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cAUojU/btsKJlZI86e/O4FkvyWHKrRwUF5LB736r0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcAUojU%2FbtsKJlZI86e%2FO4FkvyWHKrRwUF5LB736r0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;350&quot; height=&quot;777&quot; data-origin-width=&quot;405&quot; data-origin-height=&quot;899&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;화면을 위아래로 스크롤 해서 여러 가지 메뉴를 보여주도록 했는데요, View를 재활용 보여줄 때 &quot;Card View&quot; 기능을 사용해서 보여주면 좀 더 입체적으로 보여줄 수 있어서 잘 활용하면 좋습니다.&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;1. activity_main.xml&amp;nbsp; 작성하기&lt;/b&gt;&lt;/h4&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1392&quot; data-origin-height=&quot;943&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/zqx6c/btsKKcU9rxu/16vc4HxltbrKLyC8mrjR4K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/zqx6c/btsKKcU9rxu/16vc4HxltbrKLyC8mrjR4K/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/zqx6c/btsKKcU9rxu/16vc4HxltbrKLyC8mrjR4K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fzqx6c%2FbtsKKcU9rxu%2F16vc4HxltbrKLyC8mrjR4K%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1392&quot; height=&quot;943&quot; data-origin-width=&quot;1392&quot; data-origin-height=&quot;943&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;lt;코드&amp;gt;&lt;/p&gt;
&lt;pre id=&quot;code_1731598587107&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&amp;gt;
&amp;lt;androidx.constraintlayout.widget.ConstraintLayout xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;
    xmlns:app=&quot;http://schemas.android.com/apk/res-auto&quot;
    xmlns:tools=&quot;http://schemas.android.com/tools&quot;
    android:id=&quot;@+id/main&quot;
    android:layout_width=&quot;match_parent&quot;
    android:layout_height=&quot;match_parent&quot;
    tools:context=&quot;.MainActivity&quot;&amp;gt;

    &amp;lt;TextView
        android:id=&quot;@+id/tv_title&quot;
        android:layout_width=&quot;wrap_content&quot;
        android:layout_height=&quot;0dp&quot;
        android:layout_marginTop=&quot;32dp&quot;
        android:text=&quot;Korean Delicious Food&quot;
        android:textColor=&quot;#FF5722&quot;
        android:textSize=&quot;20dp&quot;
        android:textStyle=&quot;bold&quot;
        app:layout_constraintEnd_toEndOf=&quot;parent&quot;
        app:layout_constraintStart_toStartOf=&quot;parent&quot;
        app:layout_constraintTop_toTopOf=&quot;parent&quot; /&amp;gt;

    &amp;lt;androidx.recyclerview.widget.RecyclerView
        android:id=&quot;@+id/rv_recyclerView&quot;
        android:layout_width=&quot;0dp&quot;
        android:layout_height=&quot;0dp&quot;
        android:layout_marginStart=&quot;8dp&quot;
        android:layout_marginTop=&quot;16dp&quot;
        android:layout_marginEnd=&quot;8dp&quot;
        android:layout_marginBottom=&quot;8dp&quot;
        app:layout_constraintBottom_toBottomOf=&quot;parent&quot;
        app:layout_constraintEnd_toEndOf=&quot;parent&quot;
        app:layout_constraintStart_toStartOf=&quot;parent&quot;
        app:layout_constraintTop_toBottomOf=&quot;@+id/tv_title&quot;
         /&amp;gt;
&amp;lt;/androidx.constraintlayout.widget.ConstraintLayout&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;2.&amp;nbsp; food_item.xml&amp;nbsp; 작성하기&lt;/b&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래를 참고해서 레이아웃에서 cardview를 끌어다 놓고 작성을 해 주세요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1386&quot; data-origin-height=&quot;993&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ICs71/btsKId2r6W2/gAKSiuQSCosGf10lgea8h1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ICs71/btsKId2r6W2/gAKSiuQSCosGf10lgea8h1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ICs71/btsKId2r6W2/gAKSiuQSCosGf10lgea8h1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FICs71%2FbtsKId2r6W2%2FgAKSiuQSCosGf10lgea8h1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1386&quot; height=&quot;993&quot; data-origin-width=&quot;1386&quot; data-origin-height=&quot;993&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;lt;코드&amp;gt;&lt;/p&gt;
&lt;pre id=&quot;code_1731599072842&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&amp;gt;
&amp;lt;androidx.constraintlayout.widget.ConstraintLayout xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;
    xmlns:app=&quot;http://schemas.android.com/apk/res-auto&quot;
    xmlns:tools=&quot;http://schemas.android.com/tools&quot;
    android:layout_width=&quot;match_parent&quot;
    android:layout_height=&quot;wrap_content&quot;
    android:orientation=&quot;vertical&quot;&amp;gt;
    &amp;lt;androidx.cardview.widget.CardView
        android:id=&quot;@+id/cardView&quot;
        android:layout_width=&quot;0dp&quot;
        android:layout_height=&quot;wrap_content&quot;
        android:layout_marginHorizontal=&quot;10dp&quot;
        android:layout_marginVertical=&quot;6dp&quot;
        android:layout_marginStart=&quot;10dp&quot;
        android:layout_marginTop=&quot;8dp&quot;
        android:layout_marginEnd=&quot;10dp&quot;
        app:cardCornerRadius=&quot;20dp&quot;
        app:cardElevation=&quot;8dp&quot;
        app:layout_constraintBottom_toBottomOf=&quot;parent&quot;
        app:layout_constraintEnd_toEndOf=&quot;parent&quot;
        app:layout_constraintStart_toStartOf=&quot;parent&quot;
        app:layout_constraintTop_toTopOf=&quot;parent&quot;&amp;gt;
        &amp;lt;androidx.constraintlayout.widget.ConstraintLayout
            android:id=&quot;@+id/constraintLayout&quot;
            android:layout_width=&quot;match_parent&quot;
            android:layout_height=&quot;wrap_content&quot;&amp;gt;
            &amp;lt;ImageView
                android:id=&quot;@+id/iV_foodImage&quot;
                android:layout_width=&quot;100dp&quot;
                android:layout_height=&quot;100dp&quot;
                android:scaleType=&quot;fitXY&quot;
                android:src=&quot;@drawable/bibimbab_01&quot;
                app:layout_constraintBottom_toBottomOf=&quot;parent&quot;
                app:layout_constraintStart_toStartOf=&quot;parent&quot;
                app:layout_constraintTop_toTopOf=&quot;parent&quot; /&amp;gt;
            &amp;lt;TextView
                android:id=&quot;@+id/tv_foodName&quot;
                android:layout_width=&quot;wrap_content&quot;
                android:layout_height=&quot;wrap_content&quot;
                android:text=&quot;Bibimbap\n(비빔밥)&quot;
                android:textAlignment=&quot;center&quot;
                android:textSize=&quot;25dp&quot;
                app:layout_constraintBottom_toBottomOf=&quot;parent&quot;
                app:layout_constraintEnd_toEndOf=&quot;parent&quot;
                app:layout_constraintHorizontal_bias=&quot;0.52&quot;
                app:layout_constraintStart_toEndOf=&quot;@+id/iV_foodImage&quot;
                app:layout_constraintTop_toTopOf=&quot;parent&quot; /&amp;gt;
        &amp;lt;/androidx.constraintlayout.widget.ConstraintLayout&amp;gt;
    &amp;lt;/androidx.cardview.widget.CardView&amp;gt;

&amp;lt;/androidx.constraintlayout.widget.ConstraintLayout&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;3.&amp;nbsp; Food.kt&amp;nbsp; 클래스 작성하기&lt;/b&gt;&lt;/h4&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;868&quot; data-origin-height=&quot;632&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cCVTre/btsKKc8GtV4/43Kt3M4mATj9QAOkGA1lk1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cCVTre/btsKKc8GtV4/43Kt3M4mATj9QAOkGA1lk1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cCVTre/btsKKc8GtV4/43Kt3M4mATj9QAOkGA1lk1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcCVTre%2FbtsKKc8GtV4%2F43Kt3M4mATj9QAOkGA1lk1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;868&quot; height=&quot;632&quot; data-origin-width=&quot;868&quot; data-origin-height=&quot;632&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;lt;코드&amp;gt;&lt;/p&gt;
&lt;pre id=&quot;code_1731599339511&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;package com.example.recyclerview4

import android.os.Parcel
import android.os.Parcelable

data class Food(val image:Int, val name:String) : Parcelable {
    constructor(parcel: Parcel) : this(parcel.readInt(), parcel.readString()!!) {
    }
    override fun describeContents(): Int {
        return 0
    }
    override fun writeToParcel(parcel: Parcel, flags: Int) {
        parcel.writeInt(image)
        parcel.writeString(name)
    }
    companion object CREATOR : Parcelable.Creator&amp;lt;Food&amp;gt; {
        override fun createFromParcel(parcel: Parcel): Food {
            return Food(parcel)
        }
        override fun newArray(size: Int): Array&amp;lt;Food?&amp;gt; {
            return arrayOfNulls(size)
        }
    }
}&lt;/code&gt;&lt;/pre&gt;
&lt;h4 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size20&quot;&gt;&amp;nbsp;&lt;/h4&gt;
&lt;h4 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;4.&amp;nbsp; FoodAdapter.kt&amp;nbsp; 작성하기&lt;/b&gt;&lt;/h4&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;아래를 참고해 Food Adapter를 만들어 줍니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1006&quot; data-origin-height=&quot;733&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/WlQlH/btsKKnPGtWq/waI6NKrTefZ0VsvoPbvdG1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/WlQlH/btsKKnPGtWq/waI6NKrTefZ0VsvoPbvdG1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/WlQlH/btsKKnPGtWq/waI6NKrTefZ0VsvoPbvdG1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FWlQlH%2FbtsKKnPGtWq%2FwaI6NKrTefZ0VsvoPbvdG1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1006&quot; height=&quot;733&quot; data-origin-width=&quot;1006&quot; data-origin-height=&quot;733&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;lt;코드&amp;gt;&lt;/p&gt;
&lt;pre id=&quot;code_1731599589454&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;package com.example.recyclerview4

import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import android.widget.AdapterView.OnItemClickListener
import android.widget.ImageView
import android.widget.TextView
import androidx.recyclerview.widget.RecyclerView

class FoodAdapter(private val foodList:ArrayList&amp;lt;Food&amp;gt;)
    : RecyclerView.Adapter&amp;lt;FoodAdapter.FoodViewHolder&amp;gt;() {
        var onItemClick : ((Food) -&amp;gt; Unit)? = null

        class FoodViewHolder(itemView:View) : RecyclerView.ViewHolder(itemView) {
            val imageView : ImageView = itemView.findViewById(R.id.iV_foodImage)
            val textView : TextView = itemView.findViewById(R.id.tv_foodName)
        }
        override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): FoodViewHolder {
            val view = LayoutInflater.from(parent.context).inflate(R.layout.food_item, parent, false)
            return FoodViewHolder(view)
        }
        override fun getItemCount(): Int {
            return foodList.size
        }
        override fun onBindViewHolder(holder: FoodViewHolder, position: Int) {
            val food = foodList[position]
            holder.imageView.setImageResource(food.image)
            holder.textView.text = food.name
            holder.itemView.setOnClickListener {
                onItemClick?.invoke(food)
            }
        }
}&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;5.&amp;nbsp; MainActivity.kt&amp;nbsp; 작성하기&lt;/b&gt;&lt;/h4&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;아래를 참고해 Main Activity를 만들어 줍니다.&lt;br /&gt;먼저 binding 기능을 사용하기 위해, build.gradle.kts(Module:app) 그래들 설정에 아래처럼 바인딩 기능 사용을 추가해 주세요.&lt;/p&gt;
&lt;div style=&quot;background-color: #1e1f22; color: #bcbec4;&quot;&gt;
&lt;pre class=&quot;ini&quot;&gt;&lt;code&gt;viewBinding.isEnabled = true&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1051&quot; data-origin-height=&quot;785&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bfrvkX/btsKKoHP4qg/pjPRA8tdjHKRJG9FYT9nik/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bfrvkX/btsKKoHP4qg/pjPRA8tdjHKRJG9FYT9nik/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bfrvkX/btsKKoHP4qg/pjPRA8tdjHKRJG9FYT9nik/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbfrvkX%2FbtsKKoHP4qg%2FpjPRA8tdjHKRJG9FYT9nik%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1051&quot; height=&quot;785&quot; data-origin-width=&quot;1051&quot; data-origin-height=&quot;785&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1049&quot; data-origin-height=&quot;944&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dQRHhe/btsKI2y8zji/Pug601wGHPbxtj06uHx0W0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dQRHhe/btsKI2y8zji/Pug601wGHPbxtj06uHx0W0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dQRHhe/btsKI2y8zji/Pug601wGHPbxtj06uHx0W0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdQRHhe%2FbtsKI2y8zji%2FPug601wGHPbxtj06uHx0W0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1049&quot; height=&quot;944&quot; data-origin-width=&quot;1049&quot; data-origin-height=&quot;944&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;lt;코드&amp;gt;&lt;/p&gt;
&lt;div style=&quot;background-color: #1e1f22; color: #bcbec4;&quot;&gt;
&lt;pre class=&quot;bash&quot; data-ke-language=&quot;bash&quot;&gt;&lt;code&gt;package com.example.recyclerview4

import android.content.Intent
import android.os.Bundle
import androidx.activity.enableEdgeToEdge
import androidx.appcompat.app.AppCompatActivity
import androidx.core.view.ViewCompat
import androidx.core.view.WindowInsetsCompat
import androidx.recyclerview.widget.LinearLayoutManager
import androidx.recyclerview.widget.RecyclerView
import com.example.recyclerview4.databinding.ActivityMainBinding

class MainActivity : AppCompatActivity() {
    private lateinit var recyclerView: RecyclerView
    private lateinit var foodList: ArrayList&amp;lt;Food&amp;gt;
    private lateinit var foodAdapter: FoodAdapter
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        enableEdgeToEdge()
        val binding = ActivityMainBinding.inflate(layoutInflater)
        setContentView(binding.root)
        recyclerView = binding.rvRecyclerView
        recyclerView.setHasFixedSize(true)
        recyclerView.layoutManager = LinearLayoutManager(this)
        foodList = ArrayList()
        foodList.add(Food(R.drawable.bibimbab_01, &quot;Bi-bim-bap\n(비빔밥)&quot;))
        foodList.add(Food(R.drawable.samgyeopsal_02, &quot;Sam-gyeop-sal\n(삼겹살)&quot;))
        foodList.add(Food(R.drawable.galbitang_03, &quot;Gal-bi-tang\n(갈비탕)&quot;))
        foodList.add(Food(R.drawable.tteokguk_04, &quot;tteok-guk\n(떡국)&quot;))
        foodList.add(Food(R.drawable.tteokbokki_05, &quot;tteok-bok-kki\n(떡볶이)&quot;))
        foodList.add(Food(R.drawable.sundubujjigae_06, &quot;Sun-dubu-jjigae\n(순두부 찌개)&quot;))
        foodList.add(Food(R.drawable.koreanfc_07, &quot;Korean-Fried-Chicken\n(한국식 프라이 치킨)&quot;))
        foodList.add(Food(R.drawable.naengmyeon_09, &quot;naeng-myeon\n(냉면)&quot;))
        foodList.add(Food(R.drawable.doenjangjjigae_10, &quot;Doen-jang-jjigae\n(된장찌개)&quot;))
        foodList.add(Food(R.drawable.bulgogi_11, &quot;Bul-go-gi\n(불고기)&quot;))
        foodList.add(Food(R.drawable.kimchijeon_12, &quot;Kimchi-jeon\n(김치전)&quot;))
        foodAdapter = FoodAdapter(foodList)
        recyclerView.adapter = foodAdapter
    }
}&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;여기까지만 하면 기본적으로 RecyclerView 기능을 사용해서 보여줄 수 있게 되는데요,&amp;nbsp;&lt;br /&gt;여기서 한 가지 기능을 더 추가해 볼게요,&amp;nbsp; 화면을 스크롤하면서 원하는 음식(이미지)카드를 터치하면, 해당 음식에 대해 디테일하게 정보를 보여주는 View를 추가해 볼게요.&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;h4 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;6.&amp;nbsp; activity_detailed.xml&amp;nbsp; 작성하기&amp;nbsp;&lt;/b&gt;&lt;/h4&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;아래를 참고해 Main Activity를 만들어 줍니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;res &amp;gt;&amp;gt; layout 폴더에서 마우스 우클릭 해서 New &amp;gt;&amp;gt; Activity &amp;gt;&amp;gt; Empty Views Activity를 클릭합니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1110&quot; data-origin-height=&quot;882&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/du28p5/btsKIwASTD9/rxJK59nNkdzBrY1F1jkJoK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/du28p5/btsKIwASTD9/rxJK59nNkdzBrY1F1jkJoK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/du28p5/btsKIwASTD9/rxJK59nNkdzBrY1F1jkJoK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fdu28p5%2FbtsKIwASTD9%2FrxJK59nNkdzBrY1F1jkJoK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1110&quot; height=&quot;882&quot; data-origin-width=&quot;1110&quot; data-origin-height=&quot;882&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래처럼 Activity Name에&amp;nbsp; &quot;DetailedActivity&quot; 를 입력하면 &quot;DetailedActivity.kt&quot;파일과 함께&amp;nbsp; 그 아래에 activity_detailed.xml 파일도 함께 자동 생성됩니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;902&quot; data-origin-height=&quot;651&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bocPlf/btsKKgiQ4Ix/ENtgc8NSADNnYjai9B5x1k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bocPlf/btsKKgiQ4Ix/ENtgc8NSADNnYjai9B5x1k/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bocPlf/btsKKgiQ4Ix/ENtgc8NSADNnYjai9B5x1k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbocPlf%2FbtsKKgiQ4Ix%2FENtgc8NSADNnYjai9B5x1k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;902&quot; height=&quot;651&quot; data-origin-width=&quot;902&quot; data-origin-height=&quot;651&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;h4 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size20&quot;&gt;&amp;nbsp;&lt;/h4&gt;
&lt;h4 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;7.&amp;nbsp; activity_detailed&amp;nbsp; 작성하기&amp;nbsp;&lt;/b&gt;&lt;/h4&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;아래처럼 xml 코드를 작성해 주세요&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1398&quot; data-origin-height=&quot;914&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bdhiSY/btsKKH8dLkg/Bz1byVNLM8k91ShxIHuhqk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bdhiSY/btsKKH8dLkg/Bz1byVNLM8k91ShxIHuhqk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bdhiSY/btsKKH8dLkg/Bz1byVNLM8k91ShxIHuhqk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbdhiSY%2FbtsKKH8dLkg%2FBz1byVNLM8k91ShxIHuhqk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1398&quot; height=&quot;914&quot; data-origin-width=&quot;1398&quot; data-origin-height=&quot;914&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;div style=&quot;background-color: #1e1f22; color: #bcbec4;&quot;&gt;
&lt;pre class=&quot;xml&quot;&gt;&lt;code&gt;&amp;lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&amp;gt;
&amp;lt;androidx.constraintlayout.widget.ConstraintLayout xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;
    xmlns:app=&quot;http://schemas.android.com/apk/res-auto&quot;
    xmlns:tools=&quot;http://schemas.android.com/tools&quot;
    android:id=&quot;@+id/main&quot;
    android:layout_width=&quot;match_parent&quot;
    android:layout_height=&quot;match_parent&quot;
    tools:context=&quot;.DetailedActivity&quot;&amp;gt;

    &amp;lt;ImageView
        android:id=&quot;@+id/iv_Detailed&quot;
        android:layout_width=&quot;0dp&quot;
        android:layout_height=&quot;250dp&quot;
        android:scaleType=&quot;fitXY&quot;
        app:layout_constraintEnd_toEndOf=&quot;parent&quot;
        app:layout_constraintHorizontal_bias=&quot;0.5&quot;
        app:layout_constraintStart_toStartOf=&quot;parent&quot;
        app:layout_constraintTop_toTopOf=&quot;parent&quot;
        app:srcCompat=&quot;@drawable/bibimbab_01&quot; /&amp;gt;

    &amp;lt;TextView
        android:id=&quot;@+id/tv_Detailed&quot;
        android:layout_width=&quot;wrap_content&quot;
        android:layout_height=&quot;wrap_content&quot;
        android:layout_marginStart=&quot;173dp&quot;
        android:layout_marginEnd=&quot;180dp&quot;
        android:gravity=&quot;center&quot;
        android:text=&quot;TextView&quot;
        android:textSize=&quot;24sp&quot;
        android:textStyle=&quot;bold&quot;
        android:textColor=&quot;@color/black&quot;
        app:layout_constraintEnd_toEndOf=&quot;parent&quot;
        app:layout_constraintStart_toStartOf=&quot;parent&quot;
        app:layout_constraintTop_toBottomOf=&quot;@+id/iv_Detailed&quot; /&amp;gt;
&amp;lt;/androidx.constraintlayout.widget.ConstraintLayout&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;h4 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;8.&amp;nbsp; DetailedActivity.kt&amp;nbsp; 작성하기&amp;nbsp;&lt;/b&gt;&lt;/h4&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;아래처럼 코드를 작성해 주세요. (binding 기능으로 사용하였고 기존 기능은 주석처리해 놓았으니 비교해 보세요)&lt;/p&gt;
&lt;div style=&quot;background-color: #1e1f22; color: #bcbec4;&quot;&gt;
&lt;pre class=&quot;kotlin&quot;&gt;&lt;code&gt;package com.example.recyclerview4

import android.os.Bundle
import android.view.LayoutInflater
import android.widget.ImageView
import android.widget.TextView
import androidx.activity.enableEdgeToEdge
import androidx.appcompat.app.AppCompatActivity
import androidx.core.view.ViewCompat
import androidx.core.view.WindowInsetsCompat
import com.example.recyclerview4.databinding.ActivityDetailedBinding

class DetailedActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        enableEdgeToEdge()
        val binding = ActivityDetailedBinding.inflate(layoutInflater)
//        setContentView(R.layout.activity_detailed)
        setContentView(binding.root)
        val food = intent.getParcelableExtra&amp;lt;Food&amp;gt;(&quot;food&quot;)
        if (food != null) {
//            val textView : TextView = findViewById(R.id.tv_Detailed)
//            val imageView : ImageView = findViewById(R.id.iv_Detailed)
            binding.tvDetailed.text = food.name
            binding.ivDetailed.setImageResource(food.image)
        }
    }
}&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;마지막으로 MainActivity.kt 코드 끝에 아래와 같은 코드를 추가해 주세요.&amp;nbsp;&lt;/p&gt;
&lt;div style=&quot;background-color: #1e1f22; color: #bcbec4;&quot;&gt;
&lt;pre class=&quot;reasonml&quot;&gt;&lt;code&gt;foodAdapter.onItemClick = {
    val intent = Intent(this, DetailedActivity::class.java)
    intent.putExtra(&quot;food&quot;,it)
    startActivity(intent)
}&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;MainActivity.kt 의 전체 완성된 코드는 아래와 같아요.&lt;/p&gt;
&lt;div style=&quot;background-color: #1e1f22; color: #bcbec4;&quot;&gt;
&lt;pre class=&quot;reasonml&quot;&gt;&lt;code&gt;package com.example.recyclerview4

import android.content.Intent
import android.os.Bundle
import androidx.activity.enableEdgeToEdge
import androidx.appcompat.app.AppCompatActivity
import androidx.core.view.ViewCompat
import androidx.core.view.WindowInsetsCompat
import androidx.recyclerview.widget.LinearLayoutManager
import androidx.recyclerview.widget.RecyclerView
import com.example.recyclerview4.databinding.ActivityMainBinding
class MainActivity : AppCompatActivity() {
    private lateinit var recyclerView: RecyclerView
    private lateinit var foodList: ArrayList&amp;lt;Food&amp;gt;
    private lateinit var foodAdapter: FoodAdapter
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        enableEdgeToEdge()
        val binding = ActivityMainBinding.inflate(layoutInflater)
        setContentView(binding.root)
        recyclerView = binding.rvRecyclerView
        recyclerView.setHasFixedSize(true)
        recyclerView.layoutManager = LinearLayoutManager(this)
        foodList = ArrayList()
        foodList.add(Food(R.drawable.bibimbab_01, &quot;Bi-bim-bap\n(비빔밥)&quot;))
        foodList.add(Food(R.drawable.samgyeopsal_02, &quot;Sam-gyeop-sal\n(삼겹살)&quot;))
        foodList.add(Food(R.drawable.galbitang_03, &quot;Gal-bi-tang\n(갈비탕)&quot;))
        foodList.add(Food(R.drawable.tteokguk_04, &quot;tteok-guk\n(떡국)&quot;))
        foodList.add(Food(R.drawable.tteokbokki_05, &quot;tteok-bok-kki\n(떡볶이)&quot;))
        foodList.add(Food(R.drawable.sundubujjigae_06, &quot;Sun-dubu-jjigae\n(순두부 찌개)&quot;))
        foodList.add(Food(R.drawable.koreanfc_07, &quot;Korean-Fried-Chicken\n(한국식 프라이 치킨)&quot;))
        foodList.add(Food(R.drawable.naengmyeon_09, &quot;naeng-myeon\n(냉면)&quot;))
        foodList.add(Food(R.drawable.doenjangjjigae_10, &quot;Doen-jang-jjigae\n(된장찌개)&quot;))
        foodList.add(Food(R.drawable.bulgogi_11, &quot;Bul-go-gi\n(불고기)&quot;))
        foodList.add(Food(R.drawable.kimchijeon_12, &quot;Kimchi-jeon\n(김치전)&quot;))
        foodAdapter = FoodAdapter(foodList)
        recyclerView.adapter = foodAdapter
        foodAdapter.onItemClick = {
            val intent = Intent(this, DetailedActivity::class.java)
            intent.putExtra(&quot;food&quot;,it)
            startActivity(intent)
        }
    }
}

&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그럼, 앱을 실행하고 원하는 음식 이미지를 터치하면, 아래처럼 디테일 뷰를 볼 수 있습니다.&amp;nbsp;&lt;br /&gt;아래 이미지에서 갈비탕 이미지를 터치하면, 상세 페이지를 볼 수 있으며, 실제로 추가적인 내용을 넣어 주면 됩니다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;864&quot; data-origin-height=&quot;805&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/lI6Xd/btsKJL4CuOY/T9DEAUWOi1CGBbdRe6PgQk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/lI6Xd/btsKJL4CuOY/T9DEAUWOi1CGBbdRe6PgQk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/lI6Xd/btsKJL4CuOY/T9DEAUWOi1CGBbdRe6PgQk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FlI6Xd%2FbtsKJL4CuOY%2FT9DEAUWOi1CGBbdRe6PgQk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;864&quot; height=&quot;805&quot; data-origin-width=&quot;864&quot; data-origin-height=&quot;805&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이상으로 RecyclerView를 사용하면서 CardView 기능을 활용해 보는 시간을 가져봤습니다.&lt;br /&gt;&lt;br /&gt;그럼, 오늘도 즐거운 하루 되세요~&lt;/p&gt;</description>
      <category>App개발/Android_Studio</category>
      <category>androidstudio kotlin</category>
      <category>cardview 카드뷰 사용법</category>
      <category>recyclerview 기능 사용법</category>
      <category>리사이클러뷰 활용하기</category>
      <category>안드로이드 스튜디오 코들린 학습</category>
      <category>오블완</category>
      <category>티스토리챌린지</category>
      <author>엑소더스팩토리</author>
      <guid isPermaLink="true">https://rasino.tistory.com/394</guid>
      <comments>https://rasino.tistory.com/394#entry394comment</comments>
      <pubDate>Fri, 15 Nov 2024 01:28:12 +0900</pubDate>
    </item>
    <item>
      <title>【AndroidStudio】 RecyclerView 실습 #2( 기본 기능 익히기)</title>
      <link>https://rasino.tistory.com/393</link>
      <description>&lt;h3 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size23&quot;&gt;안드로이드 스튜디오에서(with코틀린) 가장 많이 활용되는 기능 중에 하나가 RecyclerView인데요, 좀 더 기본 기능을 익힐 수 있도록 하는 실습을 진행해 볼게요.&lt;/h3&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;1. New Project &amp;rarr; Empty Views Activity를 선택하고&amp;nbsp; Title을 정해주세요.&amp;nbsp; 여기서는 RecycleView_ex2라고 하였습니다.&lt;/b&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;프로젝트의 구성은 아래와 같습니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;499&quot; data-origin-height=&quot;624&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/njZoD/btsKAuvF6Kb/G9DNCXb63oMdppYuznE0ak/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/njZoD/btsKAuvF6Kb/G9DNCXb63oMdppYuznE0ak/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/njZoD/btsKAuvF6Kb/G9DNCXb63oMdppYuznE0ak/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FnjZoD%2FbtsKAuvF6Kb%2FG9DNCXb63oMdppYuznE0ak%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;499&quot; height=&quot;624&quot; data-origin-width=&quot;499&quot; data-origin-height=&quot;624&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;결과 출력 모습은 아래와 같습니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;424&quot; data-origin-height=&quot;931&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ljYXH/btsKAeGtbHr/Syp8bAz1qc5vCAdBEnwgt0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ljYXH/btsKAeGtbHr/Syp8bAz1qc5vCAdBEnwgt0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ljYXH/btsKAeGtbHr/Syp8bAz1qc5vCAdBEnwgt0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FljYXH%2FbtsKAeGtbHr%2FSyp8bAz1qc5vCAdBEnwgt0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;300&quot; height=&quot;659&quot; data-origin-width=&quot;424&quot; data-origin-height=&quot;931&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;화면을 아래로 스크롤하면, 0부터 99까지 데이터가 스크롤되는데요, 리소스를 효율적으로 사용하기 위해서 뷰 객체를 재활용하도록 고안된 것이 리사이클러뷰입니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;428&quot; data-origin-height=&quot;936&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bVH9n9/btsKBiVvAxd/dtkkaS2AOCWkF0uOVIWAJ0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bVH9n9/btsKBiVvAxd/dtkkaS2AOCWkF0uOVIWAJ0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bVH9n9/btsKBiVvAxd/dtkkaS2AOCWkF0uOVIWAJ0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbVH9n9%2FbtsKBiVvAxd%2FdtkkaS2AOCWkF0uOVIWAJ0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;302&quot; height=&quot;660&quot; data-origin-width=&quot;428&quot; data-origin-height=&quot;936&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래 이미지는 activity_main.xml에 RecyclerView를 배치한 모습이고요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1331&quot; data-origin-height=&quot;796&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/1TNur/btsKzp2ZNUn/gOL1KZlBpHGwr5T8lSNf90/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/1TNur/btsKzp2ZNUn/gOL1KZlBpHGwr5T8lSNf90/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/1TNur/btsKzp2ZNUn/gOL1KZlBpHGwr5T8lSNf90/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F1TNur%2FbtsKzp2ZNUn%2FgOL1KZlBpHGwr5T8lSNf90%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1331&quot; height=&quot;796&quot; data-origin-width=&quot;1331&quot; data-origin-height=&quot;796&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래 이미지는 list_item.xml&amp;nbsp; 로 layout 폴더에 Layout Resource 파일을 하나 만들어 실제 보여줄 뷰 구성입니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1331&quot; data-origin-height=&quot;638&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/oAAFi/btsKzxNplUM/nFf9pZuYFgzuJnVuGytr9k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/oAAFi/btsKzxNplUM/nFf9pZuYFgzuJnVuGytr9k/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/oAAFi/btsKzxNplUM/nFf9pZuYFgzuJnVuGytr9k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FoAAFi%2FbtsKzxNplUM%2FnFf9pZuYFgzuJnVuGytr9k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1331&quot; height=&quot;638&quot; data-origin-width=&quot;1331&quot; data-origin-height=&quot;638&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 아래 이미지처럼, MainActivity.kt 에서 addData() 함수를 통해 0부터 99까지의 데이터를 간단히 for ( ) 구문을 이용해서 생성해 준 것입니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;945&quot; data-origin-height=&quot;670&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/40bPN/btsKBnPWL9F/6ihoeXkk6SjrgqldsXUSEk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/40bPN/btsKBnPWL9F/6ihoeXkk6SjrgqldsXUSEk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/40bPN/btsKBnPWL9F/6ihoeXkk6SjrgqldsXUSEk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F40bPN%2FbtsKBnPWL9F%2F6ihoeXkk6SjrgqldsXUSEk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;945&quot; height=&quot;670&quot; data-origin-width=&quot;945&quot; data-origin-height=&quot;670&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>App개발/Android_Studio</category>
      <category>recyclerview실습</category>
      <category>리사이클러뷰 연습</category>
      <category>오블완 첼린지</category>
      <author>엑소더스팩토리</author>
      <guid isPermaLink="true">https://rasino.tistory.com/393</guid>
      <comments>https://rasino.tistory.com/393#entry393comment</comments>
      <pubDate>Thu, 7 Nov 2024 23:59:13 +0900</pubDate>
    </item>
    <item>
      <title>【AndroidStudio】 Gradle Update 관련 에러 발생 시 해결 방법</title>
      <link>https://rasino.tistory.com/392</link>
      <description>&lt;h3 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size23&quot;&gt;안드로이드 스튜디오에서 시뮬레이션(Run) 시도 중 아래와 같은 에러를 발견했을 때 해결방법입니다.&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;【 &amp;darr; 에러 내용 &amp;darr;】&lt;/p&gt;
&lt;h3 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;color: #953b34;&quot;&gt;2&amp;nbsp;issues&amp;nbsp;were&amp;nbsp;found&amp;nbsp;when&amp;nbsp;checking&amp;nbsp;AAR&amp;nbsp;metadata: &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #953b34;&quot;&gt;&amp;nbsp; 1.&amp;nbsp;&amp;nbsp;Dependency 'androidx.core:core-ktx:1.15.0' requires libraries and applications that &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #953b34;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;depend&amp;nbsp;on&amp;nbsp;it&amp;nbsp;to&amp;nbsp;compile&amp;nbsp;against&amp;nbsp;version&amp;nbsp;35&amp;nbsp;or&amp;nbsp;later&amp;nbsp;of&amp;nbsp;the &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #953b34;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Android&amp;nbsp;APIs. &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #953b34;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; :app is currently compiled against android-34. &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #953b34;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; Also, the maximum recommended compile SDK version for Android Gradle &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #953b34;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;plugin&amp;nbsp;8.5.1&amp;nbsp;is&amp;nbsp;34. &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #953b34;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; Recommended action: Update this project's version of the Android Gradle &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #953b34;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;plugin&amp;nbsp;to&amp;nbsp;one&amp;nbsp;that&amp;nbsp;supports&amp;nbsp;35,&amp;nbsp;then&amp;nbsp;update&amp;nbsp;this&amp;nbsp;project&amp;nbsp;to&amp;nbsp;use &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #953b34;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;compileSdk&amp;nbsp;of&amp;nbsp;at&amp;nbsp;least&amp;nbsp;35. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;color: #953b34;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Note&amp;nbsp;that&amp;nbsp;updating&amp;nbsp;a&amp;nbsp;library&amp;nbsp;or&amp;nbsp;application's&amp;nbsp;compileSdk&amp;nbsp;(which &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #953b34;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;allows&amp;nbsp;newer&amp;nbsp;APIs&amp;nbsp;to&amp;nbsp;be&amp;nbsp;used)&amp;nbsp;can&amp;nbsp;be&amp;nbsp;done&amp;nbsp;separately&amp;nbsp;from&amp;nbsp;updating &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #953b34;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;targetSdk&amp;nbsp;(which&amp;nbsp;opts&amp;nbsp;the&amp;nbsp;app&amp;nbsp;in&amp;nbsp;to&amp;nbsp;new&amp;nbsp;runtime&amp;nbsp;behavior)&amp;nbsp;and &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #953b34;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;minSdk&amp;nbsp;(which&amp;nbsp;determines&amp;nbsp;which&amp;nbsp;devices&amp;nbsp;the&amp;nbsp;app&amp;nbsp;can&amp;nbsp;be&amp;nbsp;installed &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #953b34;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;on). &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;color: #953b34;&quot;&gt;&amp;nbsp;&amp;nbsp;2.&amp;nbsp;&amp;nbsp;Dependency&amp;nbsp;'androidx.core:core:1.15.0'&amp;nbsp;requires&amp;nbsp;libraries&amp;nbsp;and&amp;nbsp;applications&amp;nbsp;that &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #953b34;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;depend&amp;nbsp;on&amp;nbsp;it&amp;nbsp;to&amp;nbsp;compile&amp;nbsp;against&amp;nbsp;version&amp;nbsp;35&amp;nbsp;or&amp;nbsp;later&amp;nbsp;of&amp;nbsp;the &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #953b34;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Android&amp;nbsp;APIs. &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #953b34;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; :app is currently compiled against android-34. &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #953b34;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; Also, the maximum recommended compile SDK version for Android Gradle &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #953b34;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;plugin&amp;nbsp;8.5.1&amp;nbsp;is&amp;nbsp;34. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;color: #953b34;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Recommended&amp;nbsp;action:&amp;nbsp;Update&amp;nbsp;this&amp;nbsp;project's&amp;nbsp;version&amp;nbsp;of&amp;nbsp;the&amp;nbsp;Android&amp;nbsp;Gradle &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #953b34;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;plugin&amp;nbsp;to&amp;nbsp;one&amp;nbsp;that&amp;nbsp;supports&amp;nbsp;35,&amp;nbsp;then&amp;nbsp;update&amp;nbsp;this&amp;nbsp;project&amp;nbsp;to&amp;nbsp;use &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #953b34;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;compileSdk&amp;nbsp;of&amp;nbsp;at&amp;nbsp;least&amp;nbsp;35. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;color: #953b34;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Note&amp;nbsp;that&amp;nbsp;updating&amp;nbsp;a&amp;nbsp;library&amp;nbsp;or&amp;nbsp;application's&amp;nbsp;compileSdk&amp;nbsp;(which &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #953b34;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;allows&amp;nbsp;newer&amp;nbsp;APIs&amp;nbsp;to&amp;nbsp;be&amp;nbsp;used)&amp;nbsp;can&amp;nbsp;be&amp;nbsp;done&amp;nbsp;separately&amp;nbsp;from&amp;nbsp;updating &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #953b34;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;targetSdk&amp;nbsp;(which&amp;nbsp;opts&amp;nbsp;the&amp;nbsp;app&amp;nbsp;in&amp;nbsp;to&amp;nbsp;new&amp;nbsp;runtime&amp;nbsp;behavior)&amp;nbsp;and &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #953b34;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;minSdk&amp;nbsp;(which&amp;nbsp;determines&amp;nbsp;which&amp;nbsp;devices&amp;nbsp;the&amp;nbsp;app&amp;nbsp;can&amp;nbsp;be&amp;nbsp;installed &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #953b34;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;on).&lt;/span&gt;&lt;/h3&gt;
&lt;h3 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size23&quot;&gt;&amp;nbsp;&lt;/h3&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;분명 코드 부분에서는 문제가 없었으나, Gradle plugin 버전을 업데이트(상향) 하라는 내용인데, 결론은 현재 안드로이드 스튜디오에 설치된 SDK 34 버전을 SDK 35 버전으로 상향하면 해결되는 경우입니다.&amp;nbsp;&lt;br /&gt;안드로이드 스튜디오를 오래된 버전을 사용하고 있다면 공식사이트에서 최신 버전을 받아서 설치하면 되며(UI 같은 것도 조금 바뀌었습니다),&amp;nbsp; 만약, 설치한 지 24년 3월 이후 설치했다면 즉, 거의 최근 버전이라면, 안드로이드 스튜디오를 새로 다운로드할 필요 없이, 안드로이드 스튜디오 메뉴에서 간단하게 해결할 수 있습니다.&amp;nbsp;&lt;/p&gt;
&lt;h4 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;1.&amp;nbsp; &lt;span style=&quot;color: #006dd7;&quot;&gt;File &lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt;&amp;nbsp;&amp;rarr; Pr&lt;/b&gt;&lt;b&gt;oject Structure&amp;nbsp; &amp;rarr;&amp;nbsp; Modules &lt;/b&gt;&lt;/span&gt;&lt;b&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;&amp;nbsp;&amp;rarr; Compile Sdk Version을&lt;/span&gt;&lt;/b&gt;&lt;b&gt; 선택하고&amp;nbsp; API 35(최신 또는 원하는 버전)으로 적용한 후 안드로이드 스튜디오를 재실행해 주면 해결됩니다.&amp;nbsp;&lt;/b&gt;&lt;/h4&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;553&quot; data-origin-height=&quot;752&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/vidmF/btsKuU27fvL/QOC0CzZQu83S229SriYKu1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/vidmF/btsKuU27fvL/QOC0CzZQu83S229SriYKu1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/vidmF/btsKuU27fvL/QOC0CzZQu83S229SriYKu1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FvidmF%2FbtsKuU27fvL%2FQOC0CzZQu83S229SriYKu1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;553&quot; height=&quot;752&quot; data-origin-width=&quot;553&quot; data-origin-height=&quot;752&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;952&quot; data-origin-height=&quot;501&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/zsDb1/btsKw3xbSPX/FZQVLonJeeVluJ1q5cawb0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/zsDb1/btsKw3xbSPX/FZQVLonJeeVluJ1q5cawb0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/zsDb1/btsKw3xbSPX/FZQVLonJeeVluJ1q5cawb0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FzsDb1%2FbtsKw3xbSPX%2FFZQVLonJeeVluJ1q5cawb0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;952&quot; height=&quot;501&quot; data-origin-width=&quot;952&quot; data-origin-height=&quot;501&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>App개발/Android_Studio</category>
      <category>android studio sdk upgrade</category>
      <category>gradle plugin  sdk 버전 관련 에러 났을 때</category>
      <category>gradle plugin version upgrade</category>
      <category>안드로이드 스튜디오 sdk 업그레이드 업데이트</category>
      <category>안드로이드 스튜디오 그래들 플러그인 업그레이드</category>
      <author>엑소더스팩토리</author>
      <guid isPermaLink="true">https://rasino.tistory.com/392</guid>
      <comments>https://rasino.tistory.com/392#entry392comment</comments>
      <pubDate>Tue, 5 Nov 2024 02:39:32 +0900</pubDate>
    </item>
    <item>
      <title>【 미리준비하세요 】 크리스마스 선물용 키트 DIY 하기!</title>
      <link>https://rasino.tistory.com/391</link>
      <description>&lt;h2 data-ke-size=&quot;size26&quot;&gt;◈&amp;nbsp; ATtiny 85 칩과 PCB를 이용하여 크리스마스 선물용 LED 멜로디 키트를 DIY 해 보세요.&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;캐롤이나 동요, 혹은 자신이 좋아하는 곡의 멜로디를 코딩하여 키트로 출력할 수 있어요.&amp;nbsp;&lt;br /&gt;아래 이미지처럼 PCB로 제작해서 선물용에 어울리게끔 만들어 봤습니다.&lt;br /&gt;크리스마스트리와 눈사람 두 가지 버전으로 만들었는데요,&amp;nbsp; 하지만, 가정에서는 PCB를 직접 제작하기 쉽지 않죠, 그런데 JLC PCB 사이트 같은 곳을 이용한다면 적은 비용으로 쉽고 빠르게 이렇게 완성된 PCB기판을 받아 볼 수 있습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;선물용-크리스마트_키트만들기_Title2.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1080&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/vOB55/btsKa3yW5Bx/o6o3JMtBePnC83ee7ORy50/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/vOB55/btsKa3yW5Bx/o6o3JMtBePnC83ee7ORy50/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/vOB55/btsKa3yW5Bx/o6o3JMtBePnC83ee7ORy50/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FvOB55%2FbtsKa3yW5Bx%2Fo6o3JMtBePnC83ee7ORy50%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1920&quot; height=&quot;1080&quot; data-filename=&quot;선물용-크리스마트_키트만들기_Title2.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1080&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;color: #f89009;&quot;&gt;&lt;b&gt;1. 제작 준비하기&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;실습을 위해 아래와 같은 파일들을 준비해 보세요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Christmas_kit-실습준비물1.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1080&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cmVSS0/btsKa6WU1gS/kaxvpF2UI2TVcjnZk4tTdk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cmVSS0/btsKa6WU1gS/kaxvpF2UI2TVcjnZk4tTdk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cmVSS0/btsKa6WU1gS/kaxvpF2UI2TVcjnZk4tTdk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcmVSS0%2FbtsKa6WU1gS%2FkaxvpF2UI2TVcjnZk4tTdk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1920&quot; height=&quot;1080&quot; data-filename=&quot;Christmas_kit-실습준비물1.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1080&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;먼저, 아두이노 처럼 프로그래밍이 가능한 ATtiny85 IC가 필요합니다.&amp;nbsp; 그리고 ATtiny85에 코드를 업로드하기 위한&amp;nbsp; 아두이노 보드가 필요합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;8 pin IC 소켓은 tiny85 칩을 PCB에 바로&amp;nbsp; 납땜해 버리게 되면 다른 곡을 다시 업로드할 수 없게 되므로 필요합니다. &lt;br /&gt;콘덴서 부품은 Reset과 IC를 보호하기 위한 용도이므로 용량값에 구애받지 말고 가지고 있는 것을 사용하면 됩니다.&lt;br /&gt;7805 IC는 5V이상의 입력 전원을 5V로 일정하게 출력해주는 정전압 IC로서 tiny85 칩을 보호하기 위한 용도로 사용됩니다.&lt;br /&gt;그래서 작동 시간을 더 늘리기 위해, 배터리를 별도로 연결할 때, 더 유용하게 활용됩니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;멜로디를 울려줄 스피커나&amp;nbsp; 부저, 어떤것이든 가능한데요 소리의 떨림이 좀 있지만 크기가 작은 부저를 사용해도 되고, 크기가 조금 크지만 좀 더 좋은 소리를 낼 수 있는 스피커를 사용해도 됩니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;당장 PCB기판이 없더라도 브레드 보드에 회로를 구성해서 실습해 볼 수&amp;nbsp; 있도록 브레드보드를 준비하면 됩니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;ATtiny85의 기본 사용법과 부트로더 올리는 영상은 아래 링크 게시글을 참고해 주세요.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://rasino.tistory.com/324&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://rasino.tistory.com/324&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1729244906620&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;【 ATtiny85】 초소형 아두이노 ATtiny85 기초부터 응용까지 완벽 풀코스(초미니 OLED 온&amp;middot;습도계 제작)&quot; data-og-description=&quot;【&amp;nbsp;아두이노프렌즈】 초소형 아두이노 ATtiny85 기초부터 응용까지 완벽 풀코스(초미니 OLED 온&amp;middot;습도계 제작)&amp;nbsp;&amp;nbsp;여러분은 아래 이미지를 보시고 똑 같은 기능이 가능한 3가지 모델 중 어떤 것을 선&quot; data-og-host=&quot;rasino.tistory.com&quot; data-og-source-url=&quot;https://rasino.tistory.com/324&quot; data-og-url=&quot;https://rasino.tistory.com/324&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/coerln/hyXlPlo7LT/toDLNrqRlX8dj5qeYAijSK/img.png?width=800&amp;amp;height=450&amp;amp;face=0_0_800_450,https://scrap.kakaocdn.net/dn/93DmO/hyXhTQxP4Q/CTIak5MvUVOCM5x5eu37WK/img.png?width=800&amp;amp;height=450&amp;amp;face=0_0_800_450,https://scrap.kakaocdn.net/dn/buUCkR/hyXhKsufdc/9aurkw4dpeSbK0moVBtCl0/img.png?width=1237&amp;amp;height=762&amp;amp;face=0_0_1237_762&quot;&gt;&lt;a href=&quot;https://rasino.tistory.com/324&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://rasino.tistory.com/324&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/coerln/hyXlPlo7LT/toDLNrqRlX8dj5qeYAijSK/img.png?width=800&amp;amp;height=450&amp;amp;face=0_0_800_450,https://scrap.kakaocdn.net/dn/93DmO/hyXhTQxP4Q/CTIak5MvUVOCM5x5eu37WK/img.png?width=800&amp;amp;height=450&amp;amp;face=0_0_800_450,https://scrap.kakaocdn.net/dn/buUCkR/hyXhKsufdc/9aurkw4dpeSbK0moVBtCl0/img.png?width=1237&amp;amp;height=762&amp;amp;face=0_0_1237_762');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;【 ATtiny85】 초소형 아두이노 ATtiny85 기초부터 응용까지 완벽 풀코스(초미니 OLED 온&amp;middot;습도계 제작)&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;【&amp;nbsp;아두이노프렌즈】 초소형 아두이노 ATtiny85 기초부터 응용까지 완벽 풀코스(초미니 OLED 온&amp;middot;습도계 제작)&amp;nbsp;&amp;nbsp;여러분은 아래 이미지를 보시고 똑 같은 기능이 가능한 3가지 모델 중 어떤 것을 선&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;rasino.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;【 중요 】&amp;nbsp; 위의 게시물에도 추가 하였지만, ATtiny 보드 라이브러리만 설치해서 진행할 경우 tiny85 칩에 코딩해서 LED를 동작시키고 하는 것은 문제없으나, 멜로디 음 출력이 되지 않는 문제가 있어요.&amp;nbsp; 그래서 이를 해결한 다른 보드 라이브러리(ATtiny core)를 추가로 설치해서 진행하면 해결할 수 있습니다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다만, ATtiny core 라이브러리만 진행했을 경우에는 코딩까지는 문제 없으나 코딩한 대로 동작이 되지 않고 이상한 출력을 내며 제대로 동작되지 않는데요,&amp;nbsp; 특히 부트로더가 올려지지 않은 새 칩을 코딩하면 이런 현상이 벌어지는데, 따라서&amp;nbsp;&lt;br /&gt;이를 해결하는 (코딩하는) 순서는 아래처럼 해야 합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;① &quot;ATtiny&quot; 보드라이브러리를 추가하고 tiny85칩에 부트로더를 올려줍니다.&amp;nbsp; (ATtiny 보드라이브러리 설치 방법 참조)&lt;/b&gt;&lt;br /&gt;&lt;b&gt;(ATtiny 보드라이브러리 환경설정 주소 :&lt;/b&gt;&amp;nbsp; &lt;b&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;a href=&quot;https://raw.githubusercontent.com/damellis/attiny/ide-1.6.x-boards-manager/package_damellis_attiny_index.json&quot;&gt;https://raw.githubusercontent.com/damellis/attiny/ide-1.6.x-boards-manager/package_damellis_attiny_index.json&lt;/a&gt; )&amp;nbsp;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;b&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;② 추가된 ATtiny85칩을 선택해서&amp;nbsp; 아두이노로 만든 아두이노 ISP 회로를 통해 tiny85에 부트로더를 만들어 주세요.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;③ &quot;ATtinycore&quot; 보드라이브러리를 추가하고 추가된 보드를 통해 tiny85 칩에 멜로디 코드를 올려주면 원하는 작동을 볼 수 있어요.&amp;nbsp; (ATtiny 보드 라이브러리 환경설정 주소: &lt;b&gt;&lt;a href=&quot;https://drazzy.com/package_drazzy.com_index.json&quot;&gt;https://drazzy.com/package_drazzy.com_index.json&lt;/a&gt; )&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;ATtinyChip 멜로디 나오도록 02.png&quot; data-origin-width=&quot;928&quot; data-origin-height=&quot;595&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bgiWpi/btsJ92Nt5Wg/JKpmFwTWa5IO2g18IsUkDK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bgiWpi/btsJ92Nt5Wg/JKpmFwTWa5IO2g18IsUkDK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bgiWpi/btsJ92Nt5Wg/JKpmFwTWa5IO2g18IsUkDK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbgiWpi%2FbtsJ92Nt5Wg%2FJKpmFwTWa5IO2g18IsUkDK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;928&quot; height=&quot;595&quot; data-filename=&quot;ATtinyChip 멜로디 나오도록 02.png&quot; data-origin-width=&quot;928&quot; data-origin-height=&quot;595&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;ATtinyChip 멜로디 나오도록 03.png&quot; data-origin-width=&quot;1351&quot; data-origin-height=&quot;1034&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/tjAnP/btsKapPmcyj/YiKdXyKKAh5EVTSzQMAS80/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/tjAnP/btsKapPmcyj/YiKdXyKKAh5EVTSzQMAS80/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/tjAnP/btsKapPmcyj/YiKdXyKKAh5EVTSzQMAS80/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FtjAnP%2FbtsKapPmcyj%2FYiKdXyKKAh5EVTSzQMAS80%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1351&quot; height=&quot;1034&quot; data-filename=&quot;ATtinyChip 멜로디 나오도록 03.png&quot; data-origin-width=&quot;1351&quot; data-origin-height=&quot;1034&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그럼 &amp;ldquo;악보의 멜로디를 코드로&amp;rdquo; 추출하는 방법을 살펴볼게요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;7음계-투명.png&quot; data-origin-width=&quot;1566&quot; data-origin-height=&quot;291&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/4rJeq/btsKcbvPLl2/GiNNnuprUx3hcyFCI3DE6K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/4rJeq/btsKcbvPLl2/GiNNnuprUx3hcyFCI3DE6K/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/4rJeq/btsKcbvPLl2/GiNNnuprUx3hcyFCI3DE6K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F4rJeq%2FbtsKcbvPLl2%2FGiNNnuprUx3hcyFCI3DE6K%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1566&quot; height=&quot;291&quot; data-filename=&quot;7음계-투명.png&quot; data-origin-width=&quot;1566&quot; data-origin-height=&quot;291&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;음계란 음악에 쓰이는 음을 높이의 차례대로 배열한 음의 층계를 말하는데요.&amp;nbsp; &lt;br /&gt;&amp;nbsp;&quot;도, 레, 미, 파, 솔, 라, 시, 도&quot; 의 8가지 음계를 옥타브라고 합니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;음계와 소리.png&quot; data-origin-width=&quot;1450&quot; data-origin-height=&quot;755&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/btmvqh/btsKdgb74sJ/GMNTfjzbG4pP6yKjTMhCCK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/btmvqh/btsKdgb74sJ/GMNTfjzbG4pP6yKjTMhCCK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/btmvqh/btsKdgb74sJ/GMNTfjzbG4pP6yKjTMhCCK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbtmvqh%2FbtsKdgb74sJ%2FGMNTfjzbG4pP6yKjTMhCCK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1450&quot; height=&quot;755&quot; data-filename=&quot;음계와 소리.png&quot; data-origin-width=&quot;1450&quot; data-origin-height=&quot;755&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;각 음계의 이름을 계이름이라하며 세 가지 언어로 혼용해서 부르고 있습니다. &lt;br /&gt;주로 악보에는 영문 음계로(코드) 표기합니다.&lt;br /&gt;그런데 이런 음(소리)은 어떤 물질의 떨림(진동)에의해 만들어지는데요.&lt;br /&gt;물질이 빠르게 진동한다면 높은 음이 나며, 느리게 진동한다면 낮은음을 발생시키게 되죠.&lt;br /&gt;빠르게 진동하는 것을 주파수가 높다라고 하며, 느리게 진동하면 주파수가 낮다고 해요.&lt;br /&gt;1초에 1회의 진동(떨림)을 주파수 1Hz로 부르며, 100떨리면 100Hz라고 말합니다.&lt;br /&gt;&lt;br /&gt;낮은&amp;nbsp;도와&amp;nbsp;높은&amp;nbsp;도(한&amp;nbsp;옥타브)의&amp;nbsp;주파수(진동수)는&amp;nbsp;음&amp;nbsp;높이가&amp;nbsp;두&amp;nbsp;배&amp;nbsp;차이나며 (레~레,&amp;nbsp;미~미,&amp;nbsp;파~파...&amp;nbsp;마찬가지)&lt;br /&gt;인간의 귀는 이 두 음을 높이는 다르지만 서로 같은 음으로 인식하게 되죠.&lt;br /&gt;서로 다른 종류의 악기로 합주를 할 때 음이 일치가 되는 이유는 각각의 음 높이가 특정 주파수로 정리되었기에 가능한 것입니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;각 음계별 표준 주파수.png&quot; data-origin-width=&quot;908&quot; data-origin-height=&quot;571&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bf6tNF/btsKddzIhJN/P2LX9qlrt8KRRoDnPDSHok/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bf6tNF/btsKddzIhJN/P2LX9qlrt8KRRoDnPDSHok/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bf6tNF/btsKddzIhJN/P2LX9qlrt8KRRoDnPDSHok/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbf6tNF%2FbtsKddzIhJN%2FP2LX9qlrt8KRRoDnPDSHok%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;908&quot; height=&quot;571&quot; data-filename=&quot;각 음계별 표준 주파수.png&quot; data-origin-width=&quot;908&quot; data-origin-height=&quot;571&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;가장 낮은 1옥타브 C(도)의 주파수는 32.7032Hz이며 그 위로&amp;nbsp; 2옥타브 C의 주파수는 그 두 배인 65.4064Hz 임을 알 수 있죠, 샾(#) 음계는 반정도를 올린 음으로 이해하면 되며,&amp;nbsp; 반음을 내릴 때는 플랫(♭) 기호를 사용합니다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이제 이런 주파수를 참고해서 악보의 각 음계를 주파수 값으로 출력해내면 스피커의 떨림에 의해 악보대로 음악이 연주되는 것이죠.&amp;nbsp; 그리고 아두이노 코드를 작성할 때는 소수점 이하를 반올림 한 값으로 사용하고, 이 주파수 값들을 pitches.h라는 헤더파일 형태로 정리해서 이용합니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;pitches.h.png&quot; data-origin-width=&quot;446&quot; data-origin-height=&quot;691&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/RQQ01/btsKaNcaxeH/kPxrKi3geZHQGlkjHbLirk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/RQQ01/btsKaNcaxeH/kPxrKi3geZHQGlkjHbLirk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/RQQ01/btsKaNcaxeH/kPxrKi3geZHQGlkjHbLirk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FRQQ01%2FbtsKaNcaxeH%2FkPxrKi3geZHQGlkjHbLirk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;446&quot; height=&quot;691&quot; data-filename=&quot;pitches.h.png&quot; data-origin-width=&quot;446&quot; data-origin-height=&quot;691&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 음에는 음의 길이를 정해 줄 수 있는데요, 음의 길이에 따라 그림과 같은 음표로 구분해서 악보에 표시합니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;음표와 박자2.png&quot; data-origin-width=&quot;686&quot; data-origin-height=&quot;483&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bDcF6k/btsKaK7BS5r/dZ4BCUe6gUwo260wbcMIGK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bDcF6k/btsKaK7BS5r/dZ4BCUe6gUwo260wbcMIGK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bDcF6k/btsKaK7BS5r/dZ4BCUe6gUwo260wbcMIGK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbDcF6k%2FbtsKaK7BS5r%2FdZ4BCUe6gUwo260wbcMIGK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;686&quot; height=&quot;483&quot; data-filename=&quot;음표와 박자2.png&quot; data-origin-width=&quot;686&quot; data-origin-height=&quot;483&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;그럼, 예시로 쉬운 동요 한 곡을 코드로 만드는 과정을 보여드릴게요.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;먼저, 악보를 보고 계이름과&amp;nbsp; 음의 길이를 다음 처럼 표시합니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;곰세마리악보에 코드넣기 .jpg&quot; data-origin-width=&quot;3507&quot; data-origin-height=&quot;2480&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/o7mwu/btsKcN9lq9I/72PdKyeuR1t7TKymTVCw3k/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/o7mwu/btsKcN9lq9I/72PdKyeuR1t7TKymTVCw3k/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/o7mwu/btsKcN9lq9I/72PdKyeuR1t7TKymTVCw3k/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fo7mwu%2FbtsKcN9lq9I%2F72PdKyeuR1t7TKymTVCw3k%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;3507&quot; height=&quot;2480&quot; data-filename=&quot;곰세마리악보에 코드넣기 .jpg&quot; data-origin-width=&quot;3507&quot; data-origin-height=&quot;2480&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이것을 Pitches.h 헤더파일을 참고해서 코드로 적으면 아래와 같습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;멜로디와 박자.png&quot; data-origin-width=&quot;962&quot; data-origin-height=&quot;708&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bbX1zV/btsKbmrReR3/81tEk6pMX1UWRjoaSE6YdK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bbX1zV/btsKbmrReR3/81tEk6pMX1UWRjoaSE6YdK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bbX1zV/btsKbmrReR3/81tEk6pMX1UWRjoaSE6YdK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbbX1zV%2FbtsKbmrReR3%2F81tEk6pMX1UWRjoaSE6YdK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;962&quot; height=&quot;708&quot; data-filename=&quot;멜로디와 박자.png&quot; data-origin-width=&quot;962&quot; data-origin-height=&quot;708&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;지금은 4옥타브 영역대를 메인 음역대로 했으나 만약 음정을 높이고 싶다면,&amp;nbsp; C5, E5, G5...&amp;nbsp;&amp;nbsp;이런 형태로 작성하면 됩니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이런 방법으로 어떤 곡이든 악보를 보고 코드화하여 멜로디를 출력할 수 있어요.&amp;nbsp;&amp;nbsp;&lt;br /&gt;그리고 이번 프로젝트에서 각각의 음을 출력할 때마다 LED가 깜빡이도록 회로를 구성했어요.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;기본적으로는 아두이노에 이런 형태로 연결해서 동작시킬 수 있지만.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;아두이노 회로.png&quot; data-origin-width=&quot;1033&quot; data-origin-height=&quot;684&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bsDavY/btsKcd1tqwn/SAOnfvIMO8uC6cXWBxnPE0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bsDavY/btsKcd1tqwn/SAOnfvIMO8uC6cXWBxnPE0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bsDavY/btsKcd1tqwn/SAOnfvIMO8uC6cXWBxnPE0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbsDavY%2FbtsKcd1tqwn%2FSAOnfvIMO8uC6cXWBxnPE0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1033&quot; height=&quot;684&quot; data-filename=&quot;아두이노 회로.png&quot; data-origin-width=&quot;1033&quot; data-origin-height=&quot;684&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;누군가에게 선물할 수 있는 형태로 만들기위해 이번 프로젝트를 준비했습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;따라서 나노 보드 대신, 크기가 매우 작은 tiny85 칩을 사용했고, 배터리도 작은 리튬 배터리를 사용했으며, LED도 많이 넣어 볼거리가 좀 있도록 하였어요.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 PCB로 제작할 때 장점은 보드 디자인을 원하는 모양으로 만들 수 있고, 선 연결을 직접 할 필요 없이 부품만 꽂고 땜하면 바로 완성되기 때문에 장점이 많습니다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;회로 설계는 이와 같이 했고요, 좀 더 화려하게 하고 싶다면, LED와 저항을 병렬로 더 추가해서 제작하면 됩니다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;3V의 CR2032배터리는 직렬로 연결하여 6V의 입력 전압을 만들어 주었고요, ATtiny85 칩의 동작전압은 2.7~5.5V인데 6V정도의 전압은 별문제는 없겠지만, 9V건전지 등 다른 전원을 사용할 때를 대비해서, 5V의 고정적인 출력으로 제어해 주는 7805 정전압 IC를 추가하였어요. (tiny85 IC보호)&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&amp;nbsp;&lt;/h3&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;color: #f89009;&quot;&gt;&lt;b&gt;2. 멜로디 회로 설계 및 PCB 보드 디자인하기&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;지금 보이는 이미지는 OrCAD라는 전자캐드 툴을 이용해서 회로를 디자인 하고 있는 이미지예요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;OrCAD 디자인 모습.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1080&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cE4Hbx/btsKbjhEkHP/8RW7POVNwxk6ud8cuJoln1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cE4Hbx/btsKbjhEkHP/8RW7POVNwxk6ud8cuJoln1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cE4Hbx/btsKbjhEkHP/8RW7POVNwxk6ud8cuJoln1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcE4Hbx%2FbtsKbjhEkHP%2F8RW7POVNwxk6ud8cuJoln1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1920&quot; height=&quot;1080&quot; data-filename=&quot;OrCAD 디자인 모습.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1080&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;PCB(인쇄회로기판) 보드 설계는 먼저 1. 도면을 설계 작성하고&amp;nbsp;&amp;nbsp;2. PCB보드 외형을 디자인하는 형태로 진행됩니다.&lt;br /&gt;만약, CAD툴에서 기본적인 부품은 제공되지만, 없는 부품이 있다면 이렇게 만들어서 사용합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래 이미지가 1. 도면을 설계하는 이미지입니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;CAD회로.png&quot; data-origin-width=&quot;1307&quot; data-origin-height=&quot;762&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/XiEhL/btsKbTJd7sT/Hlo2PU28EPut35Evd62uaK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/XiEhL/btsKbTJd7sT/Hlo2PU28EPut35Evd62uaK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/XiEhL/btsKbTJd7sT/Hlo2PU28EPut35Evd62uaK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FXiEhL%2FbtsKbTJd7sT%2FHlo2PU28EPut35Evd62uaK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1307&quot; height=&quot;762&quot; data-filename=&quot;CAD회로.png&quot; data-origin-width=&quot;1307&quot; data-origin-height=&quot;762&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위 도면 디자인 파일(Cadence OrCAD Capture Design File)&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;fileblock&quot; data-ke-align=&quot;alignCenter&quot;&gt;&lt;a href=&quot;https://blog.kakaocdn.net/dn/VIOla/btsKbGqebQj/0W3WZXUnriCvYrdrVf2b4k/attiny85melody_10-07.zip?attach=1&amp;amp;knm=tfile.zip&quot; class=&quot;&quot;&gt;
    &lt;div class=&quot;image&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;desc&quot;&gt;&lt;div class=&quot;filename&quot;&gt;&lt;span class=&quot;name&quot;&gt;attiny85melody_10-07.zip&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;size&quot;&gt;0.01MB&lt;/div&gt;
&lt;/div&gt;
  &lt;/a&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래는 직접 추가한 라이브러리 파일입니다. (CR2032)&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;fileblock&quot; data-ke-align=&quot;alignCenter&quot;&gt;&lt;a href=&quot;https://blog.kakaocdn.net/dn/sQctL/btsKdxZs2L9/NWa7GfW5gQi3kp0d9WPkE1/CR2032SOCKET.OLB?attach=1&amp;amp;knm=tfile.OLB&quot; class=&quot;&quot;&gt;
    &lt;div class=&quot;image&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;desc&quot;&gt;&lt;div class=&quot;filename&quot;&gt;&lt;span class=&quot;name&quot;&gt;CR2032SOCKET.OLB&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;size&quot;&gt;0.01MB&lt;/div&gt;
&lt;/div&gt;
  &lt;/a&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래는 PCB Board Design File입니다.&lt;br /&gt;Tree 버전과 눈사람 버전입니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;fileblock&quot; data-ke-align=&quot;alignCenter&quot;&gt;&lt;a href=&quot;https://blog.kakaocdn.net/dn/b3wb6m/btsKbwajIUI/QvqnflqI89hFGjGnqgW2V1/ATTINY85MELODY_Tree.brd?attach=1&amp;amp;knm=tfile.brd&quot; class=&quot;&quot;&gt;
    &lt;div class=&quot;image&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;desc&quot;&gt;&lt;div class=&quot;filename&quot;&gt;&lt;span class=&quot;name&quot;&gt;ATTINY85MELODY_Tree.brd&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;size&quot;&gt;0.25MB&lt;/div&gt;
&lt;/div&gt;
  &lt;/a&gt;&lt;/figure&gt;
&lt;figure class=&quot;fileblock&quot; data-ke-align=&quot;alignCenter&quot;&gt;&lt;a href=&quot;https://blog.kakaocdn.net/dn/cSfqf8/btsKduaCA7K/KeljHmwjlATDKXvAh2l4A1/ATTINY85MELODYSnowMan.brd?attach=1&amp;amp;knm=tfile.brd&quot; class=&quot;&quot;&gt;
    &lt;div class=&quot;image&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;desc&quot;&gt;&lt;div class=&quot;filename&quot;&gt;&lt;span class=&quot;name&quot;&gt;ATTINY85MELODYSnowMan.brd&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;size&quot;&gt;0.25MB&lt;/div&gt;
&lt;/div&gt;
  &lt;/a&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래는 CR2032와 Slide3P의 PCB 라이브러리 파일(Package Symbol)입니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;fileblock&quot; data-ke-align=&quot;alignCenter&quot;&gt;&lt;a href=&quot;https://blog.kakaocdn.net/dn/cgQ7Ht/btsKdwsIyWl/k8GyvJmeMsCoQ6ssMMnwtk/CR2032_Slide3P_PCB_%EB%9D%BC%EC%9D%B4%EB%B8%8C%EB%9F%AC%EB%A6%AC%20%ED%8C%8C%EC%9D%BC.zip?attach=1&amp;amp;knm=tfile.zip&quot; class=&quot;&quot;&gt;
    &lt;div class=&quot;image&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;desc&quot;&gt;&lt;div class=&quot;filename&quot;&gt;&lt;span class=&quot;name&quot;&gt;CR2032_Slide3P_PCB_라이브러리 파일.zip&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;size&quot;&gt;0.02MB&lt;/div&gt;
&lt;/div&gt;
  &lt;/a&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;도면 디자인에서는 각 부품 간 연결 정보만 있기 때문에, PCB디자인에서는 부품들의 실제 사이즈에 대한 정보가 필요합니다.&amp;nbsp; 이것을 footprint 값이라고 하는데요.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;PCB_Footprint.png&quot; data-origin-width=&quot;312&quot; data-origin-height=&quot;782&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/rjx7x/btsKbgkIgJF/KXw9kqRjnNkItYv7Njpxtk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/rjx7x/btsKbgkIgJF/KXw9kqRjnNkItYv7Njpxtk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/rjx7x/btsKbgkIgJF/KXw9kqRjnNkItYv7Njpxtk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Frjx7x%2FbtsKbgkIgJF%2FKXw9kqRjnNkItYv7Njpxtk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;312&quot; height=&quot;782&quot; data-filename=&quot;PCB_Footprint.png&quot; data-origin-width=&quot;312&quot; data-origin-height=&quot;782&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이제 이정보들을 PCB Layout 툴로 넘겨서 부품의 배치와 패턴을 디자인해 줍니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;PCB 디자인 모습.png&quot; data-origin-width=&quot;1596&quot; data-origin-height=&quot;897&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/9CWM2/btsKch3PF7O/uAH6Oz7H2M1ZMN7hSCtTOK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/9CWM2/btsKch3PF7O/uAH6Oz7H2M1ZMN7hSCtTOK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/9CWM2/btsKch3PF7O/uAH6Oz7H2M1ZMN7hSCtTOK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F9CWM2%2FbtsKch3PF7O%2FuAH6Oz7H2M1ZMN7hSCtTOK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1596&quot; height=&quot;897&quot; data-filename=&quot;PCB 디자인 모습.png&quot; data-origin-width=&quot;1596&quot; data-origin-height=&quot;897&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;패턴을 완성시킨 후 인쇄회로기판(PCB)을 출력하기 위한 각 층별 팬턴에 대한 필름을 생성하고, 그리고 부품을 삽입하기 위한 홀 드릴에 대한 정보 파일과 Tree 모양의 기판 형태를 제단 해주는 NC 데이터도 함께 만들어 주는데요, 이 파일들의 묶음을 거버(Gerber) 파일이라고 합니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;거버 파일 목록.png&quot; data-origin-width=&quot;260&quot; data-origin-height=&quot;262&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/IFlLY/btsKcdG9Cuu/JFbrrk4eU2DFUqtxV6laq1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/IFlLY/btsKcdG9Cuu/JFbrrk4eU2DFUqtxV6laq1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/IFlLY/btsKcdG9Cuu/JFbrrk4eU2DFUqtxV6laq1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FIFlLY%2FbtsKcdG9Cuu%2FJFbrrk4eU2DFUqtxV6laq1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;260&quot; height=&quot;262&quot; data-filename=&quot;거버 파일 목록.png&quot; data-origin-width=&quot;260&quot; data-origin-height=&quot;262&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;color: #f89009;&quot;&gt;&lt;b&gt;3. JLC PCB에 보드 주문하기&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;JLCPCB 주문과정 소개.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1080&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/doTHqy/btsKa9sNN65/3ak27MBAdKkzn4ndShScNK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/doTHqy/btsKa9sNN65/3ak27MBAdKkzn4ndShScNK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/doTHqy/btsKa9sNN65/3ak27MBAdKkzn4ndShScNK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdoTHqy%2FbtsKa9sNN65%2F3ak27MBAdKkzn4ndShScNK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1920&quot; height=&quot;1080&quot; data-filename=&quot;JLCPCB 주문과정 소개.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1080&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그럼 JLC PCB에서 어떻게 PCB를 주문하는지 과정을 알려드릴게요.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&amp;nbsp;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1. JLCPCB.COM 웹페이로 접속해서 회원가입을 해주세요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;JLCPCB 회원가입하기.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1079&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/6HauI/btsKbK6GFXu/J4jEK66gKyPot2ik3yX5ok/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/6HauI/btsKbK6GFXu/J4jEK66gKyPot2ik3yX5ok/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/6HauI/btsKbK6GFXu/J4jEK66gKyPot2ik3yX5ok/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F6HauI%2FbtsKbK6GFXu%2FJ4jEK66gKyPot2ik3yX5ok%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1920&quot; height=&quot;1079&quot; data-filename=&quot;JLCPCB 회원가입하기.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1079&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2. 압축한 거버 파일을 화면에 보이는 곳으로 드래그하거나 열기로 넣어 주세요.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;실제 주문에 사용한 거버 파일입니다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;① 크리스마스트리 Tree&amp;nbsp; 디자인 거버파일&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;664&quot; data-origin-height=&quot;780&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ev5Dkx/btsKdeyJYVR/6WmYTwPzLokmRJBmLk0kMK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ev5Dkx/btsKdeyJYVR/6WmYTwPzLokmRJBmLk0kMK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ev5Dkx/btsKdeyJYVR/6WmYTwPzLokmRJBmLk0kMK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fev5Dkx%2FbtsKdeyJYVR%2F6WmYTwPzLokmRJBmLk0kMK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;664&quot; height=&quot;780&quot; data-origin-width=&quot;664&quot; data-origin-height=&quot;780&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;fileblock&quot; data-ke-align=&quot;alignCenter&quot;&gt;&lt;a href=&quot;https://blog.kakaocdn.net/dn/DmPe4/btsKb9ZfDJI/rwAlKg66bUHgg5ALR53UG1/Tree_art_10_08.zip?attach=1&amp;amp;knm=tfile.zip&quot; class=&quot;&quot;&gt;
    &lt;div class=&quot;image&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;desc&quot;&gt;&lt;div class=&quot;filename&quot;&gt;&lt;span class=&quot;name&quot;&gt;Tree_art_10_08.zip&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;size&quot;&gt;0.02MB&lt;/div&gt;
&lt;/div&gt;
  &lt;/a&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;② Snow Man 눈사람 디자인 거버 파일&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;563&quot; data-origin-height=&quot;778&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ciAsVX/btsKcj1JI6h/Q8PL6XbDqrstQZntfdO2h0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ciAsVX/btsKcj1JI6h/Q8PL6XbDqrstQZntfdO2h0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ciAsVX/btsKcj1JI6h/Q8PL6XbDqrstQZntfdO2h0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FciAsVX%2FbtsKcj1JI6h%2FQ8PL6XbDqrstQZntfdO2h0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;563&quot; height=&quot;778&quot; data-origin-width=&quot;563&quot; data-origin-height=&quot;778&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;fileblock&quot; data-ke-align=&quot;alignCenter&quot;&gt;&lt;a href=&quot;https://blog.kakaocdn.net/dn/bnVLJG/btsKdn99CAE/tCsyrljbr0oKU7WN68lhJ0/Snowman_art_10_08.zip?attach=1&amp;amp;knm=tfile.zip&quot; class=&quot;&quot;&gt;
    &lt;div class=&quot;image&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;desc&quot;&gt;&lt;div class=&quot;filename&quot;&gt;&lt;span class=&quot;name&quot;&gt;Snowman_art_10_08.zip&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;size&quot;&gt;0.01MB&lt;/div&gt;
&lt;/div&gt;
  &lt;/a&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;3. 업로드가 완료되면 보드 디자인을 미리 볼 수 있는 거버뷰어를 제공해요(클릭).&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1198&quot; data-origin-height=&quot;658&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/diXiUO/btsKblGvEmN/YKzjxaHVFtizBSA1gNiWnk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/diXiUO/btsKblGvEmN/YKzjxaHVFtizBSA1gNiWnk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/diXiUO/btsKblGvEmN/YKzjxaHVFtizBSA1gNiWnk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdiXiUO%2FbtsKblGvEmN%2FYKzjxaHVFtizBSA1gNiWnk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1198&quot; height=&quot;658&quot; data-origin-width=&quot;1198&quot; data-origin-height=&quot;658&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;4. 보드를 천천히 살펴보면서 자신의 설계에 문제가 없었는지, 꼼꼼히 확인해 주세요. &lt;br /&gt;만약 자신의 설계에 문제가 있었다면 보드가 제대로 동작하지 않으니 반드시 확인해 주세요.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;5. 지금 정도의 프로젝트라면 대부분 기본 설정 사항으로 해결이 될 거예요.&lt;br /&gt;소재는 FR4로 선택하고, 앞뒤 양면으로 설계했을 경우 레이어는 2로 선택하면 됩니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;치수는 자동으로 표시되는데요, 만약 보드 사이즈가 가로x세로 100mm 이하라면, 추가 비용 없이 이용가능합니다.&lt;br /&gt;100mm 이상일 경우 화면에 표시된 금액에서 사이즈에 따라 추가 요금을 지불해야 합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;PCB수량은 기본 5장이 제공되고 필요할 경우 더 많은 수량을 선택하세요.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;PCB 보드의 색은 7가지 중에서 선택가능하며, 녹색을 제외한 다른 색상을 선택할 경우 제작기간이 하루 더 소요되니 참고하세요.&amp;nbsp;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;829&quot; data-origin-height=&quot;768&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cFhYM0/btsKdlkvyu2/EkvfiKAoMxPJ6Ng9eYJ4m1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cFhYM0/btsKdlkvyu2/EkvfiKAoMxPJ6Ng9eYJ4m1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cFhYM0/btsKdlkvyu2/EkvfiKAoMxPJ6Ng9eYJ4m1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcFhYM0%2FbtsKdlkvyu2%2FEkvfiKAoMxPJ6Ng9eYJ4m1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;829&quot; height=&quot;768&quot; data-origin-width=&quot;829&quot; data-origin-height=&quot;768&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;나머지 옵션은 크게 변경할 일은 없으니 천천히 확인해 보세요.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 JLC PCB에서는 추가 비용을 지불하면 PCBA라고 하여 회로에 실장 되는 부품을 직접 구해서 납땜까지 제공해 주는 옵션도 있습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1040&quot; data-origin-height=&quot;644&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b2wEJ7/btsKcg5iqyf/QQT6w7xwdBwkWG59L7i7d0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b2wEJ7/btsKcg5iqyf/QQT6w7xwdBwkWG59L7i7d0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b2wEJ7/btsKcg5iqyf/QQT6w7xwdBwkWG59L7i7d0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb2wEJ7%2FbtsKcg5iqyf%2FQQT6w7xwdBwkWG59L7i7d0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1040&quot; height=&quot;644&quot; data-origin-width=&quot;1040&quot; data-origin-height=&quot;644&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;손으로 납땜이 조금 어려운 SMD 타입의 부품이 많이 있을 경우 이 옵션을 생각해 보면 좋겠네요.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;추가로 보드 외형을 눈사람으로 디자인해 봤는데요, 이 보드도 같이 주문해 볼게요.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;384&quot; data-origin-height=&quot;538&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/TtcEQ/btsKdO0YWOw/dBppkMrwkDtAlt9MKxh7KK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/TtcEQ/btsKdO0YWOw/dBppkMrwkDtAlt9MKxh7KK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/TtcEQ/btsKdO0YWOw/dBppkMrwkDtAlt9MKxh7KK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FTtcEQ%2FbtsKdO0YWOw%2FdBppkMrwkDtAlt9MKxh7KK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;384&quot; height=&quot;538&quot; data-origin-width=&quot;384&quot; data-origin-height=&quot;538&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;모든 사항이 체크되었으면 쇼핑 카트에 추가합니다.&amp;nbsp;&lt;br /&gt;장바구니 보기로 들어갑니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1189&quot; data-origin-height=&quot;665&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/yPVNe/btsKcOU7QJg/UV0q1jzHQzmk3JQkaoNS20/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/yPVNe/btsKcOU7QJg/UV0q1jzHQzmk3JQkaoNS20/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/yPVNe/btsKcOU7QJg/UV0q1jzHQzmk3JQkaoNS20/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FyPVNe%2FbtsKcOU7QJg%2FUV0q1jzHQzmk3JQkaoNS20%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1189&quot; height=&quot;665&quot; data-origin-width=&quot;1189&quot; data-origin-height=&quot;665&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;주문 품목을 모두 선택하고 Secure Checkout를 클릭하면 배송사를 선택할 수 있습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;635&quot; data-origin-height=&quot;454&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bvng8R/btsKcOt72AN/H43TS4X32SUGAaF9ikzxc0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bvng8R/btsKcOt72AN/H43TS4X32SUGAaF9ikzxc0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bvng8R/btsKcOt72AN/H43TS4X32SUGAaF9ikzxc0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbvng8R%2FbtsKcOt72AN%2FH43TS4X32SUGAaF9ikzxc0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;635&quot; height=&quot;454&quot; data-origin-width=&quot;635&quot; data-origin-height=&quot;454&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;회원가입 시 제공되는 쿠폰들을 사용할 수 있습니다.&lt;br /&gt;쿠폰 적용은 지금 단계에서는 표시되지 않고 결제 마지막 단계에서 적용되니 넘어가세요.&lt;br /&gt;배송지 주소를 영문으로 정확하게 입력해 주세요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;843&quot; data-origin-height=&quot;619&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/9vkj4/btsKbzrjVbu/Q3ycG4PKhouo2Kofsnv730/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/9vkj4/btsKbzrjVbu/Q3ycG4PKhouo2Kofsnv730/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/9vkj4/btsKbzrjVbu/Q3ycG4PKhouo2Kofsnv730/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F9vkj4%2FbtsKbzrjVbu%2FQ3ycG4PKhouo2Kofsnv730%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;843&quot; height=&quot;619&quot; data-origin-width=&quot;843&quot; data-origin-height=&quot;619&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;PCCC 항목에는 관세청 사이트에서 개인통관고유번호를 발급받아 입력하면 됩니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;결제 방식은 보통 신용카드로 하면 됩니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;870&quot; data-origin-height=&quot;674&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cXti2V/btsKdGaSBVf/zwfSteRi6iuK1UHbn2N8W1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cXti2V/btsKdGaSBVf/zwfSteRi6iuK1UHbn2N8W1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cXti2V/btsKdGaSBVf/zwfSteRi6iuK1UHbn2N8W1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcXti2V%2FbtsKdGaSBVf%2FzwfSteRi6iuK1UHbn2N8W1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;870&quot; height=&quot;674&quot; data-origin-width=&quot;870&quot; data-origin-height=&quot;674&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;결제 후 주문내역보기(Order history)로 들어가 보면, 데이터&amp;nbsp;확인을&amp;nbsp;하고&amp;nbsp;주문제작에&amp;nbsp;들어가게&amp;nbsp;됩니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1751&quot; data-origin-height=&quot;803&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/pCSbl/btsKbHo5dsz/TS8S2fXaLSP0hbhjQ7V8rK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/pCSbl/btsKbHo5dsz/TS8S2fXaLSP0hbhjQ7V8rK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/pCSbl/btsKbHo5dsz/TS8S2fXaLSP0hbhjQ7V8rK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FpCSbl%2FbtsKbHo5dsz%2FTS8S2fXaLSP0hbhjQ7V8rK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1751&quot; height=&quot;803&quot; data-origin-width=&quot;1751&quot; data-origin-height=&quot;803&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;만약, 업로드한 데이터가 잘못되거나 구성요소가 빠진 게 있다면 Audit Failed라는 화면이 교체하기(재업로드) 버튼을 클릭하여 수정된 파일을 다시 업로드하면 됩니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1339&quot; data-origin-height=&quot;695&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dbgYSf/btsKbwuCKK3/kjfAUWQQv3G5swumKOSCPK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dbgYSf/btsKbwuCKK3/kjfAUWQQv3G5swumKOSCPK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dbgYSf/btsKbwuCKK3/kjfAUWQQv3G5swumKOSCPK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdbgYSf%2FbtsKbwuCKK3%2FkjfAUWQQv3G5swumKOSCPK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1339&quot; height=&quot;695&quot; data-origin-width=&quot;1339&quot; data-origin-height=&quot;695&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;진행과정에서 중요한 사항을 등록한 이메일로 알려주니 주문 후에는 계속 메일을 체크해 주세요.&lt;/p&gt;
&lt;h3 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;color: #f89009;&quot;&gt;&lt;b&gt;4. PCB 보드 배송과 품질 확인&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;DHL&amp;nbsp;economy로&amp;nbsp;주문했고&amp;nbsp;매우&amp;nbsp;빠르게&amp;nbsp;배송받을&amp;nbsp;수&amp;nbsp;있었어요&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;701&quot; data-origin-height=&quot;795&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/6F5lx/btsKbysur3v/BhLw2hP8ZKptMK9ZG34HO0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/6F5lx/btsKbysur3v/BhLw2hP8ZKptMK9ZG34HO0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/6F5lx/btsKbysur3v/BhLw2hP8ZKptMK9ZG34HO0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F6F5lx%2FbtsKbysur3v%2FBhLw2hP8ZKptMK9ZG34HO0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;400&quot; height=&quot;454&quot; data-origin-width=&quot;701&quot; data-origin-height=&quot;795&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;526&quot; data-origin-height=&quot;525&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/naAIg/btsKb5JK6LC/zDv1BKqz2QohnZFO1C28E1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/naAIg/btsKb5JK6LC/zDv1BKqz2QohnZFO1C28E1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/naAIg/btsKb5JK6LC/zDv1BKqz2QohnZFO1C28E1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FnaAIg%2FbtsKb5JK6LC%2FzDv1BKqz2QohnZFO1C28E1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;400&quot; height=&quot;399&quot; data-origin-width=&quot;526&quot; data-origin-height=&quot;525&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;안전하게 진공 버블 포장으로 문제없이 잘 배송되었네요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1135&quot; data-origin-height=&quot;627&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bk07mk/btsKbChcHLD/5IKkqI91gJyC0Mesj8R5QK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bk07mk/btsKbChcHLD/5IKkqI91gJyC0Mesj8R5QK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bk07mk/btsKbChcHLD/5IKkqI91gJyC0Mesj8R5QK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbk07mk%2FbtsKbChcHLD%2F5IKkqI91gJyC0Mesj8R5QK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1135&quot; height=&quot;627&quot; data-origin-width=&quot;1135&quot; data-origin-height=&quot;627&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;제품의 마감이나 실크데이터 인쇄 품질이 아주 마음에 듭니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;893&quot; data-origin-height=&quot;819&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ed7nnT/btsKc26xRUn/zgVINcc7oyBw7tCSlvs4R0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ed7nnT/btsKc26xRUn/zgVINcc7oyBw7tCSlvs4R0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ed7nnT/btsKc26xRUn/zgVINcc7oyBw7tCSlvs4R0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fed7nnT%2FbtsKc26xRUn%2FzgVINcc7oyBw7tCSlvs4R0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;893&quot; height=&quot;819&quot; data-origin-width=&quot;893&quot; data-origin-height=&quot;819&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;color: #f89009;&quot;&gt;&lt;b&gt;5. PCB 보드에 부품 실장과 동작&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그럼, PCB 보드에 부품들을 올려 납땜해 볼게요.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1370&quot; data-origin-height=&quot;865&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/brojOo/btsKdExm9Od/Kv67VQ8eLpdByhqk4i2qFK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/brojOo/btsKdExm9Od/Kv67VQ8eLpdByhqk4i2qFK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/brojOo/btsKdExm9Od/Kv67VQ8eLpdByhqk4i2qFK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbrojOo%2FbtsKdExm9Od%2FKv67VQ8eLpdByhqk4i2qFK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1370&quot; height=&quot;865&quot; data-origin-width=&quot;1370&quot; data-origin-height=&quot;865&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;건전지는 +방향이 위로 향하게 넣어 주어야 합니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;485&quot; data-origin-height=&quot;404&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/oniZ7/btsKcdgDzJC/ZF1pfW13DPsRY1WeUnRGKk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/oniZ7/btsKcdgDzJC/ZF1pfW13DPsRY1WeUnRGKk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/oniZ7/btsKcdgDzJC/ZF1pfW13DPsRY1WeUnRGKk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FoniZ7%2FbtsKcdgDzJC%2FZF1pfW13DPsRY1WeUnRGKk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;485&quot; height=&quot;404&quot; data-origin-width=&quot;485&quot; data-origin-height=&quot;404&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;898&quot; data-origin-height=&quot;416&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bwsmMq/btsKbC9gDgC/3veFPojFHGWKKMKRhSPSu1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bwsmMq/btsKbC9gDgC/3veFPojFHGWKKMKRhSPSu1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bwsmMq/btsKbC9gDgC/3veFPojFHGWKKMKRhSPSu1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbwsmMq%2FbtsKbC9gDgC%2F3veFPojFHGWKKMKRhSPSu1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;898&quot; height=&quot;416&quot; data-origin-width=&quot;898&quot; data-origin-height=&quot;416&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;주의해야 할 것은 LED, IC, 7805, 전해콘덴서, 부저 등의 부품은 + - 극성을 구분해서 장착해야 합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;IC에 아두이노 코드를 프로그래밍하고 교체할 때는 이렇게 핀셋을 이용해서 핀이 휘지 않도록 주의하세요.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그럼 전원 스위치를 켜서 잘 작동되는지 볼게요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;350&quot; data-origin-height=&quot;449&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/czBfAw/btsKdnWXQw4/b187f6uUg6xb0bZnvTvHpK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/czBfAw/btsKdnWXQw4/b187f6uUg6xb0bZnvTvHpK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/czBfAw/btsKdnWXQw4/b187f6uUg6xb0bZnvTvHpK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FczBfAw%2FbtsKdnWXQw4%2Fb187f6uUg6xb0bZnvTvHpK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;350&quot; height=&quot;449&quot; data-origin-width=&quot;350&quot; data-origin-height=&quot;449&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;네, 아주 잘 작동되네요.&lt;/p&gt;
&lt;h3 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;color: #f89009;&quot;&gt;&lt;b&gt;6.&amp;nbsp; &amp;nbsp;&quot;3D 프린팅 스탠드&quot; 디자인과 출력&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 PCB를 받쳐줄 받침대를 3D 프린터로 만들어서 세워볼게요.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;우선 두 가지 버전으로 준비했는데요, 아래 이미지와 같은 Tree 트리나무 전용 스탠드 A 버전과&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1157&quot; data-origin-height=&quot;841&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dLztI6/btsKbScQvJ1/0Off3e9OJtPL1w3f80FaBk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dLztI6/btsKbScQvJ1/0Off3e9OJtPL1w3f80FaBk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dLztI6/btsKbScQvJ1/0Off3e9OJtPL1w3f80FaBk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdLztI6%2FbtsKbScQvJ1%2F0Off3e9OJtPL1w3f80FaBk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1157&quot; height=&quot;841&quot; data-origin-width=&quot;1157&quot; data-origin-height=&quot;841&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;fileblock&quot; data-ke-align=&quot;alignCenter&quot;&gt;&lt;a href=&quot;https://blog.kakaocdn.net/dn/dUW30Q/btsKcaqJB0M/TyheLW8W7SMcRfPkDhYM9k/3Dprint_PCB_Stand_A_Tree.zip?attach=1&amp;amp;knm=tfile.zip&quot; class=&quot;&quot;&gt;
    &lt;div class=&quot;image&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;desc&quot;&gt;&lt;div class=&quot;filename&quot;&gt;&lt;span class=&quot;name&quot;&gt;3Dprint_PCB_Stand_A_Tree.zip&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;size&quot;&gt;3.90MB&lt;/div&gt;
&lt;/div&gt;
  &lt;/a&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래 이미지와 같은 Snow Man &amp;amp; Tree 겸용 스탠드 B 버전으로 준비해 봤어요.&amp;nbsp;&lt;br /&gt;이 파일들에는 모두 Fusino360 모델링 파일인 ***.f3d 파일과, ***.stl 파일과,&amp;nbsp; ***.gcode 파일을 포함하였어요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1036&quot; data-origin-height=&quot;735&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/mFHb1/btsKbJ8cPYM/nesDM7en1dtrNCDc2U3PKK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/mFHb1/btsKbJ8cPYM/nesDM7en1dtrNCDc2U3PKK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/mFHb1/btsKbJ8cPYM/nesDM7en1dtrNCDc2U3PKK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FmFHb1%2FbtsKbJ8cPYM%2FnesDM7en1dtrNCDc2U3PKK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1036&quot; height=&quot;735&quot; data-origin-width=&quot;1036&quot; data-origin-height=&quot;735&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;fileblock&quot; data-ke-align=&quot;alignCenter&quot;&gt;&lt;a href=&quot;https://blog.kakaocdn.net/dn/xe9Fn/btsKcMwl3SD/1yFQD7XeTKEYTq6coASCTK/3Dprint_PCB_Stand_B_SnowMan.zip?attach=1&amp;amp;knm=tfile.zip&quot; class=&quot;&quot;&gt;
    &lt;div class=&quot;image&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;desc&quot;&gt;&lt;div class=&quot;filename&quot;&gt;&lt;span class=&quot;name&quot;&gt;3Dprint_PCB_Stand_B_SnowMan.zip&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;size&quot;&gt;3.46MB&lt;/div&gt;
&lt;/div&gt;
  &lt;/a&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;두 가지 버전을 스탠드에 세운 모습은 아래와 같습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;제작-결과물.png&quot; data-origin-width=&quot;2000&quot; data-origin-height=&quot;1409&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cIVPir/btsKcSb3esc/SGtZYlId8qo9cBxxaIFbh0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cIVPir/btsKcSb3esc/SGtZYlId8qo9cBxxaIFbh0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cIVPir/btsKcSb3esc/SGtZYlId8qo9cBxxaIFbh0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcIVPir%2FbtsKcSb3esc%2FSGtZYlId8qo9cBxxaIFbh0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;2000&quot; height=&quot;1409&quot; data-filename=&quot;제작-결과물.png&quot; data-origin-width=&quot;2000&quot; data-origin-height=&quot;1409&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;멜로디는 하나의 IC에 멜로디를 계속 바꾸어 업로드할 수 있고요, IC가 여러 개 있다면 서로 다른 멜로디를 업로드해서 이렇게 바꾸어 가며 사용할 수 있어요.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;735&quot; data-origin-height=&quot;545&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/o6xeA/btsKdMB7EQO/UWyeWAK6jIjmdUK6EAFwB1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/o6xeA/btsKdMB7EQO/UWyeWAK6jIjmdUK6EAFwB1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/o6xeA/btsKdMB7EQO/UWyeWAK6jIjmdUK6EAFwB1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fo6xeA%2FbtsKdMB7EQO%2FUWyeWAK6jIjmdUK6EAFwB1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;735&quot; height=&quot;545&quot; data-origin-width=&quot;735&quot; data-origin-height=&quot;545&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;color: #f89009;&quot;&gt;&lt;b&gt;7. 아두이노 및 tiny85&amp;nbsp; 멜로디 코드&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;[ 멜로디 코드 ]&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;① 먼저,&amp;nbsp; &quot;곰 세 마리&quot; 곡의 아두이노 우노(나노)용 코드는 아래와 같아요.&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;곰세마리악보에 코드넣기 .jpg&quot; data-origin-width=&quot;3507&quot; data-origin-height=&quot;2480&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cpC680/btsKb0V8Nf6/F9P1lo8UciBVSULsUnqkbk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cpC680/btsKb0V8Nf6/F9P1lo8UciBVSULsUnqkbk/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cpC680/btsKb0V8Nf6/F9P1lo8UciBVSULsUnqkbk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcpC680%2FbtsKb0V8Nf6%2FF9P1lo8UciBVSULsUnqkbk%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;3507&quot; height=&quot;2480&quot; data-filename=&quot;곰세마리악보에 코드넣기 .jpg&quot; data-origin-width=&quot;3507&quot; data-origin-height=&quot;2480&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;pre id=&quot;code_1729343350296&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;#include &quot;pitches.h&quot;
#define Speaker 5  // 스피커를 연결할 출력핀 설정
#define LED1 2
#define LED2 3
#define LED3 4
// 멜로디를 아래 배열에 순서대로 넣으세요
int melody[] = {   //  [ 멜로디에 관한 배열 ]   
  NOTE_C4, NOTE_C4, NOTE_C4, NOTE_C4, NOTE_C4,              // 곰 세 마 리 가   
  NOTE_E4, NOTE_G4, NOTE_G4, NOTE_E4, NOTE_C4,              // 한 집 에 있 어
  NOTE_G4, NOTE_G4, NOTE_E4, NOTE_G4, NOTE_G4, NOTE_E4,     // 아 빠 곰 엄 마 곰
  NOTE_C4,NOTE_C4,NOTE_C4,                                  // 애기곰
  NOTE_G4,NOTE_G4,NOTE_E4,NOTE_C4, NOTE_G4,NOTE_G4,NOTE_G4, // 아빠곰은 뚱뚱해
  NOTE_G4,NOTE_G4,NOTE_E4,NOTE_C4,NOTE_G4,NOTE_G4,NOTE_G4,  // 엄마곰은 날씬해 
  NOTE_G4,NOTE_G4,NOTE_E4,NOTE_C4,                          // 애기곰은 
  NOTE_G4,NOTE_G4,NOTE_G4,NOTE_A4,NOTE_G4,                  // 너무귀여워
  NOTE_C5,NOTE_G4,NOTE_C5,NOTE_G4,NOTE_E4,NOTE_D4,NOTE_C4   // 으쓱으쓱 잘한다          
}; 
float noteDurations[] =  {  // [ 음의 길이에 관한 배열 ]                      
  // 1 = 1박(4분음표)  ,  0.5 = 반박(8분음표) , 2 = 2박(2분음표)
  1, 0.5, 0.5, 1, 1,
  1, 0.5, 0.5, 1, 1, 
  0.5, 0.5, 1, 0.5, 0.5, 1, 
  1, 1, 2,  
  // 아빠곰은...
  1, 1, 1, 1, 1, 1, 2,
  1, 1, 1, 1, 1, 1, 2,  
  // 애기곰은 너무 귀여워...
  1, 1, 1, 1, 
  0.5, 0.5, 0.5, 0.5, 2,
  1, 1, 1, 1, 1, 1, 2
};
void setup() 
{
  pinMode(LED1,OUTPUT);   // LED1는 ATtiny85의 GPIO1번 핀을 의미함(※ 따로 선언을 하지 않아도 됨)
  pinMode(LED2,OUTPUT);
  pinMode(LED3,OUTPUT);
  digitalWrite(LED1, LOW);
  digitalWrite(LED2, LOW);
  digitalWrite(LED3, LOW);
  delay(1000);
  // LED1, LED2, LED3에 각각 다른 LED가 연결되어 있고
  // 배열에서 하나씩 멜로디를 읽을 때마다 LED1, LED2, LED3으로 번갈아 가며 출력(LED ON)하도록 합니다.
  for (int thisNote = 0; thisNote &amp;lt; sizeof(melody); thisNote++)
  {
    if(thisNote%3 == 1)  {
      digitalWrite(LED1, LOW);
      digitalWrite(LED2, HIGH);
      digitalWrite(LED3, LOW);
    }
    else if(thisNote%3 == 2) {
      digitalWrite(LED1, LOW);
      digitalWrite(LED2, LOW);
      digitalWrite(LED3, HIGH);
    }
    else  {
      digitalWrite(LED1, HIGH);
      digitalWrite(LED2, LOW);
      digitalWrite(LED3, LOW);
    }
    // 음표 길이를 계산하려면 1초를 500ms로 곱합니다
    // 템포는 333ms로 설정합니다. 이 값을 변경하면 템포가 변경됩니다.
    int noteDuration = 333 * noteDurations[thisNote];
    tone(Speaker, melody[thisNote], noteDuration);
    // 음표를 구분하려면 음표 사이의 최소 시간을 설정합니다.
    // 음표의 길이에 +30% 정도가 잘 적당합니다
    int pauseBetweenNotes = noteDuration * 1.20;
    delay(pauseBetweenNotes);    
    noTone(0);     // Tone 함수 재생 멈춤
  }
  digitalWrite(LED1, LOW);
  digitalWrite(LED2, LOW);
  digitalWrite(LED3, LOW);  
}
void loop() {
}&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;figure class=&quot;fileblock&quot; data-ke-align=&quot;alignCenter&quot;&gt;&lt;a href=&quot;https://blog.kakaocdn.net/dn/bwM03B/btsKbxmJ0eF/wI0o8ZrqKw5hnlaXxQbNv0/ThreeBears_nano.zip?attach=1&amp;amp;knm=tfile.zip&quot; class=&quot;&quot;&gt;
    &lt;div class=&quot;image&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;desc&quot;&gt;&lt;div class=&quot;filename&quot;&gt;&lt;span class=&quot;name&quot;&gt;ThreeBears_nano.zip&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;size&quot;&gt;0.00MB&lt;/div&gt;
&lt;/div&gt;
  &lt;/a&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래는 곰 세 마리의 ATtiny85 버전용 코드예요.&lt;/p&gt;
&lt;pre id=&quot;code_1729343702232&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;// PB1 ,  PB2 ...  wat not declared... 에러가 날 경우, 보드 선택을 ATtiny85로 했는지? 확인할 것!

#include &quot;pitches.h&quot;
#define Speaker 0  // 스피커를 연결할 출력핀 설정
// #define rest 0     // 음악 쉼표 주파수 0 Hz 설정

// 멜로디를 아래 배열에 순서대로 넣으세요
int melody[] = {   //  [ 멜로디에 관한 배열 ]   
  NOTE_C4, NOTE_C4, NOTE_C4, NOTE_C4, NOTE_C4,              // 곰 세 마 리 가   
  NOTE_E4, NOTE_G4, NOTE_G4, NOTE_E4, NOTE_C4,              // 한 집 에 있 어
  NOTE_G4, NOTE_G4, NOTE_E4, NOTE_G4, NOTE_G4, NOTE_E4,     // 아 빠 곰 엄 마 곰
  NOTE_C4,NOTE_C4,NOTE_C4,                                  // 애기곰
  NOTE_G4,NOTE_G4,NOTE_E4,NOTE_C4, NOTE_G4,NOTE_G4,NOTE_G4, // 아빠곰은 뚱뚱해
  NOTE_G4,NOTE_G4,NOTE_E4,NOTE_C4,NOTE_G4,NOTE_G4,NOTE_G4,  // 엄마곰은 날씬해 
  NOTE_G4,NOTE_G4,NOTE_E4,NOTE_C4,                          // 애기곰은 
  NOTE_G4,NOTE_G4,NOTE_G4,NOTE_A4,NOTE_G4,                  // 너무귀여워
  NOTE_C5,NOTE_G4,NOTE_C5,NOTE_G4,NOTE_E4,NOTE_D4,NOTE_C4   // 으쓱으쓱 잘한다          
}; 
float noteDurations[] =  {  // [ 음의 길이에 관한 배열 ]                      
  // 1 = 1박(4분음표)  ,  0.5 = 반박(8분음표) , 2 = 2박(2분음표)
  1, 0.5, 0.5, 1, 1,
  1, 0.5, 0.5, 1, 1, 
  0.5, 0.5, 1, 0.5, 0.5, 1, 
  1, 1, 2,  
  // 아빠곰은...
  1, 1, 1, 1, 1, 1, 2,
  1, 1, 1, 1, 1, 1, 2,  
  // 애기곰은 너무 귀여워...
  1, 1, 1, 1, 
  0.5, 0.5, 0.5, 0.5, 2,
  1, 1, 1, 1, 1, 1, 2
};
void setup() 
{
  pinMode(PB1,OUTPUT);   // PB1는 ATtiny85의 GPIO1번 핀을 의미함(※ 따로 선언을 하지 않아도 됨)
  pinMode(PB2,OUTPUT);
  pinMode(PB3,OUTPUT);
  digitalWrite(PB1, LOW);
  digitalWrite(PB2, LOW);
  digitalWrite(PB3, LOW);
  delay(1000);
 
  for (int thisNote = 0; thisNote &amp;lt; sizeof(melody); thisNote++)
  {
    if(thisNote%3 == 1)
    {
      digitalWrite(PB1, LOW);
      digitalWrite(PB2, HIGH);
      digitalWrite(PB3, LOW);
    }
    else if(thisNote%3 == 2)
    {
      digitalWrite(PB1, LOW);
      digitalWrite(PB2, LOW);
      digitalWrite(PB3, HIGH);
    }
    else
    {
      digitalWrite(PB1, HIGH);
      digitalWrite(PB2, LOW);
      digitalWrite(PB3, LOW);
    }
    // 음표 길이를 계산하려면 1초를 500ms로 곱합니다
    // 템포는 333ms로 설정합니다. 이 값을 변경하면 템포가 변경됩니다.
    int noteDuration = 333 * noteDurations[thisNote];
    tone(Speaker, melody[thisNote], noteDuration);
    // 음표를 구분하려면 음표 사이의 최소 시간을 설정합니다.
    // 음표의 길이에 +30% 정도가 잘 적당합니다
    int pauseBetweenNotes = noteDuration * 1.20;
    delay(pauseBetweenNotes);    
    noTone(0);     // Tone 함수 재생 멈춤
  }
  digitalWrite(PB1, LOW);
  digitalWrite(PB2, LOW);
  digitalWrite(PB3, LOW);
  digitalWrite(PB0, LOW);
}
void loop() {
}&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;figure class=&quot;fileblock&quot; data-ke-align=&quot;alignCenter&quot;&gt;&lt;a href=&quot;https://blog.kakaocdn.net/dn/dJuxcK/btsKb9ednTb/I6KJ6pUZ8kpURJYkqOH4KK/ThreeBears.zip?attach=1&amp;amp;knm=tfile.zip&quot; class=&quot;&quot;&gt;
    &lt;div class=&quot;image&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;desc&quot;&gt;&lt;div class=&quot;filename&quot;&gt;&lt;span class=&quot;name&quot;&gt;ThreeBears.zip&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;size&quot;&gt;0.00MB&lt;/div&gt;
&lt;/div&gt;
  &lt;/a&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;② 아래는 &quot; &lt;span style=&quot;background-color: #ffffff; color: #636363; text-align: left;&quot;&gt;We wish your Marry Christmas&quot; 곡입니다.&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;we_wish_you_a_merry_christmas.jpg&quot; data-origin-width=&quot;800&quot; data-origin-height=&quot;1035&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bg3jfr/btsKdmKvb5i/EvAY7ttYFP3j6yGEc74Go1/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bg3jfr/btsKdmKvb5i/EvAY7ttYFP3j6yGEc74Go1/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bg3jfr/btsKdmKvb5i/EvAY7ttYFP3j6yGEc74Go1/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbg3jfr%2FbtsKdmKvb5i%2FEvAY7ttYFP3j6yGEc74Go1%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;800&quot; height=&quot;1035&quot; data-filename=&quot;we_wish_you_a_merry_christmas.jpg&quot; data-origin-width=&quot;800&quot; data-origin-height=&quot;1035&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;pre id=&quot;code_1729344264564&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;// PB1 ,  PB2 ...  wat not declared... 에러가 날 경우, 보드 선택을 ATtiny85로 했는지? 확인할 것!
#include &quot;pitches.h&quot;
#define Speaker 0  // 스피커를 연결할 출력핀 설정
// #define rest 0     // 음악 쉼표 주파수 0 Hz 설정

// 멜로디를 아래 배열에 순서대로 넣으세요
int melody[] = {   //  [ 멜로디에 관한 배열 ]   
  //We wish you a merry christmas
  NOTE_C4, NOTE_F4, NOTE_F4, NOTE_G4, NOTE_F4, NOTE_E4, NOTE_D4, NOTE_D4,
  NOTE_D4, NOTE_G4, NOTE_G4, NOTE_A4, NOTE_G4, NOTE_F4, NOTE_E4, NOTE_C4,

  //We wish you a merry christmas 
  NOTE_C4, NOTE_A4, NOTE_A4, NOTE_AS4, NOTE_A4, NOTE_G4, NOTE_F4, NOTE_D4,
  NOTE_C4, NOTE_C4, NOTE_D4, NOTE_G4, NOTE_E4, NOTE_F4,

  //Good tidings we bring to you and ... 
  NOTE_C4, NOTE_F4, NOTE_F4, NOTE_F4, NOTE_E4,
  NOTE_E4, NOTE_F4, NOTE_E4, NOTE_D4, NOTE_C4,

  //Good tidings for Christmas ... 
  NOTE_C4, NOTE_A4, NOTE_G4, NOTE_F4, NOTE_C5, NOTE_C4,

  //and a happy new year 
  NOTE_C4, NOTE_C4, NOTE_D4, NOTE_G4, NOTE_E4, NOTE_F4
};
float noteDurations[] = {         // [ 음의 길이에 관한 배열 ]     
  //We wish you a merry christmas 
  // 1 = 1박(4분음표)  ,  0.5 = 반박(8분음표) , 2 = 2박(2분음표)
  1, 1, 0.5, 0.5, 0.5, 0.5, 1, 1,
  1, 1, 0.5, 0.5, 0.5, 0.5, 1, 1,  
  //We wish you a merry christmas and a happy new year
  1, 1, 0.5, 0.5, 0.5, 0.5, 1, 1,
  0.5, 0.5, 1, 2, 1, 2,
  //Good tidings we bring to you and ... 
  1, 1, 2, 1, 2,
  1, 1, 2, 1, 2,
  //Good tidings for Christmas ... 
  1, 1, 2, 1, 1, 2,
  //and a happy new year 
  0.5, 0.5, 1, 2, 1, 2
};
void setup() 
{
  pinMode(PB1,OUTPUT);
  pinMode(PB2,OUTPUT);
  pinMode(PB3,OUTPUT);
  digitalWrite(PB1, LOW);
  digitalWrite(PB2, LOW);
  digitalWrite(PB3, LOW);
  delay(1000);
  // iterate over the notes of the melody:
  for (int thisNote = 0; thisNote &amp;lt; sizeof(melody); thisNote++)
  {
    if(thisNote%3 == 1)
    {
      digitalWrite(PB1, LOW);
      digitalWrite(PB2, HIGH);
      digitalWrite(PB3, LOW);
    }
    else if(thisNote%3 == 2)
    {
      digitalWrite(PB1, LOW);
      digitalWrite(PB2, LOW);
      digitalWrite(PB3, HIGH);
    }
    else
    {
      digitalWrite(PB1, HIGH);
      digitalWrite(PB2, LOW);
      digitalWrite(PB3, LOW);
    }
    // 음표 길이를 계산하려면 1초를 500ms로 곱합니다
    // 템포는 333ms로 설정합니다. 이 값을 변경하면 템포가 변경됩니다.
    int noteDuration = 333 * noteDurations[thisNote];
    tone(Speaker, melody[thisNote], noteDuration);
    // 음표를 구분하려면 음표 사이의 최소 시간을 설정합니다.
    // 음표의 길이에 +30% 정도가 잘 적당합니다
    int pauseBetweenNotes = noteDuration * 1.20;
    delay(pauseBetweenNotes);    
    noTone(0);     // Tone 함수 재생 멈춤
  }
  digitalWrite(PB1, LOW);
  digitalWrite(PB2, LOW);
  digitalWrite(PB3, LOW);
  digitalWrite(PB0, LOW);
}
void loop() {
}&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;figure class=&quot;fileblock&quot; data-ke-align=&quot;alignCenter&quot;&gt;&lt;a href=&quot;https://blog.kakaocdn.net/dn/buDGLp/btsKcTve36P/BpniiGN2425yjJpneuq4KK/MerryChristmas_attiny85_LED.zip?attach=1&amp;amp;knm=tfile.zip&quot; class=&quot;&quot;&gt;
    &lt;div class=&quot;image&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;desc&quot;&gt;&lt;div class=&quot;filename&quot;&gt;&lt;span class=&quot;name&quot;&gt;MerryChristmas_attiny85_LED.zip&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;size&quot;&gt;0.00MB&lt;/div&gt;
&lt;/div&gt;
  &lt;/a&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;네, 이렇게 며칠 동안 나름? 신경 써서 성공적으로 프로젝트를 마무리하였습니다.&amp;nbsp;&amp;nbsp;&lt;br /&gt;필요한 분들에게 도움이 되었길 바라겠습니다.&amp;nbsp;&lt;br /&gt;그럼, 오늘도 행복한 하루 보내세요~&amp;nbsp; ^o^&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>아두이노/4. 프로젝트 LAB</category>
      <category>attiny85멜로디출력</category>
      <category>attiny85부트로더</category>
      <category>attiny85사용법</category>
      <category>attiny85음성출력</category>
      <category>jlc pcb 주문하기</category>
      <category>pcb diy 키트 만들기</category>
      <category>아두이노 크리스마스 diy 키트 만들기</category>
      <category>전자 orcad pcb 디자인 제작 주문하기</category>
      <category>크리스마스 키트 제작 만들기</category>
      <author>엑소더스팩토리</author>
      <guid isPermaLink="true">https://rasino.tistory.com/391</guid>
      <comments>https://rasino.tistory.com/391#entry391comment</comments>
      <pubDate>Sat, 19 Oct 2024 22:59:18 +0900</pubDate>
    </item>
    <item>
      <title>【AndroidStudio】 RecyclerView 실습 #1( 전화번호 뷰 목록 만들고 전화걸기 앱 만들기)</title>
      <link>https://rasino.tistory.com/390</link>
      <description>&lt;h3 data-ke-size=&quot;size23&quot;&gt;안드로이드 스튜디오에서 코틀린(Kotlin)으로 RecyclerView를 이용하여 연락처 화면을 만들어 스크롤할 수 있고, 터치하면 전화가 걸리도록 하는 앱 만들기 실습을 진행해 볼게요.&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;1. New Project &amp;rarr; Empty Views Activity를 선택하고&amp;nbsp; Title을 정해주세요.&amp;nbsp; 여기서는 RecycleView3라고 하였습니다.&lt;/b&gt;&lt;/h4&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;902&quot; data-origin-height=&quot;651&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/o7q6e/btsJDYKnyu4/xJ0qiKxYXxBcmqo5uvMxQk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/o7q6e/btsJDYKnyu4/xJ0qiKxYXxBcmqo5uvMxQk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/o7q6e/btsJDYKnyu4/xJ0qiKxYXxBcmqo5uvMxQk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fo7q6e%2FbtsJDYKnyu4%2FxJ0qiKxYXxBcmqo5uvMxQk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;902&quot; height=&quot;651&quot; data-origin-width=&quot;902&quot; data-origin-height=&quot;651&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;902&quot; data-origin-height=&quot;651&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cq1jhl/btsJCK7SSYS/LKpGcswNJaX7k91oELTTBK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cq1jhl/btsJCK7SSYS/LKpGcswNJaX7k91oELTTBK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cq1jhl/btsJCK7SSYS/LKpGcswNJaX7k91oELTTBK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fcq1jhl%2FbtsJCK7SSYS%2FLKpGcswNJaX7k91oELTTBK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;902&quot; height=&quot;651&quot; data-origin-width=&quot;902&quot; data-origin-height=&quot;651&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;2. 그래들(Gradle)과 메인액티비티(Main Activity)에서 뷰 바인딩(ViewBinding) 설정하기.&lt;/b&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;프로젝트 탐색창에서 &quot;Gradle Scripts&quot; 항목을 펼쳐보면 &quot;build.gradle.kts (Module :app)&quot; 이 보이고 더블클릭해 열어서 아래 이미지처럼 viewBinding.isEnabled = true를&amp;nbsp; android { ...&amp;nbsp; } 사이에 넣어주세요.&amp;nbsp; 그리고 변경사항이 적용될 수 있도록 &quot;Sync Now&quot;를 클릭해 주세요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1739&quot; data-origin-height=&quot;561&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dn59z4/btsJD7At6Ik/EKvsk4BRfmSuMgRPyP0lHk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dn59z4/btsJD7At6Ik/EKvsk4BRfmSuMgRPyP0lHk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dn59z4/btsJD7At6Ik/EKvsk4BRfmSuMgRPyP0lHk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fdn59z4%2FbtsJD7At6Ik%2FEKvsk4BRfmSuMgRPyP0lHk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1739&quot; height=&quot;561&quot; data-origin-width=&quot;1739&quot; data-origin-height=&quot;561&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;Main Activity에는 아래처럼 기본 설정 코드가 들어 있을 텐데요,&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;903&quot; data-origin-height=&quot;466&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b6GtKV/btsJDwAT1By/YPYbPnTsveufFCvilcEXpK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b6GtKV/btsJDwAT1By/YPYbPnTsveufFCvilcEXpK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b6GtKV/btsJDwAT1By/YPYbPnTsveufFCvilcEXpK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb6GtKV%2FbtsJDwAT1By%2FYPYbPnTsveufFCvilcEXpK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;903&quot; height=&quot;466&quot; data-origin-width=&quot;903&quot; data-origin-height=&quot;466&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;이를 아래와 같이 필요 없는 항목은 지우고 ViewBinding을 사용하기 위한 형태로 바꾸어 주세요.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;681&quot; data-origin-height=&quot;397&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/JI5U4/btsJCDnGgxs/QnO6du3Ylla64nMdMlY33K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/JI5U4/btsJCDnGgxs/QnO6du3Ylla64nMdMlY33K/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/JI5U4/btsJCDnGgxs/QnO6du3Ylla64nMdMlY33K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FJI5U4%2FbtsJCDnGgxs%2FQnO6du3Ylla64nMdMlY33K%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;681&quot; height=&quot;397&quot; data-origin-width=&quot;681&quot; data-origin-height=&quot;397&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;div style=&quot;background-color: #1e1f22; color: #bcbec4;&quot;&gt;
&lt;pre class=&quot;reasonml&quot;&gt;&lt;code&gt;val binding = ActivityMainBinding.inflate(layoutInflater)
setContentView(binding.root)
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;3. 전화번호 프로필(profile) 화면 구성하기.&amp;nbsp;&lt;/b&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;프로필의 화면 구성은 아래와 같이 해볼게요.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;프로젝트 탐색창에서&amp;nbsp; res 》 layout 에서 마우스 우클릭(이후로는 RMB로 표현)해서 New 》 Layout Resource File을 클릭하세요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;897&quot; data-origin-height=&quot;913&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cMYJmT/btsJDgFexER/1SaJRDrR8IkBZ7d2aKjWlk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cMYJmT/btsJDgFexER/1SaJRDrR8IkBZ7d2aKjWlk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cMYJmT/btsJDgFexER/1SaJRDrR8IkBZ7d2aKjWlk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcMYJmT%2FbtsJDgFexER%2F1SaJRDrR8IkBZ7d2aKjWlk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;897&quot; height=&quot;913&quot; data-origin-width=&quot;897&quot; data-origin-height=&quot;913&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;File name : 에&amp;nbsp; list_item이라 적고 OK를 클릭해 주세요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;826&quot; data-origin-height=&quot;499&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/RsooK/btsJDoQBUuq/3TI3O03OAmXXVEvRrnjYf0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/RsooK/btsJDoQBUuq/3TI3O03OAmXXVEvRrnjYf0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/RsooK/btsJDoQBUuq/3TI3O03OAmXXVEvRrnjYf0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FRsooK%2FbtsJDoQBUuq%2F3TI3O03OAmXXVEvRrnjYf0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;826&quot; height=&quot;499&quot; data-origin-width=&quot;826&quot; data-origin-height=&quot;499&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;그럼, 아래와 같이 layout 폴더에 list_item.xml이라는 파일이 생성된 것을 볼 수 있어요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1164&quot; data-origin-height=&quot;673&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/twICw/btsJDx7GY6U/ejtv64CAGBBQWGR3cwXifk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/twICw/btsJDx7GY6U/ejtv64CAGBBQWGR3cwXifk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/twICw/btsJDx7GY6U/ejtv64CAGBBQWGR3cwXifk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FtwICw%2FbtsJDx7GY6U%2Fejtv64CAGBBQWGR3cwXifk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1164&quot; height=&quot;673&quot; data-origin-width=&quot;1164&quot; data-origin-height=&quot;673&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;950&quot; data-origin-height=&quot;729&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dFgQac/btsJD0g9XwU/Ik7pKPbkVAWiucLlLoocb1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dFgQac/btsJD0g9XwU/Ik7pKPbkVAWiucLlLoocb1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dFgQac/btsJD0g9XwU/Ik7pKPbkVAWiucLlLoocb1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdFgQac%2FbtsJD0g9XwU%2FIk7pKPbkVAWiucLlLoocb1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;950&quot; height=&quot;729&quot; data-origin-width=&quot;950&quot; data-origin-height=&quot;729&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;4. 액티비티 메인(activity_main.xml) 화면 구성하기.&lt;/b&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;추가한 ConstraintLayout이 클릭되어 있는 상태에서 오른쪽에 있는 Constraint Widget의 &lt;span&gt;&amp;oplus; 표시를 눌러 상위에 있는 부모 Constrait Layout과 연결을 시켜주세요.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1386&quot; data-origin-height=&quot;993&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/sPc2i/btsJDVUEudj/4JvqYzUMCGZxsDMTB35L6k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/sPc2i/btsJDVUEudj/4JvqYzUMCGZxsDMTB35L6k/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/sPc2i/btsJDVUEudj/4JvqYzUMCGZxsDMTB35L6k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FsPc2i%2FbtsJDVUEudj%2F4JvqYzUMCGZxsDMTB35L6k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1386&quot; height=&quot;993&quot; data-origin-width=&quot;1386&quot; data-origin-height=&quot;993&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;그리고 아래 이미지처럼 각각의 마진(magin)을 8씩 주세요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1386&quot; data-origin-height=&quot;993&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/et8tDr/btsJDNPX7cK/UkRhz0mC1sw0JvTKM0w101/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/et8tDr/btsJDNPX7cK/UkRhz0mC1sw0JvTKM0w101/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/et8tDr/btsJDNPX7cK/UkRhz0mC1sw0JvTKM0w101/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fet8tDr%2FbtsJDNPX7cK%2FUkRhz0mC1sw0JvTKM0w101%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1386&quot; height=&quot;993&quot; data-origin-width=&quot;1386&quot; data-origin-height=&quot;993&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;우선, 전화번호 목록에 쓰일 사람들의 사진을 대신하여 이미지 아이콘을 다운로드하여 사용해 볼 텐데요,&amp;nbsp; flaticon.com에 접속하여 &quot; profile &quot; 로 검색해서 다운로드하여 볼게요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1054&quot; data-origin-height=&quot;848&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/lQeDw/btsJEjHzqAl/cn9ocCVpiJyjrpzeblLcD0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/lQeDw/btsJEjHzqAl/cn9ocCVpiJyjrpzeblLcD0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/lQeDw/btsJEjHzqAl/cn9ocCVpiJyjrpzeblLcD0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FlQeDw%2FbtsJEjHzqAl%2Fcn9ocCVpiJyjrpzeblLcD0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1054&quot; height=&quot;848&quot; data-origin-width=&quot;1054&quot; data-origin-height=&quot;848&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;검색된 아이콘들 중에 맘에 드는 것으로 몇 가지를 다운로드하여 보세요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1641&quot; data-origin-height=&quot;876&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dp072y/btsJDuQOady/ynkMNLzmvdUSgwH2kloIlk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dp072y/btsJDuQOady/ynkMNLzmvdUSgwH2kloIlk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dp072y/btsJDuQOady/ynkMNLzmvdUSgwH2kloIlk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fdp072y%2FbtsJDuQOady%2FynkMNLzmvdUSgwH2kloIlk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1641&quot; height=&quot;876&quot; data-origin-width=&quot;1641&quot; data-origin-height=&quot;876&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;다운로드 표시 부분을 클릭하지 말고 이미지 가운데를 클릭하면, 가로 세로 원하는 사이즈를 선택해서 받을 수 있어요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;136&quot; data-origin-height=&quot;109&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bco7Fb/btsJDdIHeMl/39g3KGRzVyuE5mdkEtkp6k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bco7Fb/btsJDdIHeMl/39g3KGRzVyuE5mdkEtkp6k/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bco7Fb/btsJDdIHeMl/39g3KGRzVyuE5mdkEtkp6k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbco7Fb%2FbtsJDdIHeMl%2F39g3KGRzVyuE5mdkEtkp6k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;136&quot; height=&quot;109&quot; data-origin-width=&quot;136&quot; data-origin-height=&quot;109&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;128픽셀을 선택해서 다운로드하세요.&amp;nbsp; 512픽셀로 받아도 되지만, 기본크기가 너무 커지므로 줄여서 받아볼게요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1059&quot; data-origin-height=&quot;626&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/WSY1y/btsJDeHzfDP/sfXS9YLXmbadLGaLDYVNwk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/WSY1y/btsJDeHzfDP/sfXS9YLXmbadLGaLDYVNwk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/WSY1y/btsJDeHzfDP/sfXS9YLXmbadLGaLDYVNwk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FWSY1y%2FbtsJDeHzfDP%2FsfXS9YLXmbadLGaLDYVNwk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1059&quot; height=&quot;626&quot; data-origin-width=&quot;1059&quot; data-origin-height=&quot;626&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;man (2).png&quot; data-origin-width=&quot;512&quot; data-origin-height=&quot;512&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ckIM8m/btsKzxZDcQ4/G1DMVs1epPZa9kWo1Ly0fk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ckIM8m/btsKzxZDcQ4/G1DMVs1epPZa9kWo1Ly0fk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ckIM8m/btsKzxZDcQ4/G1DMVs1epPZa9kWo1Ly0fk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FckIM8m%2FbtsKzxZDcQ4%2FG1DMVs1epPZa9kWo1Ly0fk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;100&quot; height=&quot;100&quot; data-filename=&quot;man (2).png&quot; data-origin-width=&quot;512&quot; data-origin-height=&quot;512&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;이 사이트의 경우 무료로는 하루 10개 정도 받을 수 있기 때문에 5개는 남자 이미지 5개는 여자 이미지로 총 10개를 다운로드하여서 아래와 같이 man1~5&amp;nbsp; ,&amp;nbsp; woman1~5로 네이밍 합니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;610&quot; data-origin-height=&quot;268&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bkDG60/btsJCLltuDQ/zSittNyXK9hVHVrlM1Knf0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bkDG60/btsJCLltuDQ/zSittNyXK9hVHVrlM1Knf0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bkDG60/btsJCLltuDQ/zSittNyXK9hVHVrlM1Knf0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbkDG60%2FbtsJCLltuDQ%2FzSittNyXK9hVHVrlM1Knf0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;610&quot; height=&quot;268&quot; data-origin-width=&quot;610&quot; data-origin-height=&quot;268&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;그럼, 윈도 탐색창에서 위의 다운로드한 파일을 모두 선택해서 Ctrl + C(복사) 한 후,&lt;br /&gt;안-스에서 프로젝트 탐색창의&amp;nbsp; res 》 drawable&amp;nbsp; 폴더를 선택하고&amp;nbsp; Ctrl + V(붙여 넣기) 하세요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;746&quot; data-origin-height=&quot;675&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/csJpTG/btsJDtLcjZo/bN9GmQp6hA8fsYnSgvrThK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/csJpTG/btsJDtLcjZo/bN9GmQp6hA8fsYnSgvrThK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/csJpTG/btsJDtLcjZo/bN9GmQp6hA8fsYnSgvrThK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcsJpTG%2FbtsJDtLcjZo%2FbN9GmQp6hA8fsYnSgvrThK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;746&quot; height=&quot;675&quot; data-origin-width=&quot;746&quot; data-origin-height=&quot;675&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;그리고 OK 버튼을 클릭하면 아래처럼 해당 폴더에 붙여 넣기 됩니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;368&quot; data-origin-height=&quot;558&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/uqV1N/btsJDr7CJhz/4WRyTqHI4mkQNWHbvCLA70/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/uqV1N/btsJDr7CJhz/4WRyTqHI4mkQNWHbvCLA70/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/uqV1N/btsJDr7CJhz/4WRyTqHI4mkQNWHbvCLA70/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FuqV1N%2FbtsJDr7CJhz%2F4WRyTqHI4mkQNWHbvCLA70%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;368&quot; height=&quot;558&quot; data-origin-width=&quot;368&quot; data-origin-height=&quot;558&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;물론 RMB 하여 Explorer 창을 열어 윈도 탐색창에 직업 붙여 넣기 해도 동일합니다. (해당 폴더를 바로 찾아 열어 볼 수 있음)&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;751&quot; data-origin-height=&quot;926&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/EzZml/btsJDzkbV5f/bIHFtNOJ0iORdqWQ9DPwcK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/EzZml/btsJDzkbV5f/bIHFtNOJ0iORdqWQ9DPwcK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/EzZml/btsJDzkbV5f/bIHFtNOJ0iORdqWQ9DPwcK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FEzZml%2FbtsJDzkbV5f%2FbIHFtNOJ0iORdqWQ9DPwcK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;751&quot; height=&quot;926&quot; data-origin-width=&quot;751&quot; data-origin-height=&quot;926&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;그럼, list_item.xml 파일에서 Widgets(위젯) 항목에 있는 ImageView를 편집화면에다 끌어다 놓기 하세요.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1045&quot; data-origin-height=&quot;653&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/0h4Uu/btsJDNCqOQ9/UlXhbRT9MCWCyHTNi1dhxK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/0h4Uu/btsJDNCqOQ9/UlXhbRT9MCWCyHTNi1dhxK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/0h4Uu/btsJDNCqOQ9/UlXhbRT9MCWCyHTNi1dhxK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F0h4Uu%2FbtsJDNCqOQ9%2FUlXhbRT9MCWCyHTNi1dhxK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1045&quot; height=&quot;653&quot; data-origin-width=&quot;1045&quot; data-origin-height=&quot;653&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;그리고 바로 나타나는 창에서 man1을 선택 후 OK 버튼을 클릭합니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;876&quot; data-origin-height=&quot;719&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/vldYQ/btsJEQkORe2/I3qM8hjG8D3EOwKTq2kyk1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/vldYQ/btsJEQkORe2/I3qM8hjG8D3EOwKTq2kyk1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/vldYQ/btsJEQkORe2/I3qM8hjG8D3EOwKTq2kyk1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FvldYQ%2FbtsJEQkORe2%2FI3qM8hjG8D3EOwKTq2kyk1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;876&quot; height=&quot;719&quot; data-origin-width=&quot;876&quot; data-origin-height=&quot;719&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;그리고 Attributes 속성 설정창에 보이는 Constrait Widget에서 화살표로 표시한 부분만 클릭해서 부모 Constraint Layout과 각각 연결시켜 주세요.&amp;nbsp; 이때 연결되는 3곳 각각의 magin은 8 정도로 세팅할게요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1141&quot; data-origin-height=&quot;772&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bT2sfC/btsJDrGx9GQ/zCaXCpeWHDhP2vM8uyj5X1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bT2sfC/btsJDrGx9GQ/zCaXCpeWHDhP2vM8uyj5X1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bT2sfC/btsJDrGx9GQ/zCaXCpeWHDhP2vM8uyj5X1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbT2sfC%2FbtsJDrGx9GQ%2FzCaXCpeWHDhP2vM8uyj5X1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1141&quot; height=&quot;772&quot; data-origin-width=&quot;1141&quot; data-origin-height=&quot;772&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;그리고 삽입한 man 이미지의 가로 폭(layout_width)과 세로 높이(layout_height)를 60dp로 설정해 주세요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;802&quot; data-origin-height=&quot;856&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cpei4x/btsJDXY9bw6/ezoSKk3RBLy1A09TzcgL1K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cpei4x/btsJDXY9bw6/ezoSKk3RBLy1A09TzcgL1K/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cpei4x/btsJDXY9bw6/ezoSKk3RBLy1A09TzcgL1K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fcpei4x%2FbtsJDXY9bw6%2FezoSKk3RBLy1A09TzcgL1K%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;802&quot; height=&quot;856&quot; data-origin-width=&quot;802&quot; data-origin-height=&quot;856&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;다음,&amp;nbsp; Component Tree창에서 두 번째 ConstraintLayout을 선택하고&amp;nbsp; 오른쪽 Constraints항목에 있는 부분에서 layout_height 만 wrap_content로 바꾸어 주세요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1124&quot; data-origin-height=&quot;926&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/v2pTN/btsJCGxSs3z/Zvp28txsJkLgY2AGpORyRk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/v2pTN/btsJCGxSs3z/Zvp28txsJkLgY2AGpORyRk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/v2pTN/btsJCGxSs3z/Zvp28txsJkLgY2AGpORyRk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fv2pTN%2FbtsJCGxSs3z%2FZvp28txsJkLgY2AGpORyRk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1124&quot; height=&quot;926&quot; data-origin-width=&quot;1124&quot; data-origin-height=&quot;926&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;다음, 제일 위에 있는 부모 ConstraintLayout을 선택해서 동일하게 layout_height를 wrap_content로 감싸주게 되면 아래 이미지처럼 이미지가 위쪽으로 정렬이 됩니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1087&quot; data-origin-height=&quot;671&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ztucc/btsJDyFA6yl/mRxFkdwUuXKhE5rSVaggUk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ztucc/btsJDyFA6yl/mRxFkdwUuXKhE5rSVaggUk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ztucc/btsJDyFA6yl/mRxFkdwUuXKhE5rSVaggUk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fztucc%2FbtsJDyFA6yl%2FmRxFkdwUuXKhE5rSVaggUk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1087&quot; height=&quot;671&quot; data-origin-width=&quot;1087&quot; data-origin-height=&quot;671&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;그다음, 이미지를 선택한 상태에서 id를 이미지 뷰를 줄인 약자(iv)로 해서 iv_profile로 설정해 볼게요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1081&quot; data-origin-height=&quot;646&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/3so6W/btsJCGkndOU/LyZGjXKkAZa1Vbw9xXAECK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/3so6W/btsJCGkndOU/LyZGjXKkAZa1Vbw9xXAECK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/3so6W/btsJCGkndOU/LyZGjXKkAZa1Vbw9xXAECK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F3so6W%2FbtsJCGkndOU%2FLyZGjXKkAZa1Vbw9xXAECK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1081&quot; height=&quot;646&quot; data-origin-width=&quot;1081&quot; data-origin-height=&quot;646&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;id를 변경하고 엔터를 치면 , 아래와 같이 창이 나타나고 OK를 한 번 더 눌러주면 됩니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1081&quot; data-origin-height=&quot;646&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/tBPXT/btsJCMkrBVq/lUKQTSv9qhJwuJipmnvtHk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/tBPXT/btsJCMkrBVq/lUKQTSv9qhJwuJipmnvtHk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/tBPXT/btsJCMkrBVq/lUKQTSv9qhJwuJipmnvtHk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FtBPXT%2FbtsJCMkrBVq%2FlUKQTSv9qhJwuJipmnvtHk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1081&quot; height=&quot;646&quot; data-origin-width=&quot;1081&quot; data-origin-height=&quot;646&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;670&quot; data-origin-height=&quot;359&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/tJ1kS/btsJCMrcNUG/pwQz2PEmHkyX7gk9Z69820/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/tJ1kS/btsJCMrcNUG/pwQz2PEmHkyX7gk9Z69820/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/tJ1kS/btsJCMrcNUG/pwQz2PEmHkyX7gk9Z69820/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FtJ1kS%2FbtsJCMrcNUG%2FpwQz2PEmHkyX7gk9Z69820%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;670&quot; height=&quot;359&quot; data-origin-width=&quot;670&quot; data-origin-height=&quot;359&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;① 텍스트뷰를 끌어다 놓고, id = tv_name&amp;nbsp; &amp;nbsp;,&amp;nbsp; &amp;nbsp;text = 홍길동 입력하고, 아래처럼 Constraint Widget의 연결을 해주세요.&amp;nbsp;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1662&quot; data-origin-height=&quot;926&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bOdj7a/btsJEo9Yg54/VAkbeQAIavfsSpeSgp9tok/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bOdj7a/btsJEo9Yg54/VAkbeQAIavfsSpeSgp9tok/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bOdj7a/btsJEo9Yg54/VAkbeQAIavfsSpeSgp9tok/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbOdj7a%2FbtsJEo9Yg54%2FVAkbeQAIavfsSpeSgp9tok%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1662&quot; height=&quot;926&quot; data-origin-width=&quot;1662&quot; data-origin-height=&quot;926&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;다음, text 속성에서 textSize = 16sp ,&amp;nbsp; &amp;nbsp;textColor = #040404&amp;nbsp; ,&amp;nbsp; textStyle = Bold로 변경합니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;725&quot; data-origin-height=&quot;434&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bCqa13/btsJDpPEMQv/cHmKhYDlSltk4nvHMQOcsk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bCqa13/btsJDpPEMQv/cHmKhYDlSltk4nvHMQOcsk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bCqa13/btsJDpPEMQv/cHmKhYDlSltk4nvHMQOcsk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbCqa13%2FbtsJDpPEMQv%2FcHmKhYDlSltk4nvHMQOcsk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;725&quot; height=&quot;434&quot; data-origin-width=&quot;725&quot; data-origin-height=&quot;434&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;② &quot;전화번호&quot;에 대한 TextView항목도 아래처럼 추가해 주세요.&lt;/b&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;Component Tree 창에서 tv_name을 Ctrl+C&amp;nbsp; ,&amp;nbsp; Ctrl+V 하면 동일한 속성으로 복사가 됩니다.&amp;nbsp; &amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1611&quot; data-origin-height=&quot;923&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bdsVTJ/btsJDIBk7iB/E5yKBYDyQN5qPoefQupYr1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bdsVTJ/btsJDIBk7iB/E5yKBYDyQN5qPoefQupYr1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bdsVTJ/btsJDIBk7iB/E5yKBYDyQN5qPoefQupYr1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbdsVTJ%2FbtsJDIBk7iB%2FE5yKBYDyQN5qPoefQupYr1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1611&quot; height=&quot;923&quot; data-origin-width=&quot;1611&quot; data-origin-height=&quot;923&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;그럼, id = tv_number로 바꾸고, 전화번호를 입력해 주세요.&amp;nbsp; &amp;nbsp;색상도 적당한 색으로 바꾸고, Constraint Widget의 연결을 왼쪽 이름에 연결하고 정당한 magin을 입력해 주세요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;751&quot; data-origin-height=&quot;610&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ndbEr/btsJDgrKtPw/YVoHyDJdD7voQkIgdHig91/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ndbEr/btsJDgrKtPw/YVoHyDJdD7voQkIgdHig91/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ndbEr/btsJDgrKtPw/YVoHyDJdD7voQkIgdHig91/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FndbEr%2FbtsJDgrKtPw%2FYVoHyDJdD7voQkIgdHig91%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;751&quot; height=&quot;610&quot; data-origin-width=&quot;751&quot; data-origin-height=&quot;610&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;③ 동일한 방법으로 이메일에 대한 textView도 추가해서 아래처럼 적당할게 설정해 주세요.&lt;/b&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1624&quot; data-origin-height=&quot;873&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cBsTq3/btsJCTX38Qt/sKSAkv5c8e3bsa7Ip6Rhvk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cBsTq3/btsJCTX38Qt/sKSAkv5c8e3bsa7Ip6Rhvk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cBsTq3/btsJCTX38Qt/sKSAkv5c8e3bsa7Ip6Rhvk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcBsTq3%2FbtsJCTX38Qt%2FsKSAkv5c8e3bsa7Ip6Rhvk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1624&quot; height=&quot;873&quot; data-origin-width=&quot;1624&quot; data-origin-height=&quot;873&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;④ 동일하게 생년월일에 대한 tv_birthday texView도 아래처럼 추가해 볼게요.&amp;nbsp;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1578&quot; data-origin-height=&quot;909&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bHYo4z/btsJDpoGkQ1/QykyQ8ES9Kh1gztg0m3TI0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bHYo4z/btsJDpoGkQ1/QykyQ8ES9Kh1gztg0m3TI0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bHYo4z/btsJDpoGkQ1/QykyQ8ES9Kh1gztg0m3TI0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbHYo4z%2FbtsJDpoGkQ1%2FQykyQ8ES9Kh1gztg0m3TI0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1578&quot; height=&quot;909&quot; data-origin-width=&quot;1578&quot; data-origin-height=&quot;909&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;정리된 모습&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;546&quot; data-origin-height=&quot;142&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bGlA5E/btsJCHwKLgN/jiFIBGIGOVUGmOaCzZ5RL1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bGlA5E/btsJCHwKLgN/jiFIBGIGOVUGmOaCzZ5RL1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bGlA5E/btsJCHwKLgN/jiFIBGIGOVUGmOaCzZ5RL1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbGlA5E%2FbtsJCHwKLgN%2FjiFIBGIGOVUGmOaCzZ5RL1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;546&quot; height=&quot;142&quot; data-origin-width=&quot;546&quot; data-origin-height=&quot;142&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;5.&amp;nbsp; list_item.xml에 대한 객체 모듈의 클래스 만들어주기&lt;/b&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;app 》 kotlin+java 》 com.example.recyclerview3&amp;nbsp; &amp;nbsp;&amp;lt;RMB&amp;gt; 해서&amp;nbsp; New 》 Kotlin Class/File을 클릭하세요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;882&quot; data-origin-height=&quot;399&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bqlvx3/btsJDz5Bt4t/HhGQzj51KFSgYb2GsMluO0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bqlvx3/btsJDz5Bt4t/HhGQzj51KFSgYb2GsMluO0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bqlvx3/btsJDz5Bt4t/HhGQzj51KFSgYb2GsMluO0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbqlvx3%2FbtsJDz5Bt4t%2FHhGQzj51KFSgYb2GsMluO0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;882&quot; height=&quot;399&quot; data-origin-width=&quot;882&quot; data-origin-height=&quot;399&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;그리고 이름에&amp;nbsp; Profile이라고 입력하고 엔터 하면&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;345&quot; data-origin-height=&quot;290&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bcUk7x/btsJDrtd2DB/suV3Gq6XajnNUzT8DsF211/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bcUk7x/btsJDrtd2DB/suV3Gq6XajnNUzT8DsF211/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bcUk7x/btsJDrtd2DB/suV3Gq6XajnNUzT8DsF211/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbcUk7x%2FbtsJDrtd2DB%2FsuV3Gq6XajnNUzT8DsF211%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;345&quot; height=&quot;290&quot; data-origin-width=&quot;345&quot; data-origin-height=&quot;290&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;Profile이라는 확장자가 KT인 코틀린 Class 파일이 생성된 것을 볼 수 있어요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;879&quot; data-origin-height=&quot;239&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/wd4w4/btsJDdaRmOi/AJYRJp9139MZW27uwgU4DK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/wd4w4/btsJDdaRmOi/AJYRJp9139MZW27uwgU4DK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/wd4w4/btsJDdaRmOi/AJYRJp9139MZW27uwgU4DK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fwd4w4%2FbtsJDdaRmOi%2FAJYRJp9139MZW27uwgU4DK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;879&quot; height=&quot;239&quot; data-origin-width=&quot;879&quot; data-origin-height=&quot;239&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;클래스 파일 내용은 아래와 같이 입력해서 &quot;사진이미지, 이름, 전화번호, 이메일, 생일&quot; 각각에 대한 인자와 받아들일 속성에 대해 정의해 주세요.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;546&quot; data-origin-height=&quot;142&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bGlA5E/btsJCHwKLgN/jiFIBGIGOVUGmOaCzZ5RL1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bGlA5E/btsJCHwKLgN/jiFIBGIGOVUGmOaCzZ5RL1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bGlA5E/btsJCHwKLgN/jiFIBGIGOVUGmOaCzZ5RL1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbGlA5E%2FbtsJCHwKLgN%2FjiFIBGIGOVUGmOaCzZ5RL1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;546&quot; height=&quot;142&quot; data-origin-width=&quot;546&quot; data-origin-height=&quot;142&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1429&quot; data-origin-height=&quot;245&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/caP3D9/btsJEkzPiBL/Y5BVDGAqepY7RKnDaMW4MK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/caP3D9/btsJEkzPiBL/Y5BVDGAqepY7RKnDaMW4MK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/caP3D9/btsJEkzPiBL/Y5BVDGAqepY7RKnDaMW4MK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcaP3D9%2FbtsJEkzPiBL%2FY5BVDGAqepY7RKnDaMW4MK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1429&quot; height=&quot;245&quot; data-origin-width=&quot;1429&quot; data-origin-height=&quot;245&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;이때 이미지의 경우 숫자로 처리할 수 있기 때문에 Int형으로 정의합니다.&lt;/p&gt;
&lt;div style=&quot;background-color: #1e1f22; color: #bcbec4;&quot;&gt;
&lt;pre class=&quot;angelscript&quot;&gt;&lt;code&gt;class Profile ( val picture : Int , val name : String , val telNum : String , val email : String , val birthDay : String )
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;6.&amp;nbsp; 어댑터 만들기 (Adapter)&lt;/b&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;어댑터는 뷰 홀더에서 만든 뷰 객체에 적절한 데이터를 대입해서 항목을 완성하는 역할을 하는데요,&amp;nbsp; 이어서 레이아웃 매니저가(LayoutManager) 어댑터가 만든 항목들을 어떻게 배치할지 결정하여 리사이클러 뷰에 출력합니다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;리사이클러뷰의 전체적인 구조는 아래와 같습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;리사이클러뷰 구조.png&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;553&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dB5lQ9/btsJEpOy9WF/Rwx37HqhWgXVH4m9P1v5B0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dB5lQ9/btsJEpOy9WF/Rwx37HqhWgXVH4m9P1v5B0/img.png&quot; data-alt=&quot;이미지 출처 : s2choco.tistory.com&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dB5lQ9/btsJEpOy9WF/Rwx37HqhWgXVH4m9P1v5B0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdB5lQ9%2FbtsJEpOy9WF%2FRwx37HqhWgXVH4m9P1v5B0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1280&quot; height=&quot;553&quot; data-filename=&quot;리사이클러뷰 구조.png&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;553&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;이미지 출처 : s2choco.tistory.com&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;리사이클러뷰 구조2.png&quot; data-origin-width=&quot;700&quot; data-origin-height=&quot;297&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/diHgw5/btsJCNcFEIj/zWTkIVzLCMOmqKoksBBvZK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/diHgw5/btsJCNcFEIj/zWTkIVzLCMOmqKoksBBvZK/img.png&quot; data-alt=&quot;이미지 출처 : recipes4dev.tistory.com&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/diHgw5/btsJCNcFEIj/zWTkIVzLCMOmqKoksBBvZK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdiHgw5%2FbtsJCNcFEIj%2FzWTkIVzLCMOmqKoksBBvZK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;700&quot; height=&quot;297&quot; data-filename=&quot;리사이클러뷰 구조2.png&quot; data-origin-width=&quot;700&quot; data-origin-height=&quot;297&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;이미지 출처 : recipes4dev.tistory.com&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;그럼,&amp;nbsp; 뷰홀더를 만들 때처럼,&amp;nbsp; &lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;app 》 kotlin+java&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;》 com.example.recyclerview3&amp;nbsp; &amp;nbsp;&amp;lt;RMB&amp;gt; 해서&amp;nbsp; New&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;》 Kotlin Class/File을 클릭하세요.&amp;nbsp; 파일 이름은 ProfileAdapter로 할게요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;345&quot; data-origin-height=&quot;290&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/nY2QN/btsJDc35jHz/z4HYBBVdOKna8oJ3Fv31E1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/nY2QN/btsJDc35jHz/z4HYBBVdOKna8oJ3Fv31E1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/nY2QN/btsJDc35jHz/z4HYBBVdOKna8oJ3Fv31E1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FnY2QN%2FbtsJDc35jHz%2Fz4HYBBVdOKna8oJ3Fv31E1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;345&quot; height=&quot;290&quot; data-origin-width=&quot;345&quot; data-origin-height=&quot;290&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;클래스 파일이 생성되면 아래와 같이 우선 작성하고, 만약 RecyclerView 글자가 빨간색으로 뜬다면, 리사이클러 뷰 위젯을 자동으로 삽입되도록 Alt+Enter 하세요.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1189&quot; data-origin-height=&quot;299&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/n64gr/btsJDPtym0j/BlLbXLgKsdgziSwDpzpUa1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/n64gr/btsJDPtym0j/BlLbXLgKsdgziSwDpzpUa1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/n64gr/btsJDPtym0j/BlLbXLgKsdgziSwDpzpUa1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fn64gr%2FbtsJDPtym0j%2FBlLbXLgKsdgziSwDpzpUa1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1189&quot; height=&quot;299&quot; data-origin-width=&quot;1189&quot; data-origin-height=&quot;299&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;그리고 아래처럼 코드를 이어서 작성하면, class ProfileAdapter 부분이 붉은색 밑줄이 그어지는데 마우스를 올리고 나타나는 팝업창에서 Implement members를 클릭해서 필요한 구성요소들이 자동으로 생성될 수 있도록 해줍니다. 또는 Alt+Shift+Enter&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1114&quot; data-origin-height=&quot;330&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/rl1eE/btsJETIxXBm/wBY182oQUGXJkaDPtggwk1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/rl1eE/btsJETIxXBm/wBY182oQUGXJkaDPtggwk1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/rl1eE/btsJETIxXBm/wBY182oQUGXJkaDPtggwk1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Frl1eE%2FbtsJETIxXBm%2FwBY182oQUGXJkaDPtggwk1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1114&quot; height=&quot;330&quot; data-origin-width=&quot;1114&quot; data-origin-height=&quot;330&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;376&quot; data-origin-height=&quot;583&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bXs2FJ/btsJDc35tqd/qtgyrrKHkIgjbpVp8c5hyk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bXs2FJ/btsJDc35tqd/qtgyrrKHkIgjbpVp8c5hyk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bXs2FJ/btsJDc35tqd/qtgyrrKHkIgjbpVp8c5hyk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbXs2FJ%2FbtsJDc35tqd%2FqtgyrrKHkIgjbpVp8c5hyk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;376&quot; height=&quot;583&quot; data-origin-width=&quot;376&quot; data-origin-height=&quot;583&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1066&quot; data-origin-height=&quot;621&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ddvYMr/btsJDWzcczz/M2u3q1BLFaqmgKyMxzse0k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ddvYMr/btsJDWzcczz/M2u3q1BLFaqmgKyMxzse0k/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ddvYMr/btsJDWzcczz/M2u3q1BLFaqmgKyMxzse0k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FddvYMr%2FbtsJDWzcczz%2FM2u3q1BLFaqmgKyMxzse0k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1066&quot; height=&quot;621&quot; data-origin-width=&quot;1066&quot; data-origin-height=&quot;621&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;이어서, CustomViewHolder 부분이 빨간 글자로 되는데, 이 부분도 마우스를 올리고 기다리고 있으면, 클래스를 자동으로 생성할 수 있도록 해줍니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1410&quot; data-origin-height=&quot;570&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/FjjpV/btsJEQypLNx/5C9C5HD3enZvXthKg9zIx0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/FjjpV/btsJEQypLNx/5C9C5HD3enZvXthKg9zIx0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/FjjpV/btsJEQypLNx/5C9C5HD3enZvXthKg9zIx0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FFjjpV%2FbtsJEQypLNx%2F5C9C5HD3enZvXthKg9zIx0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1410&quot; height=&quot;570&quot; data-origin-width=&quot;1410&quot; data-origin-height=&quot;570&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;그럼, 뷰홀더(View Holder) 클래스가 만들어지는데요,&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1005&quot; data-origin-height=&quot;154&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/PV4D2/btsJDGcuNu8/ePMvW10YmYqinhpi7qJom1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/PV4D2/btsJDGcuNu8/ePMvW10YmYqinhpi7qJom1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/PV4D2/btsJDGcuNu8/ePMvW10YmYqinhpi7qJom1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FPV4D2%2FbtsJDGcuNu8%2FePMvW10YmYqinhpi7qJom1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1005&quot; height=&quot;154&quot; data-origin-width=&quot;1005&quot; data-origin-height=&quot;154&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;아래와 같이 코드를 완성해 보세요. &lt;span style=&quot;color: #1b711d;&quot;&gt;&lt;i&gt;TODO&lt;/i&gt;&lt;/span&gt; 라고 되어 있는 부분들은 삭제하고,&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;list_item.xml에 있는&amp;nbsp;각각의 객체들을 findViewById로 변수명을 만들어 가져옵니다.&amp;nbsp;&lt;br /&gt;getItemCount( ) 함수는 Main Activity에 입력되는 데이터의 총개수를 구해오는 함수입니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1480&quot; data-origin-height=&quot;954&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/qZyiA/btsJD8M51bW/FX1yc8JhdJN1HaniFo57p1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/qZyiA/btsJD8M51bW/FX1yc8JhdJN1HaniFo57p1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/qZyiA/btsJD8M51bW/FX1yc8JhdJN1HaniFo57p1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FqZyiA%2FbtsJD8M51bW%2FFX1yc8JhdJN1HaniFo57p1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1480&quot; height=&quot;954&quot; data-origin-width=&quot;1480&quot; data-origin-height=&quot;954&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;div style=&quot;background-color: #1e1f22; color: #bcbec4;&quot;&gt;
&lt;pre class=&quot;bash&quot; data-ke-language=&quot;bash&quot;&gt;&lt;code&gt;package com.example.recyclerview3
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import android.widget.ImageView
import android.widget.TextView
import androidx.recyclerview.widget.RecyclerView

class ProfileAdapter ( val profileList: ArrayList&amp;lt;Profile&amp;gt; ) : RecyclerView.Adapter&amp;lt;ProfileAdapter.CustomViewHolder&amp;gt; ( )
{
    class CustomViewHolder (itemView: View) : RecyclerView.ViewHolder(itemView){    // : RecyclerView... 를 상속 받아 CustomViewHolder class를 작성함.
        val picture = itemView.findViewById&amp;lt;ImageView&amp;gt;(R.id.iv_profile)    // 인물 사진
        val name = itemView.findViewById&amp;lt;TextView&amp;gt;(R.id.tv_name)           // 이름
        val telNum = itemView.findViewById&amp;lt;TextView&amp;gt;(R.id.tv_number)       // 전화번호
        val email = itemView.findViewById&amp;lt;TextView&amp;gt;(R.id.tv_email)         // 이메일
        val birthday = itemView.findViewById&amp;lt;TextView&amp;gt;(R.id.tv_birthday)   // 생일
    }

    override fun onCreateViewHolder( parent: ViewGroup, viewType: Int ): ProfileAdapter.CustomViewHolder {
        val view = LayoutInflater.from(parent.context).inflate(R.layout.list_item, parent, false)   // parent에 있는 모든 정보(context)를 가져오는 설정 함.
        return CustomViewHolder(view)   // view 형태를 첨부 하여 위에서 정의한 CustomViewHolder( )를 리턴(호출) 함.
    }

    override fun onBindViewHolder(holder: ProfileAdapter.CustomViewHolder, position: Int) {
        holder.picture.setImageResource(profileList.get(position).picture)   // (MainActivity에서 데이터를 받아서) profileList에서 손으로 클릭(터치)되는 위치에 대한 정보를 가져옴.
        holder.name.text = profileList.get(position).name             // position 값은 데이터 0 부터 시작 됨.
        holder.telNum.text = profileList.get(position).telNum         // 만약 유형이 Int 숫자라면, 코드 마지막에 숫자를 문자열로 변환하는 코드를( '.toString()' ) 삽입해주면 에러나지 않음.
        holder.email.text = profileList.get(position).email
        holder.birthday.text = profileList.get(position).birthDay
    }

    override fun getItemCount(): Int {
        return profileList.size    // profileList의 총 데이터 갯수를 반환함.
    }
}&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;7.&amp;nbsp; 메인 레이아웃 구성하기 (activity_main.xml)&lt;/b&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;MainActivity.kt 파일을 열고서, 기본 주어지는 &quot;HolloWorld!&quot; textView를 지우고,&amp;nbsp; 아래처럼, Common 》 RecyclerView를 끌어다 놓으세요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1474&quot; data-origin-height=&quot;1006&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/rU0C2/btsJCJuENoU/qqGLkFTzsSNNRC8wQTgQ30/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/rU0C2/btsJCJuENoU/qqGLkFTzsSNNRC8wQTgQ30/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/rU0C2/btsJCJuENoU/qqGLkFTzsSNNRC8wQTgQ30/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FrU0C2%2FbtsJCJuENoU%2FqqGLkFTzsSNNRC8wQTgQ30%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1474&quot; height=&quot;1006&quot; data-origin-width=&quot;1474&quot; data-origin-height=&quot;1006&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;그리고, Constrait Wideget의 4곳을 모두 클릭해서 parant에 모두 연결시켜 주세요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1081&quot; data-origin-height=&quot;710&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/c4zqQZ/btsJEUHtQid/MkIqu4Jf27KZCmz7CfpaZ1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/c4zqQZ/btsJEUHtQid/MkIqu4Jf27KZCmz7CfpaZ1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/c4zqQZ/btsJEUHtQid/MkIqu4Jf27KZCmz7CfpaZ1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fc4zqQZ%2FbtsJEUHtQid%2FMkIqu4Jf27KZCmz7CfpaZ1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1081&quot; height=&quot;710&quot; data-origin-width=&quot;1081&quot; data-origin-height=&quot;710&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;리사이클러 뷰의 id는 rv_profile로 할게요.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1600&quot; data-origin-height=&quot;959&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/djUCZH/btsJET2Si0V/QMamF5Okx2eb8rm9t6O8OK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/djUCZH/btsJET2Si0V/QMamF5Okx2eb8rm9t6O8OK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/djUCZH/btsJET2Si0V/QMamF5Okx2eb8rm9t6O8OK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdjUCZH%2FbtsJET2Si0V%2FQMamF5Okx2eb8rm9t6O8OK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1600&quot; height=&quot;959&quot; data-origin-width=&quot;1600&quot; data-origin-height=&quot;959&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;8.&amp;nbsp; 메인 액티비티 구성하기&amp;nbsp; (MainActivity.kt)&lt;/b&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;먼저, findViewById 대신 바인딩을 사용하기 위해, onCreate ( ) 함수 내에 바인딩 선언을 해주세요.&amp;nbsp;&lt;/p&gt;
&lt;div style=&quot;background-color: #1e1f22; color: #bcbec4;&quot;&gt;
&lt;pre class=&quot;kotlin&quot;&gt;&lt;code&gt;class MainActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        val binding = ActivityMainBinding.inflate(layoutInflater)
        setContentView(binding.root)&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;그리고 profileList라는 변수를 만들고 arrayListOf ( )라는 리스트 함수를 사용하여 앞서 정의한 데이터들의 리스트를 담을 거예요.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;이때 앞서 만든 Profile 클래스의 데이터 형식에 맞추어 입력해 주면 됩니다.&amp;nbsp; 인물 Icon 이미지를 10개 준비했으니, 데이터도 우선 10개를 채워볼게요.&amp;nbsp; class Profile ( 사진, 이름, 전화번호, 이메일, 생일 )&amp;nbsp; 형태로 작성해 주면 됩니다.&lt;/p&gt;
&lt;div style=&quot;background-color: #1e1f22; color: #bcbec4;&quot;&gt;
&lt;pre class=&quot;lisp&quot;&gt;&lt;code&gt;val profileList = arrayListOf(
    Profile(R.drawable.woman1, &quot;유관순&quot;, &quot;010-0808-1515&quot;, &quot;korea@korea.com&quot; , &quot;08.15&quot;),
    Profile(R.drawable.man1, &quot;홍길동&quot;, &quot;010-1234-5678&quot;, &quot;gildong@chosun.com&quot; , &quot;03.05&quot;),
    Profile(R.drawable.man2, &quot;유재석&quot;, &quot;010-7777-8888&quot;, &quot;leejs@naver.com&quot; , &quot;07.07&quot;),
    Profile(R.drawable.woman2, &quot;엘사&quot;, &quot;010-3333-9999&quot;, &quot;elsa@gmail.com&quot; , &quot;12.25&quot;),
    Profile(R.drawable.man3, &quot;모피어스&quot;, &quot;010-2222-3434&quot;, &quot;morpheus@gmail.com&quot; , &quot;07.12&quot;),
    Profile(R.drawable.man4, &quot;네오&quot;, &quot;010-0505-4040&quot;, &quot;gildong@chosun.com&quot; , &quot;28.05&quot;),
    Profile(R.drawable.woman3, &quot;지예은&quot;, &quot;010-2323-9090&quot;, &quot;yeeun@daum.net&quot; , &quot;03.08&quot;),
    Profile(R.drawable.man5, &quot;정상훈&quot;, &quot;010-5555-7878&quot;, &quot;jeong@snlkorea.com&quot; , &quot;11.30&quot;),
    Profile(R.drawable.woman4, &quot;이수지&quot;, &quot;010-3030-7080&quot;, &quot;suji@snlkorea.com&quot; , &quot;06.20&quot;),
    Profile(R.drawable.woman5, &quot;김슬기&quot;, &quot;010-4747-5656&quot;, &quot;seulgi@snlkorea.com&quot; , &quot;28.05&quot;),
)&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;그리고 레이아웃매니저(layoutManager) 함수를 통해 어댑터가 만든 항목들을 어떻게 배치할지? (가로:HORIZONTAL, 세로:VERTICAL) 정해줍니다. 주로 위아래로 스크롤하는 형태가 되기 때문에, VERTICAL로 해주면 되고요.&lt;br /&gt;이제 제일 중요한, 어댑터를 최초로 사용하게 되는데,&amp;nbsp; ProfileAdapter( )를 가져와서 위에서 작성한 profileList를 담아 activity_main.xml&amp;nbsp; 레이아웃의 id를 rv_profile이라고 이름 지은 RecyclerView로 바인딩하여 전달(보여주기) 해 주면 됩니다.&lt;br /&gt;이 코드들은 아래와 같아요.&lt;/p&gt;
&lt;div style=&quot;background-color: #1e1f22; color: #bcbec4;&quot;&gt;
&lt;pre class=&quot;reasonml&quot;&gt;&lt;code&gt;binding.rvProfile.layoutManager = LinearLayoutManager(this, LinearLayoutManager.H VERTICAL, false)
binding.rvProfile.setHasFixedSize(true)  // 리사이클러뷰에 대한 성능개선 관련
binding.rvProfile.adapter = ProfileAdapter(profileList)&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;그럼,&amp;nbsp; MainActivity.kt 파일의 완성된 전체 코드를 한 번에 보여드리면 아래와 같아요.&amp;nbsp;&lt;/p&gt;
&lt;div style=&quot;background-color: #1e1f22; color: #bcbec4;&quot;&gt;
&lt;pre class=&quot;kotlin&quot;&gt;&lt;code&gt;package com.example.recyclerview3

import android.os.Bundle
import androidx.activity.enableEdgeToEdge
import androidx.appcompat.app.AppCompatActivity
import androidx.core.view.ViewCompat
import androidx.core.view.WindowInsetsCompat
import androidx.recyclerview.widget.LinearLayoutManager
import com.example.recyclerview3.databinding.ActivityMainBinding

class MainActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        val binding = ActivityMainBinding.inflate(layoutInflater)
        setContentView(binding.root)

        val profileList = arrayListOf(
            Profile(R.drawable.woman1, &quot;유관순&quot;, &quot;010-0808-1515&quot;, &quot;korea@korea.com&quot; , &quot;08.15&quot;),
            Profile(R.drawable.man1, &quot;홍길동&quot;, &quot;010-1234-5678&quot;, &quot;gildong@chosun.com&quot; , &quot;03.05&quot;),
            Profile(R.drawable.man2, &quot;유재석&quot;, &quot;010-7777-8888&quot;, &quot;leejs@naver.com&quot; , &quot;07.07&quot;),
            Profile(R.drawable.woman2, &quot;엘사&quot;, &quot;010-3333-9999&quot;, &quot;elsa@gmail.com&quot; , &quot;12.25&quot;),
            Profile(R.drawable.man3, &quot;모피어스&quot;, &quot;010-2222-3434&quot;, &quot;morpheus@gmail.com&quot; , &quot;07.12&quot;),
            Profile(R.drawable.man4, &quot;네오&quot;, &quot;010-0505-4040&quot;, &quot;gildong@chosun.com&quot; , &quot;28.05&quot;),
            Profile(R.drawable.woman3, &quot;지예은&quot;, &quot;010-2323-9090&quot;, &quot;yeeun@daum.net&quot; , &quot;03.08&quot;),
            Profile(R.drawable.man5, &quot;정상훈&quot;, &quot;010-5555-7878&quot;, &quot;jeong@snlkorea.com&quot; , &quot;11.30&quot;),
            Profile(R.drawable.woman4, &quot;이수지&quot;, &quot;010-3030-7080&quot;, &quot;suji@snlkorea.com&quot; , &quot;06.20&quot;),
            Profile(R.drawable.woman5, &quot;김슬기&quot;, &quot;010-4747-5656&quot;, &quot;seulgi@snlkorea.com&quot; , &quot;28.05&quot;),
        )
            binding.rvProfile.layoutManager = LinearLayoutManager(this, LinearLayoutManager.H VERTICAL, false)
            binding.rvProfile.setHasFixedSize(true)  // 리사이클러뷰에 대한 성능개선 관련
            binding.rvProfile.adapter = ProfileAdapter(profileList)
    }
}&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1181&quot; data-origin-height=&quot;722&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bxLhkD/btsJDFLu3xh/USAUaf5OhsFNkmKce8Yee0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bxLhkD/btsJDFLu3xh/USAUaf5OhsFNkmKce8Yee0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bxLhkD/btsJDFLu3xh/USAUaf5OhsFNkmKce8Yee0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbxLhkD%2FbtsJDFLu3xh%2FUSAUaf5OhsFNkmKce8Yee0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1181&quot; height=&quot;722&quot; data-origin-width=&quot;1181&quot; data-origin-height=&quot;722&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;자, 그럼 이 상태로 실행을 해서 확인을 해볼게요.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;786&quot; data-origin-height=&quot;1048&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/NTgE7/btsJDcb3ex7/7jXskXU0emenbtKT555o91/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/NTgE7/btsJDcb3ex7/7jXskXU0emenbtKT555o91/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/NTgE7/btsJDcb3ex7/7jXskXU0emenbtKT555o91/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FNTgE7%2FbtsJDcb3ex7%2F7jXskXU0emenbtKT555o91%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;786&quot; height=&quot;1048&quot; data-origin-width=&quot;786&quot; data-origin-height=&quot;1048&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;에뮬레이터에 뜬 화면을 마우스로 위아래 스크롤 해보면, 준비된 10개의 데이터가 스크롤되면서(VERTICAL) 잘 보이는 걸 알 수 있어요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;427&quot; data-origin-height=&quot;934&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/yzHMI/btsJDy6MlyH/i6CSFF0gXb5pL4Icvv5x9k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/yzHMI/btsJDy6MlyH/i6CSFF0gXb5pL4Icvv5x9k/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/yzHMI/btsJDy6MlyH/i6CSFF0gXb5pL4Icvv5x9k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FyzHMI%2FbtsJDy6MlyH%2Fi6CSFF0gXb5pL4Icvv5x9k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;427&quot; height=&quot;934&quot; data-origin-width=&quot;427&quot; data-origin-height=&quot;934&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;네, 대부분 잘 보이는데요,&amp;nbsp; 몇몇 데이터가 Constrait (제약) 연결된 상태에 따라 이름의 길이가 짧거나 하여 이메일 주소와 생일이 겹치는 부분이 보이는데요, 데이터에 따라 크게 겹치지 않도록 Constrait Wedjet에 있는 항목들의 간격을 조정해 보세요.&amp;nbsp;&lt;br /&gt;&amp;nbsp;생일의 TextView의 오른쪽이 전화번호의 오른쪽에 연결(연동) 시켜 놓았기 때문에&amp;nbsp; 이름이 짧은 사람은 전화번호가 앞으로 당겨지게 되고 이로인하서 생일도 전화번호의 오른쪽라인으로 기준이 당겨지기 때문에 이메일과 겹치는 부분이 발생하였습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;446&quot; data-origin-height=&quot;172&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cXsbFZ/btsJDbddiSD/ZS5sgi954vck8Dq76jTFdK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cXsbFZ/btsJDbddiSD/ZS5sgi954vck8Dq76jTFdK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cXsbFZ/btsJDbddiSD/ZS5sgi954vck8Dq76jTFdK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcXsbFZ%2FbtsJDbddiSD%2FZS5sgi954vck8Dq76jTFdK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;446&quot; height=&quot;172&quot; data-origin-width=&quot;446&quot; data-origin-height=&quot;172&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;따라서,&amp;nbsp; 해결방법은 전화번호의 왼쪽이 연결된 이름과의 여백(magin)을 충분히 띄워 주면 됩니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1429&quot; data-origin-height=&quot;732&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/nmMBd/btsJEPzyHHH/TrG8Xeh5gBySB3DNb8cPKk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/nmMBd/btsJEPzyHHH/TrG8Xeh5gBySB3DNb8cPKk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/nmMBd/btsJEPzyHHH/TrG8Xeh5gBySB3DNb8cPKk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FnmMBd%2FbtsJEPzyHHH%2FTrG8Xeh5gBySB3DNb8cPKk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1429&quot; height=&quot;732&quot; data-origin-width=&quot;1429&quot; data-origin-height=&quot;732&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;또는 이름의 오른쪽과 연결시킨 부분을 사진의 왼쪽 부분으로 바꾸어 연결시키고 간격을 90sp로 적정하게 벌어지도록 하면,&amp;nbsp; 이름의 길이에 따라 전화번호가 앞뒤는 움직이는 일은 없어서 깔끔하게 정렬된 출력을 볼 수 있어요.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;751&quot; data-origin-height=&quot;529&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cuROe9/btsJDvbfeZd/WHi4CXXmazFVLzDetpppH0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cuROe9/btsJDvbfeZd/WHi4CXXmazFVLzDetpppH0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cuROe9/btsJDvbfeZd/WHi4CXXmazFVLzDetpppH0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcuROe9%2FbtsJDvbfeZd%2FWHi4CXXmazFVLzDetpppH0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;751&quot; height=&quot;529&quot; data-origin-width=&quot;751&quot; data-origin-height=&quot;529&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;이렇게 조정 후, 다시 실행시켜 보면, 깔끔하게 정렬된 것을 볼 수 있습니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;423&quot; data-origin-height=&quot;937&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/Y2VuC/btsJDQMR5fG/Nhw1i3x81KHGgUStVQ1noK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Y2VuC/btsJDQMR5fG/Nhw1i3x81KHGgUStVQ1noK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Y2VuC/btsJDQMR5fG/Nhw1i3x81KHGgUStVQ1noK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FY2VuC%2FbtsJDQMR5fG%2FNhw1i3x81KHGgUStVQ1noK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;423&quot; height=&quot;937&quot; data-origin-width=&quot;423&quot; data-origin-height=&quot;937&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;9. 목록 클릭하여 정보 표시하기&amp;nbsp;&lt;/b&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;해당 목록을 클릭하면 Toast기능을 사용하여 간단한 메시지를 출력해 보도록 할게요.&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;예를 들어, itemView 목록에서 엘사를 터치하면, 엘사의 &quot;이름 [전화번호] , 이메일&quot;을 짧은 메시지 형태로 보여주도록 할게요.&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;ProfileAdapter.kt&amp;nbsp; 파일을 열고, onCreateViewHolder ( )&amp;nbsp; 함수 부분을 아래와 같이 수정(추가) 해 주세요.&amp;nbsp;&lt;/p&gt;
&lt;div style=&quot;background-color: #1e1f22; color: #bcbec4;&quot;&gt;
&lt;pre class=&quot;kotlin&quot;&gt;&lt;code&gt;override fun onCreateViewHolder( parent: ViewGroup, viewType: Int ): ProfileAdapter.CustomViewHolder {
    val view = LayoutInflater.from(parent.context).inflate(R.layout.list_item, parent, false)   // parent에 있는 모든 정보(context)를 가져오는 설정 함.
    return CustomViewHolder(view).apply {
        itemView.setOnClickListener {
            val cursorPosition : Int = adapterPosition
            val profile : Profile = profileList.get(cursorPosition)
            Toast.makeText(parent.context, &quot;-이름:${profile.name} [전화번호: ${profile.telNum}] \n-E메일: ${profile.email}&quot;, Toast.LENGTH_SHORT).show()
        }
    }
}&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1462&quot; data-origin-height=&quot;986&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bAqgxu/btsJEMv7cRq/6dXvrZbGWTaerU3FVtYdYk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bAqgxu/btsJEMv7cRq/6dXvrZbGWTaerU3FVtYdYk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bAqgxu/btsJEMv7cRq/6dXvrZbGWTaerU3FVtYdYk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbAqgxu%2FbtsJEMv7cRq%2F6dXvrZbGWTaerU3FVtYdYk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1462&quot; height=&quot;986&quot; data-origin-width=&quot;1462&quot; data-origin-height=&quot;986&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 실행해서 터치해 보면, 해당하는 정보를 띄워주는 것을 볼 수 있습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;실행결과(Toast).png&quot; data-origin-width=&quot;1356&quot; data-origin-height=&quot;936&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/x5b66/btsJDFdGJuM/EHKGCZxbFHST8M0u3cypdk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/x5b66/btsJDFdGJuM/EHKGCZxbFHST8M0u3cypdk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/x5b66/btsJDFdGJuM/EHKGCZxbFHST8M0u3cypdk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fx5b66%2FbtsJDFdGJuM%2FEHKGCZxbFHST8M0u3cypdk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1356&quot; height=&quot;936&quot; data-filename=&quot;실행결과(Toast).png&quot; data-origin-width=&quot;1356&quot; data-origin-height=&quot;936&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;10. 목록 클릭하여 전화걸기&lt;/b&gt;&lt;/h4&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;마지막으로, 해당 목록을 클릭하면 해당 연락처로 전화를 걸 수 있도록 해서 좀 더 효용성을 높여 봤습니다.&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;동일한 코드에 아랫부분만 수정해 보세요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1329&quot; data-origin-height=&quot;313&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cO1fwg/btsJDyyXyzW/vyoJJKJ5JSCjKTdvQC2GR0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cO1fwg/btsJDyyXyzW/vyoJJKJ5JSCjKTdvQC2GR0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cO1fwg/btsJDyyXyzW/vyoJJKJ5JSCjKTdvQC2GR0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcO1fwg%2FbtsJDyyXyzW%2FvyoJJKJ5JSCjKTdvQC2GR0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1329&quot; height=&quot;313&quot; data-origin-width=&quot;1329&quot; data-origin-height=&quot;313&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;div style=&quot;background-color: #1e1f22; color: #bcbec4;&quot;&gt;
&lt;pre class=&quot;kotlin&quot;&gt;&lt;code&gt;override fun onCreateViewHolder( parent: ViewGroup, viewType: Int ): ProfileAdapter.CustomViewHolder {
    val view = LayoutInflater.from(parent.context).inflate(R.layout.list_item, parent, false)   // parent에 있는 모든 정보(context)를 가져오는 설정 함.
    return CustomViewHolder(view).apply {
        itemView.setOnClickListener {
            val cursorPosition : Int = adapterPosition
            val profile : Profile = profileList.get(cursorPosition)
            val intent = Intent(Intent.ACTION_DIAL)
            intent.data = Uri.parse(&quot;tel:${profile.telNum}&quot;)
            itemView.context.startActivity(intent)
        }
    }
}&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;앱을 실행시켜 보면,&amp;nbsp; 서로 다른 항목을 클릭할 때마다 그 항목에 있는 전화번호로 전화 걸기가 잘 실행 되는 것을 볼 수 있네요.&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;&lt;b&gt;※ 주의!&amp;nbsp; 임의로 넣은 번호이지만 실제 해당 번호를 소유하고 있는 사람이 있을 수 있으므로, 실제 테스트하실 때는 가족이나 자신의 번호로 테스트해 보시길 바랍니다!&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;【 앱 실행 결과 】&lt;/b&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;① 엘사 터치 후 전화걸기가 실행되는 모습&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;실행결과(Tel-전화걸기)1.png&quot; data-origin-width=&quot;1014&quot; data-origin-height=&quot;939&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/xs6QQ/btsJDphWELI/c4Tn801FlsH7FrOiFvnh40/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/xs6QQ/btsJDphWELI/c4Tn801FlsH7FrOiFvnh40/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/xs6QQ/btsJDphWELI/c4Tn801FlsH7FrOiFvnh40/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fxs6QQ%2FbtsJDphWELI%2Fc4Tn801FlsH7FrOiFvnh40%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1014&quot; height=&quot;939&quot; data-filename=&quot;실행결과(Tel-전화걸기)1.png&quot; data-origin-width=&quot;1014&quot; data-origin-height=&quot;939&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;② 홍길동 터치 후 전화걸기가 실행되는 모습&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;실행결과(Tel-전화걸기)2.png&quot; data-origin-width=&quot;1002&quot; data-origin-height=&quot;939&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/C06EU/btsJDWsAGiD/mw2AUttT4eZtN3yvvWECWk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/C06EU/btsJDWsAGiD/mw2AUttT4eZtN3yvvWECWk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/C06EU/btsJDWsAGiD/mw2AUttT4eZtN3yvvWECWk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FC06EU%2FbtsJDWsAGiD%2Fmw2AUttT4eZtN3yvvWECWk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1002&quot; height=&quot;939&quot; data-filename=&quot;실행결과(Tel-전화걸기)2.png&quot; data-origin-width=&quot;1002&quot; data-origin-height=&quot;939&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;감사합니다.&lt;/b&gt;&lt;/p&gt;</description>
      <category>App개발/Android_Studio</category>
      <category>android rycyclerview making app 앱 만들기</category>
      <category>recyclerview 실습 예제 사용방법</category>
      <category>리사이클러뷰 실습예제</category>
      <category>리사이클러뷰로 전화걸기 코틀린 안드로이드앱 만들기</category>
      <category>안드로이드 스튜디오 코틀린 실습</category>
      <author>엑소더스팩토리</author>
      <guid isPermaLink="true">https://rasino.tistory.com/390</guid>
      <comments>https://rasino.tistory.com/390#entry390comment</comments>
      <pubDate>Sun, 15 Sep 2024 10:50:18 +0900</pubDate>
    </item>
    <item>
      <title>【AndroidStudio】 gradle 관련 에러 해결하기!</title>
      <link>https://rasino.tistory.com/389</link>
      <description>&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;[ 에러 증상과 주요 메시지 ]&lt;/b&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;안드로이드 스튜디오를 사용하면서, 외부 프로젝트를 Import 시켰는데, 갑자기 아래와 같은 에러가 발생하면서 기존 잘 되던 프로젝트도 실행이 안 되는 일이 발생하였는데요,&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;&lt;b&gt;&lt;span style=&quot;letter-spacing: 0px;&quot;&gt;android studio&amp;nbsp;&amp;nbsp;Could not read workspace metadata from ...&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;&lt;b&gt;android&amp;nbsp;studio&amp;nbsp;Multiple&amp;nbsp;build&amp;nbsp;operations&amp;nbsp;failed.&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;android&amp;nbsp;studio&amp;nbsp;metadata.bin&amp;nbsp;&lt;/span&gt;(지정된&amp;nbsp;파일을&amp;nbsp;찾을&amp;nbsp;수&amp;nbsp;없습니다)&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;metadata.bin 에러.png&quot; data-origin-width=&quot;1771&quot; data-origin-height=&quot;1004&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bmaobO/btsJxiiiOA2/sI8XFaqBoIeX35aOkrNkG0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bmaobO/btsJxiiiOA2/sI8XFaqBoIeX35aOkrNkG0/img.png&quot; data-alt=&quot;에러 상황&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bmaobO/btsJxiiiOA2/sI8XFaqBoIeX35aOkrNkG0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbmaobO%2FbtsJxiiiOA2%2FsI8XFaqBoIeX35aOkrNkG0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1771&quot; height=&quot;1004&quot; data-filename=&quot;metadata.bin 에러.png&quot; data-origin-width=&quot;1771&quot; data-origin-height=&quot;1004&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;에러 상황&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;짐작하기로는 Import한 프로젝트와&amp;nbsp;&lt;span&gt;&amp;nbsp;&lt;/span&gt;현재의 SDK 및 Gradle 버전과 달라서 충돌로 인한 오류가 생긴 것으로 추측을 해보는데요,&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;이를 해결하기 위해, 기존 알려진 Invalidate Caches 삭제와 Reload All from Disk , Repair IDE 등등을 실행해 보았지만 해결되지 않았는데요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;04.png&quot; data-origin-width=&quot;362&quot; data-origin-height=&quot;650&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bbfSCy/btsJvUbSZw8/YWwB1snDAmbrL9Bypercz1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bbfSCy/btsJvUbSZw8/YWwB1snDAmbrL9Bypercz1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bbfSCy/btsJvUbSZw8/YWwB1snDAmbrL9Bypercz1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbbfSCy%2FbtsJvUbSZw8%2FYWwB1snDAmbrL9Bypercz1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;362&quot; height=&quot;650&quot; data-filename=&quot;04.png&quot; data-origin-width=&quot;362&quot; data-origin-height=&quot;650&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;결국, 이와 같은 증상의 해결방법은 아래와 같았으니, 같은 에러 증상일 경우 시도해 보세요.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;에러 메시지를 보면, &quot; android studio metadata.bin (지정된 파일을 찾을 수 없습니다) &quot;&amp;nbsp; 부분에 있는 matadata.bin 파일에 문제가 생긴것을 알 수 있는데, 보여지는 경로로 탐색창을 열어 찾아갑니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;02.png&quot; data-origin-width=&quot;1035&quot; data-origin-height=&quot;643&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/YkUhf/btsJxBomWLg/hELklYksS36QVgNlL7wjDK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/YkUhf/btsJxBomWLg/hELklYksS36QVgNlL7wjDK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/YkUhf/btsJxBomWLg/hELklYksS36QVgNlL7wjDK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FYkUhf%2FbtsJxBomWLg%2FhELklYksS36QVgNlL7wjDK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1035&quot; height=&quot;643&quot; data-filename=&quot;02.png&quot; data-origin-width=&quot;1035&quot; data-origin-height=&quot;643&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 문제가 된 경로의 폴더 transforms-4를 삭제 해보세요.&amp;nbsp; 어차피 캐시 폴더의 내용들이니 삭제를 해도 문제는 없을 것이고 다시 작성 될 거예요.&amp;nbsp; 삭제를 할 때는 모든 안드로이드 스튜디오 프로젝트를 닫아주세요.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 다시 안드로이드 스튜디오를 실행시키면 아래처럼 잘 실행 되는 것을 볼 수 있습니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1530&quot; data-origin-height=&quot;1014&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/Czh4j/btsJwP11kdt/TKApYH0Q9XhUNAxdGI4250/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Czh4j/btsJwP11kdt/TKApYH0Q9XhUNAxdGI4250/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Czh4j/btsJwP11kdt/TKApYH0Q9XhUNAxdGI4250/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FCzh4j%2FbtsJwP11kdt%2FTKApYH0Q9XhUNAxdGI4250%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1530&quot; height=&quot;1014&quot; data-origin-width=&quot;1530&quot; data-origin-height=&quot;1014&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;오늘은 안드로이드 스튜디오를 사용할 때 외부 프로젝트를 Import 시켜 테스트해볼 때 겪을 수 있는 오류와 이를 해결하는 방법에 대해 다루어 보았습니다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;감사합니다.&lt;/p&gt;</description>
      <category>App개발/Android_Studio</category>
      <category>android studio  could not read workspace metadata from</category>
      <category>android studio metadata.bin (지정된 파일을 찾을 수 없습니다)</category>
      <category>android studio multiple build operations failed.</category>
      <category>안드로이드 스튜디오 gradle 관련 에러</category>
      <category>안드로이드 스튜디오 외부 project import 후에 에러가 생길 때</category>
      <author>엑소더스팩토리</author>
      <guid isPermaLink="true">https://rasino.tistory.com/389</guid>
      <comments>https://rasino.tistory.com/389#entry389comment</comments>
      <pubDate>Tue, 10 Sep 2024 14:49:51 +0900</pubDate>
    </item>
    <item>
      <title>【AndroidStudio】 기본 버튼 스타일을 다양하게 바꾸어 보자~!</title>
      <link>https://rasino.tistory.com/388</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;▶ 최신 버전의 안드로이드 스튜디오로 앱을 제작 시 둥글면서 보라색 배경의 기본 버튼이 제공됩니다. 하지만 이런 기본 제공 되는 버튼의 스타일이 썩 맘에 들지는 않는데요, 그래서 버튼의 모서리 곡률도 조절해서 사각버튼도 만들고 테두리 두께와 색상도 바꾸고 버튼의 배경 색상을 바꾸어 보는 실습을 준비했습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래 이미지가 오늘 실습의 결과물입니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;434&quot; data-origin-height=&quot;766&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/chSsEO/btsJuszbMpo/Xx0dPAy4hj5kWTczduJkZ1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/chSsEO/btsJuszbMpo/Xx0dPAy4hj5kWTczduJkZ1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/chSsEO/btsJuszbMpo/Xx0dPAy4hj5kWTczduJkZ1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FchSsEO%2FbtsJuszbMpo%2FXx0dPAy4hj5kWTczduJkZ1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;434&quot; height=&quot;766&quot; data-origin-width=&quot;434&quot; data-origin-height=&quot;766&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;각각을 버튼으로 만들었으니, 각각의 버튼을 클릭할 때마다 각 버튼의 컬러 코드와, 테두리(Radius) 반지름 값과, 두께를 Toast 함수를 이용해서 메시지로 표시하도록 하였습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;397&quot; data-origin-height=&quot;853&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/c7vUpX/btsJuAcIyXB/0wQPtKonNL9A5QRcyjhqO0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/c7vUpX/btsJuAcIyXB/0wQPtKonNL9A5QRcyjhqO0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/c7vUpX/btsJuAcIyXB/0wQPtKonNL9A5QRcyjhqO0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fc7vUpX%2FbtsJuAcIyXB%2F0wQPtKonNL9A5QRcyjhqO0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;397&quot; height=&quot;853&quot; data-origin-width=&quot;397&quot; data-origin-height=&quot;853&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그럼, 코드 작성에 대해 설명드릴게요.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;먼저, 안드로이드 스튜디오에서 새프로젝트를 열고,&amp;nbsp; Empty Views Activity를 선택해 주세요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;915&quot; data-origin-height=&quot;660&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/d12nBQ/btsJuEM00bz/qSDnnX3h0ICvK8aR9H3ZK1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/d12nBQ/btsJuEM00bz/qSDnnX3h0ICvK8aR9H3ZK1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/d12nBQ/btsJuEM00bz/qSDnnX3h0ICvK8aR9H3ZK1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fd12nBQ%2FbtsJuEM00bz%2FqSDnnX3h0ICvK8aR9H3ZK1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;915&quot; height=&quot;660&quot; data-origin-width=&quot;915&quot; data-origin-height=&quot;660&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- 그래들 항목에서 build.gradle.kts (Module :app)로 들어가서 viewBinding.isEnabled = true를 추가하고 Sync Now를 적용해 주세요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1436&quot; data-origin-height=&quot;838&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/o2TWR/btsJwc2LGvj/Enu0wr8Co16SRv5LqCrtTk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/o2TWR/btsJwc2LGvj/Enu0wr8Co16SRv5LqCrtTk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/o2TWR/btsJwc2LGvj/Enu0wr8Co16SRv5LqCrtTk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fo2TWR%2FbtsJwc2LGvj%2FEnu0wr8Co16SRv5LqCrtTk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1436&quot; height=&quot;838&quot; data-origin-width=&quot;1436&quot; data-origin-height=&quot;838&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;res 》 drawable 에 마우스 우클릭(RMB) 하여 New 》 Drawable Resource File로 버튼 설정에 관한 새 리소스 파일들을 만들어 줄게요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;778&quot; data-origin-height=&quot;481&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dyJakr/btsJvvV3VGY/cXjf9K6tS1D61EvHnEOwPK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dyJakr/btsJvvV3VGY/cXjf9K6tS1D61EvHnEOwPK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dyJakr/btsJvvV3VGY/cXjf9K6tS1D61EvHnEOwPK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdyJakr%2FbtsJvvV3VGY%2FcXjf9K6tS1D61EvHnEOwPK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;778&quot; height=&quot;481&quot; data-origin-width=&quot;778&quot; data-origin-height=&quot;481&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;파일 이름은 square_btn1.xml&amp;nbsp; 로 할게요.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;837&quot; data-origin-height=&quot;505&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cyKwPM/btsJv8F8UxS/bu4EXw6vGKsbYxHow4Jom0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cyKwPM/btsJv8F8UxS/bu4EXw6vGKsbYxHow4Jom0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cyKwPM/btsJv8F8UxS/bu4EXw6vGKsbYxHow4Jom0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcyKwPM%2FbtsJv8F8UxS%2Fbu4EXw6vGKsbYxHow4Jom0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;837&quot; height=&quot;505&quot; data-origin-width=&quot;837&quot; data-origin-height=&quot;505&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;연속해서 square_btn4.xml 까지 총 4개의 파일을 추가해 주세요. (아래 참고)&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;399&quot; data-origin-height=&quot;480&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/7WEE8/btsJvYcFL6O/PfcEaKDMNrgJYf33TPL1hK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/7WEE8/btsJvYcFL6O/PfcEaKDMNrgJYf33TPL1hK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/7WEE8/btsJvYcFL6O/PfcEaKDMNrgJYf33TPL1hK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F7WEE8%2FbtsJvYcFL6O%2FPfcEaKDMNrgJYf33TPL1hK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;399&quot; height=&quot;480&quot; data-origin-width=&quot;399&quot; data-origin-height=&quot;480&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그럼, 각각의 square_btn1...&amp;nbsp; 파일에 아래와 같이 코드를 입력해 주세요.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;[ square_btn1 ]&lt;/p&gt;
&lt;div style=&quot;background-color: #1e1f22; color: #bcbec4;&quot;&gt;
&lt;pre class=&quot;xml&quot;&gt;&lt;code&gt;&amp;lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&amp;gt;
&amp;lt;shape xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;&amp;gt;
    &amp;lt;!-- solid로 색상 변경 --&amp;gt;
    &amp;lt;solid android:color=&quot;#FFEB3B&quot; /&amp;gt;
    &amp;lt;!-- 0dp는 모서리를 사각형으로 만듭니다 --&amp;gt;
    &amp;lt;corners android:radius=&quot;80dp&quot; /&amp;gt;
    &amp;lt;!-- 테두리 굵기와 색상 주기--&amp;gt;
    &amp;lt;stroke android:width=&quot;8dp&quot; android:color=&quot;#85790C&quot;/&amp;gt;
&amp;lt;/shape&amp;gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;[ square_btn2 ]&lt;/p&gt;
&lt;div style=&quot;background-color: #1e1f22; color: #bcbec4;&quot;&gt;
&lt;pre class=&quot;xml&quot;&gt;&lt;code&gt;&amp;lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&amp;gt;
    &amp;lt;shape xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;&amp;gt;
        &amp;lt;!-- solid로 색상 변경 --&amp;gt;
        &amp;lt;solid android:color=&quot;#FF9800&quot; /&amp;gt;
        &amp;lt;!-- 0dp는 모서리를 사각형으로 만듭니다 --&amp;gt;
        &amp;lt;corners android:radius=&quot;50dp&quot; /&amp;gt;
        &amp;lt;!-- 테두리 굵기와 색상 주기--&amp;gt;
        &amp;lt;stroke android:width=&quot;5dp&quot; android:color=&quot;#FF5722&quot;/&amp;gt;
    &amp;lt;/shape&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;[&amp;nbsp; square_btn3 ]&lt;/p&gt;
&lt;div style=&quot;background-color: #1e1f22; color: #bcbec4;&quot;&gt;
&lt;pre class=&quot;xml&quot;&gt;&lt;code&gt;&amp;lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&amp;gt;
    &amp;lt;shape xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;&amp;gt;
        &amp;lt;!-- solid로 색상 변경 --&amp;gt;
        &amp;lt;solid android:color=&quot;#2196F3&quot; /&amp;gt;
        &amp;lt;!-- 0dp는 모서리를 사각형으로 만듭니다 --&amp;gt;
        &amp;lt;corners android:radius=&quot;25dp&quot; /&amp;gt;
        &amp;lt;!-- 테두리 굵기와 색상 주기--&amp;gt;
        &amp;lt;stroke android:width=&quot;10dp&quot; android:color=&quot;#3F51B5&quot;/&amp;gt;
    &amp;lt;/shape&amp;gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;[ square_btn4 ]&lt;/p&gt;
&lt;div style=&quot;background-color: #1e1f22; color: #bcbec4;&quot;&gt;
&lt;pre class=&quot;xml&quot;&gt;&lt;code&gt;&amp;lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&amp;gt;
&amp;lt;shape xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;&amp;gt;
    &amp;lt;!-- solid로 색상 변경 --&amp;gt;
    &amp;lt;solid android:color=&quot;#aa4444&quot; /&amp;gt;
    &amp;lt;!-- 0dp는 모서리를 사각형으로 만듭니다 --&amp;gt;
    &amp;lt;corners android:radius=&quot;0dp&quot; /&amp;gt;
    &amp;lt;!-- 테두리 굵기와 색상 주기--&amp;gt;
    &amp;lt;stroke android:width=&quot;10dp&quot; android:color=&quot;#ffaa55&quot;/&amp;gt;
&amp;lt;/shape&amp;gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 activity_main.xml 에 아래와 같이 코딩해 주세요.&lt;/p&gt;
&lt;div style=&quot;background-color: #1e1f22; color: #bcbec4;&quot;&gt;
&lt;pre class=&quot;xml&quot;&gt;&lt;code&gt;&amp;lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&amp;gt;
&amp;lt;LinearLayout xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;
    xmlns:app=&quot;http://schemas.android.com/apk/res-auto&quot;
    xmlns:tools=&quot;http://schemas.android.com/tools&quot;
    android:id=&quot;@+id/main&quot;
    android:layout_width=&quot;match_parent&quot;
    android:layout_height=&quot;match_parent&quot;
    android:orientation=&quot;vertical&quot;
    android:weightSum=&quot;5&quot;
    android:layout_margin=&quot;10dp&quot;
    tools:context=&quot;.MainActivity&quot;&amp;gt;
    &amp;lt;Button
        android:id=&quot;@+id/btn1&quot;
        android:layout_width=&quot;match_parent&quot;
        android:layout_height=&quot;wrap_content&quot;
        android:layout_margin=&quot;10dp&quot;
        android:layout_weight=&quot;1&quot;
        android:textStyle=&quot;bold&quot;
        android:textColor=&quot;#FFFFFF&quot;
        android:textSize=&quot;20dp&quot;
        android:text=&quot;버튼 스타일 1&quot; /&amp;gt;
    &amp;lt;androidx.appcompat.widget.AppCompatButton
        android:id=&quot;@+id/btn2&quot;
        android:layout_width=&quot;match_parent&quot;
        android:layout_height=&quot;wrap_content&quot;
        android:layout_margin=&quot;10dp&quot;
        android:layout_weight=&quot;1&quot;
        android:textStyle=&quot;bold&quot;
        android:background=&quot;@drawable/square_btn1&quot;
        android:textColor=&quot;#000000&quot;
        android:textSize=&quot;20dp&quot;
        android:text=&quot;버튼 스타일 2&quot; /&amp;gt;
    &amp;lt;androidx.appcompat.widget.AppCompatButton
        android:id=&quot;@+id/btn3&quot;
        android:layout_width=&quot;match_parent&quot;
        android:layout_height=&quot;wrap_content&quot;
        android:layout_margin=&quot;10dp&quot;
        android:layout_weight=&quot;1&quot;
        android:textStyle=&quot;bold&quot;
        android:background=&quot;@drawable/square_btn2&quot;
        android:textColor=&quot;#FFFFFF&quot;
        android:textSize=&quot;20dp&quot;
        android:text=&quot;버튼 스타일 3&quot; /&amp;gt;
    &amp;lt;androidx.appcompat.widget.AppCompatButton
        android:id=&quot;@+id/btn4&quot;
        android:layout_width=&quot;match_parent&quot;
        android:layout_height=&quot;wrap_content&quot;
        android:layout_margin=&quot;10dp&quot;
        android:layout_weight=&quot;1&quot;
        android:textStyle=&quot;bold&quot;
        android:background=&quot;@drawable/square_btn3&quot;
        android:textColor=&quot;#FFFFFF&quot;
        android:textSize=&quot;20dp&quot;
        android:text=&quot;버튼 스타일 4&quot; /&amp;gt;
    &amp;lt;androidx.appcompat.widget.AppCompatButton
        android:id=&quot;@+id/btn5&quot;
        android:layout_width=&quot;match_parent&quot;
        android:layout_height=&quot;wrap_content&quot;
        android:layout_margin=&quot;10dp&quot;
        android:layout_weight=&quot;1&quot;
        android:textStyle=&quot;bold&quot;
        android:background=&quot;@drawable/square_btn4&quot;
        android:textColor=&quot;#FFFFFF&quot;
        android:textSize=&quot;20dp&quot;
        android:text=&quot;버튼 스타일 5&quot; /&amp;gt;
&amp;lt;/LinearLayout&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위처럼 코딩하면 보이는 미리 보기 모습입니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;439&quot; data-origin-height=&quot;772&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/JDeJZ/btsJvSXJIN4/k0GZrfzGDKitsrLzbeX1s0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/JDeJZ/btsJvSXJIN4/k0GZrfzGDKitsrLzbeX1s0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/JDeJZ/btsJvSXJIN4/k0GZrfzGDKitsrLzbeX1s0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FJDeJZ%2FbtsJvSXJIN4%2Fk0GZrfzGDKitsrLzbeX1s0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;439&quot; height=&quot;772&quot; data-origin-width=&quot;439&quot; data-origin-height=&quot;772&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;버튼의 배경색뿐아니라, 둥근 형태가 기본인 버튼을 조금씩 직사각형태로 radius를 조절해 보았으며, 버튼 테두리의 두께와 색상도 변경해 보았습니다.&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고, MainActivity.kt 파일에는 아래처럼 코딩해 보세요.&amp;nbsp; 각각의 버튼을 클릭할 때, 각 버튼의 정보를 Toast 함수를 이용해 메시지로 표시하도록 하였습니다.&amp;nbsp;&lt;/p&gt;
&lt;div style=&quot;background-color: #1e1f22; color: #bcbec4;&quot;&gt;
&lt;pre class=&quot;reasonml&quot;&gt;&lt;code&gt;package com.example.btnstyle

import android.os.Bundle
import android.widget.Toast
import androidx.activity.enableEdgeToEdge
import androidx.appcompat.app.AppCompatActivity
import androidx.core.view.ViewCompat
import androidx.core.view.WindowInsetsCompat
import com.example.btnstyle.databinding.ActivityMainBinding

class MainActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        val binding = ActivityMainBinding.inflate(layoutInflater)
        setContentView(binding.root)
        binding.btn1.setOnClickListener {
            Toast.makeText(this, &quot;초기 설정된 기본 스타일입니다&quot;, Toast.LENGTH_SHORT).show()
        }
        binding.btn2.setOnClickListener {
            Toast.makeText(this, &quot;-컬러:#FFEB3B \n-테두리(Radius): 80dp -두께: 8dp&quot;, Toast.LENGTH_LONG).show()
        }
        binding.btn3.setOnClickListener {
            Toast.makeText(this, &quot;-컬러:#FF9800 \n-테두리(Radius): 50dp -두께: 5dp&quot;, Toast.LENGTH_LONG).show()
        }
        binding.btn4.setOnClickListener {
            Toast.makeText(this, &quot;-컬러:#2196F3 \n-테두리(Radius): 25dp -두께: 10dp&quot;, Toast.LENGTH_LONG).show()
        }
        binding.btn5.setOnClickListener {
            Toast.makeText(this, &quot;-컬러:#aa4444 \n-테두리(Radius): 0dp -두께: 10dp&quot;, Toast.LENGTH_LONG).show()
        }
    }
}&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그럼, 실행시켜서 각각의 버튼을 클릭해 보면, 아래처럼 실행되는 것을 볼 수 있습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;430&quot; data-origin-height=&quot;936&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bOgB0K/btsJt0QOHmu/ZfNMMzpKKUj5gRsUPGbCkk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bOgB0K/btsJt0QOHmu/ZfNMMzpKKUj5gRsUPGbCkk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bOgB0K/btsJt0QOHmu/ZfNMMzpKKUj5gRsUPGbCkk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbOgB0K%2FbtsJt0QOHmu%2FZfNMMzpKKUj5gRsUPGbCkk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;430&quot; height=&quot;936&quot; data-origin-width=&quot;430&quot; data-origin-height=&quot;936&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그럼, 프로젝트 파일을 Export해서 올려드릴 테니, 에러나시는 분은 다운로드해서 압축을 풀고 Import 해서 확인해 보세요.( File 》 New 》 Import Project )&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;fileblock&quot; data-ke-align=&quot;alignCenter&quot;&gt;&lt;a href=&quot;https://blog.kakaocdn.net/dn/bX91BD/btsJuGYmMdL/S5j93nN9ijks3vs4oENF1K/BtnStyle.zip?attach=1&amp;amp;knm=tfile.zip&quot; class=&quot;&quot;&gt;
    &lt;div class=&quot;image&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;desc&quot;&gt;&lt;div class=&quot;filename&quot;&gt;&lt;span class=&quot;name&quot;&gt;BtnStyle.zip&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;size&quot;&gt;0.11MB&lt;/div&gt;
&lt;/div&gt;
  &lt;/a&gt;&lt;/figure&gt;
&lt;/p&gt;</description>
      <category>App개발/Android_Studio</category>
      <category>kotlin button change</category>
      <category>안드로이드 스튜디오 버튼테두리 변경</category>
      <category>코틀린 버튼 모양 바꾸기 변경</category>
      <category>코틀린 버튼 배경색상 변경</category>
      <author>엑소더스팩토리</author>
      <guid isPermaLink="true">https://rasino.tistory.com/388</guid>
      <comments>https://rasino.tistory.com/388#entry388comment</comments>
      <pubDate>Mon, 9 Sep 2024 08:30:15 +0900</pubDate>
    </item>
    <item>
      <title>【Android Studio】 Intro 인트로 화면 만들기 (코틀린)</title>
      <link>https://rasino.tistory.com/387</link>
      <description>&lt;p data-ke-size=&quot;size18&quot;&gt;이번 시간에는 안드로이드 스튜디오에서 인트로 화면을 만들어 볼 텐데요,&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;앱을 시작할 때 몇 초간 인트로 화면이 나오고 이후 메인화면으로 넘어가는 것을 실습해 보겠습니다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;그럼, 안드로이드 스튜디오에서 New Project 》 &lt;b&gt;Empty Views Activity를&lt;/b&gt; 선택해 주세요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;912&quot; data-origin-height=&quot;658&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ucJU4/btsJugrUz1r/Sjy6g7nh4D7PJS5xVrG6Nk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ucJU4/btsJugrUz1r/Sjy6g7nh4D7PJS5xVrG6Nk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ucJU4/btsJugrUz1r/Sjy6g7nh4D7PJS5xVrG6Nk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FucJU4%2FbtsJugrUz1r%2FSjy6g7nh4D7PJS5xVrG6Nk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;912&quot; height=&quot;658&quot; data-origin-width=&quot;912&quot; data-origin-height=&quot;658&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;프로젝트가 생성되었으면,&amp;nbsp;&lt;br /&gt;프로젝트 탐색창의 res 》 layout&amp;nbsp; 폴더를&amp;nbsp; RMB(마우스 우 클릭)하여 New 》 Activity 》 &lt;b&gt;Empty Views Activity를&lt;/b&gt; 추가해 주세요. (아래 참고)&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1233&quot; data-origin-height=&quot;945&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/Vw9dV/btsJvmdjf3h/yLBuojqPjsJYymsn5hrLik/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Vw9dV/btsJvmdjf3h/yLBuojqPjsJYymsn5hrLik/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Vw9dV/btsJvmdjf3h/yLBuojqPjsJYymsn5hrLik/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FVw9dV%2FbtsJvmdjf3h%2FyLBuojqPjsJYymsn5hrLik%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1233&quot; height=&quot;945&quot; data-origin-width=&quot;1233&quot; data-origin-height=&quot;945&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;타이틀 제목은 intro로 할게요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;905&quot; data-origin-height=&quot;656&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/YCBCV/btsJtJ9aXn8/YikPLq4RavOH49nrXgg1pK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/YCBCV/btsJtJ9aXn8/YikPLq4RavOH49nrXgg1pK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/YCBCV/btsJtJ9aXn8/YikPLq4RavOH49nrXgg1pK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FYCBCV%2FbtsJtJ9aXn8%2FYikPLq4RavOH49nrXgg1pK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;905&quot; height=&quot;656&quot; data-origin-width=&quot;905&quot; data-origin-height=&quot;656&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;그럼, 아래처럼 인트로 xml 파일과 코틀린 kt (자바는 js) 파일이 함께 만들어진 것을 볼 수 있습니다. (activity_intro.xml&amp;nbsp; &amp;amp; intro.kt )&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;423&quot; data-origin-height=&quot;528&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bKTWfm/btsJvSJOSCk/KNWKfmJ0szyllVMEQgI0n1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bKTWfm/btsJvSJOSCk/KNWKfmJ0szyllVMEQgI0n1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bKTWfm/btsJvSJOSCk/KNWKfmJ0szyllVMEQgI0n1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbKTWfm%2FbtsJvSJOSCk%2FKNWKfmJ0szyllVMEQgI0n1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;423&quot; height=&quot;528&quot; data-origin-width=&quot;423&quot; data-origin-height=&quot;528&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그럼, 인트로 화면과 메인 화면을 구분하기 위해, 인트로 화면의 배경색을 기본 흰색에서 적당한 색으로 바꾸고,&amp;nbsp; intro 표시도 해볼게요.&lt;br /&gt;activity_intro.xml의 코드내용을 아래와 같이 작성해 보세요.&lt;/p&gt;
&lt;div style=&quot;background-color: #1e1f22; color: #bcbec4;&quot;&gt;
&lt;pre class=&quot;xml&quot;&gt;&lt;code&gt;&amp;lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&amp;gt;
&amp;lt;androidx.constraintlayout.widget.ConstraintLayout xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;
    xmlns:app=&quot;http://schemas.android.com/apk/res-auto&quot;
    xmlns:tools=&quot;http://schemas.android.com/tools&quot;
    android:id=&quot;@+id/main&quot;
    android:layout_width=&quot;match_parent&quot;
    android:layout_height=&quot;match_parent&quot;
    android:background=&quot;#D1DB6E&quot;
    tools:context=&quot;.intro&quot;&amp;gt;

    &amp;lt;TextView
        android:id=&quot;@+id/textView&quot;
        android:layout_width=&quot;189dp&quot;
        android:layout_height=&quot;107dp&quot;
        android:gravity=&quot;center&quot;
        android:singleLine=&quot;false&quot;
        android:text=&quot;안녕하세요~!\n인트로 화면입니다.\n 5초 뒤에 사라집니다&quot;
        android:textColor=&quot;#F44336&quot;
        android:textSize=&quot;20dp&quot;
        android:textStyle=&quot;bold&quot;
        app:layout_constraintBottom_toBottomOf=&quot;parent&quot;
        app:layout_constraintEnd_toEndOf=&quot;parent&quot;
        app:layout_constraintStart_toStartOf=&quot;parent&quot;
        app:layout_constraintTop_toTopOf=&quot;parent&quot; /&amp;gt;

&amp;lt;/androidx.constraintlayout.widget.ConstraintLayout&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그러면, 아래와 같이 보일 거예요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;432&quot; data-origin-height=&quot;763&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cTnZ3o/btsJuvh2tB0/De7HyqcgOHI1dr7Kk0tWo0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cTnZ3o/btsJuvh2tB0/De7HyqcgOHI1dr7Kk0tWo0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cTnZ3o/btsJuvh2tB0/De7HyqcgOHI1dr7Kk0tWo0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcTnZ3o%2FbtsJuvh2tB0%2FDe7HyqcgOHI1dr7Kk0tWo0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;432&quot; height=&quot;763&quot; data-origin-width=&quot;432&quot; data-origin-height=&quot;763&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고, 앱을 실행하면 제일 처음 뜨는 화면이 있는데, 기본적으로는 MainActivity로 지정되어 있어서, activity_main.xml 파일이 로드되어 화면에 보이게 되는데요,&amp;nbsp; 우리는 지금 activity_intro.xml 파일을 먼저 띄워 주는 것으로 바꾸어야 하기 때문에, 아래 이미지를 참고해서 변경해 보세요.&amp;nbsp; app 》 manifests 》 &lt;b&gt;AndroidMainfest.xml&lt;/b&gt;&amp;nbsp; 파일을 열어서&amp;nbsp;&lt;br /&gt;&amp;rarr; activity name이 .intro로 되어 있는 부분의&amp;nbsp; android:exported=&quot;false&quot; 부분을 &lt;span style=&quot;color: #ee2323;&quot;&gt;&lt;b&gt;true&lt;/b&gt;&lt;/span&gt;로 변경하고 ,&amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;rarr; activity name이 .MainActivity로 되어 있는 부분의&amp;nbsp; android:exported=&quot;true&quot; 부분을 &lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt;false&lt;/b&gt;&lt;/span&gt;로 변경하면 됩니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1071&quot; data-origin-height=&quot;795&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/92EWd/btsJvUHE1ip/f6y6yohxep2aszUPA0d0aK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/92EWd/btsJvUHE1ip/f6y6yohxep2aszUPA0d0aK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/92EWd/btsJvUHE1ip/f6y6yohxep2aszUPA0d0aK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F92EWd%2FbtsJvUHE1ip%2Ff6y6yohxep2aszUPA0d0aK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1071&quot; height=&quot;795&quot; data-origin-width=&quot;1071&quot; data-origin-height=&quot;795&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고&amp;nbsp; .intro 부분과 .MainActivity 부분의 위치를 바꾸어 주세요.&amp;nbsp; &amp;nbsp;(단, 복붙해서 바꿀 때,&amp;nbsp; /&amp;gt;&amp;nbsp; 와&amp;nbsp; &amp;gt; 표시가 잘못되지 않도록 주의하세요)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래는 변경한 모습입니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;753&quot; data-origin-height=&quot;733&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/AlLzX/btsJuTpas8l/9ra6ZROsZU8vwx3l5d3mZ0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/AlLzX/btsJuTpas8l/9ra6ZROsZU8vwx3l5d3mZ0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/AlLzX/btsJuTpas8l/9ra6ZROsZU8vwx3l5d3mZ0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FAlLzX%2FbtsJuTpas8l%2F9ra6ZROsZU8vwx3l5d3mZ0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;753&quot; height=&quot;733&quot; data-origin-width=&quot;753&quot; data-origin-height=&quot;733&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;여기까지 해놓고 실행시켜 보면 인트로 화면이 먼저 뜨는 것을 볼 수 있습니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;427&quot; data-origin-height=&quot;934&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/8WuBx/btsJurmskrt/rj0iFz3xX45ChFZKuS7GS1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/8WuBx/btsJurmskrt/rj0iFz3xX45ChFZKuS7GS1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/8WuBx/btsJurmskrt/rj0iFz3xX45ChFZKuS7GS1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F8WuBx%2FbtsJurmskrt%2Frj0iFz3xX45ChFZKuS7GS1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;300&quot; height=&quot;656&quot; data-origin-width=&quot;427&quot; data-origin-height=&quot;934&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이제, 인트로 화면이 5초 뒤에 사라지도록 해볼 텐데요,&amp;nbsp; 아래처럼 intro.kt에 코드를 작성해 주세요.&lt;/p&gt;
&lt;div style=&quot;background-color: #1e1f22; color: #bcbec4;&quot;&gt;
&lt;pre class=&quot;kotlin&quot;&gt;&lt;code&gt;class intro : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_intro)

        Handler(Looper.getMainLooper()).postDelayed({
            val intent = Intent(this@intro, MainActivity::class.java)
            startActivity(intent)
            finish()
        }, 5000)
    }
}&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위 코드에서 마지막에 보이는 5000 수치를 변경하면 시간을 조절할 수 있습니다. (1000 &amp;rarr; 1초)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Handler 클래스의 postDelayed 메서드를 이용해서 MainActivity로 이동하도록 하였는데요,&amp;nbsp; 만약, Handler 글자가 빨간색으로 되어 에러 표시가 난다면,&amp;nbsp; 마우스를 Handler 글자 위에 올려놓은 상태에서 Alt+Enter를 눌러 해당 클래스를 import 하여 추가해 주면 됩니다.&amp;nbsp;&lt;/p&gt;
&lt;div style=&quot;background-color: #1e1f22; color: #bcbec4;&quot;&gt;
&lt;pre class=&quot;css&quot;&gt;&lt;code&gt;import android.os.Handler&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 실행시켜 보면 아래와 같이 화면 전환 되는 것을 볼 수 있습니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;실행-결과.png&quot; data-origin-width=&quot;984&quot; data-origin-height=&quot;936&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bOWed0/btsJuAQXwQy/PyAu1ju41JDGMxnkjk5d4K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bOWed0/btsJuAQXwQy/PyAu1ju41JDGMxnkjk5d4K/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bOWed0/btsJuAQXwQy/PyAu1ju41JDGMxnkjk5d4K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbOWed0%2FbtsJuAQXwQy%2FPyAu1ju41JDGMxnkjk5d4K%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;984&quot; height=&quot;936&quot; data-filename=&quot;실행-결과.png&quot; data-origin-width=&quot;984&quot; data-origin-height=&quot;936&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래에 전체 코드를 다시 한번 올려놓을 게요.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;[ intro.kt ]&lt;/p&gt;
&lt;div style=&quot;background-color: #1e1f22; color: #bcbec4;&quot;&gt;
&lt;pre class=&quot;haskell&quot;&gt;&lt;code&gt;package com.example.intropage

import android.content.Intent
import android.os.Bundle
import android.os.Handler
import android.os.Looper
import androidx.activity.enableEdgeToEdge
import androidx.appcompat.app.AppCompatActivity
import androidx.core.view.ViewCompat
import androidx.core.view.WindowInsetsCompat

class intro : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_intro)

        Handler(Looper.getMainLooper()).postDelayed({
            val intent = Intent(this@intro, MainActivity::class.java)
            startActivity(intent)
            finish()
        }, 5000)
    }
}&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;[ AndroidManifest.xml ]&lt;/p&gt;
&lt;div style=&quot;background-color: #1e1f22; color: #bcbec4;&quot;&gt;
&lt;pre class=&quot;xml&quot;&gt;&lt;code&gt;&amp;lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&amp;gt;
&amp;lt;manifest xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;
    xmlns:tools=&quot;http://schemas.android.com/tools&quot;&amp;gt;

    &amp;lt;application
        android:allowBackup=&quot;true&quot;
        android:dataExtractionRules=&quot;@xml/data_extraction_rules&quot;
        android:fullBackupContent=&quot;@xml/backup_rules&quot;
        android:icon=&quot;@mipmap/ic_launcher&quot;
        android:label=&quot;@string/app_name&quot;
        android:roundIcon=&quot;@mipmap/ic_launcher_round&quot;
        android:supportsRtl=&quot;true&quot;
        android:theme=&quot;@style/Theme.IntroPage&quot;
        tools:targetApi=&quot;31&quot;&amp;gt;
        &amp;lt;activity
            android:name=&quot;.MainActivity&quot;
            android:exported=&quot;false&quot; /&amp;gt;
        &amp;lt;activity
            android:name=&quot;.intro&quot;
            android:exported=&quot;true&quot; &amp;gt;
            &amp;lt;intent-filter&amp;gt;
                &amp;lt;action android:name=&quot;android.intent.action.MAIN&quot; /&amp;gt;
                &amp;lt;category android:name=&quot;android.intent.category.LAUNCHER&quot; /&amp;gt;
            &amp;lt;/intent-filter&amp;gt;
        &amp;lt;/activity&amp;gt;
    &amp;lt;/application&amp;gt;

&amp;lt;/manifest&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;[ activity_intro.xml ]&lt;/p&gt;
&lt;div style=&quot;background-color: #1e1f22; color: #bcbec4;&quot;&gt;
&lt;pre class=&quot;xml&quot;&gt;&lt;code&gt;&amp;lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&amp;gt;
&amp;lt;androidx.constraintlayout.widget.ConstraintLayout xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;
    xmlns:app=&quot;http://schemas.android.com/apk/res-auto&quot;
    xmlns:tools=&quot;http://schemas.android.com/tools&quot;
    android:id=&quot;@+id/main&quot;
    android:layout_width=&quot;match_parent&quot;
    android:layout_height=&quot;match_parent&quot;
    android:background=&quot;#D1DB6E&quot;
    tools:context=&quot;.intro&quot;&amp;gt;

    &amp;lt;TextView
        android:id=&quot;@+id/textView&quot;
        android:layout_width=&quot;189dp&quot;
        android:layout_height=&quot;107dp&quot;
        android:gravity=&quot;center&quot;
        android:singleLine=&quot;false&quot;
        android:text=&quot;안녕하세요~!\n인트로 화면입니다.\n 5초 뒤에 사라집니다&quot;
        android:textColor=&quot;#F44336&quot;
        android:textSize=&quot;20dp&quot;
        android:textStyle=&quot;bold&quot;
        app:layout_constraintBottom_toBottomOf=&quot;parent&quot;
        app:layout_constraintEnd_toEndOf=&quot;parent&quot;
        app:layout_constraintStart_toStartOf=&quot;parent&quot;
        app:layout_constraintTop_toTopOf=&quot;parent&quot; /&amp;gt;

&amp;lt;/androidx.constraintlayout.widget.ConstraintLayout&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;감사합니다.&amp;nbsp; 좋은 하루 보내세요~&amp;nbsp;&lt;/p&gt;</description>
      <category>App개발/Android_Studio</category>
      <author>엑소더스팩토리</author>
      <guid isPermaLink="true">https://rasino.tistory.com/387</guid>
      <comments>https://rasino.tistory.com/387#entry387comment</comments>
      <pubDate>Sat, 7 Sep 2024 11:19:24 +0900</pubDate>
    </item>
    <item>
      <title>[Android Studio] Fragment - 프래그먼트 사용법 (코틀린-kotlin)</title>
      <link>https://rasino.tistory.com/386</link>
      <description>&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;▶ Fragment(프래그먼트) 정의&lt;/b&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;프래그먼트는 태블릿과 같은 대화면에서 효율적으로 화면을 구성하기 위해 생긴 구성요소입니다. 하지만 스마트폰과 같은 작은 화면에서도 효율적인 자원 활용과 메뉴 구성을 위해 종종 사용됩니다.&lt;br /&gt;&lt;br /&gt;액티비티를 분할하여 화면의 한 부분을 정의하며 액티비티와 같이 레이아웃, 동작 처리, 생명주기를 가지는 독립적인 모듈인데요, 다른 액티비티에서도 사용할 수 있어 재사용성이 뛰어나며 액티비티 실행 중에 추가, 제거가 가능합니다.&lt;br /&gt;&lt;br /&gt;프레그먼트는 액티비티의 일부분에만 배치되는 화면 및 동작을 조작하기 위한 객체입니다.&amp;nbsp; 프레그먼트 매니저를 통해서 여러개의 프레그먼트를 조작할 수 있습니다. 레이아웃 xml 파일에서 다른 뷰들과 함께 배치될 수 있습니다.&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;▶ 프래그먼트 실습 :&amp;nbsp; 버튼을 클릭하면 해당 프래그먼트 화면을 보여주기!&lt;/b&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;rarr;&amp;nbsp; 3개의 버튼과 3개의 프래그먼트 화면을 각각 만들고 각 버튼들을 클릭하면 각각의 프래그먼트 화면이 로딩 되도록 합니다. 이때 메인 레이아웃(activity_main.xml) 화면에는 FrameLayout을 이용하여 화면을 fragment를 로딩할 View 영역과 버튼을 클릭할 영역으로 구분해서 만들어 봅니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;443&quot; data-origin-height=&quot;760&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dTNuQC/btsJt626bgi/Z7iKInQECEKkNFB1bskUO0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dTNuQC/btsJt626bgi/Z7iKInQECEKkNFB1bskUO0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dTNuQC/btsJt626bgi/Z7iKInQECEKkNFB1bskUO0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdTNuQC%2FbtsJt626bgi%2FZ7iKInQECEKkNFB1bskUO0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;443&quot; height=&quot;760&quot; data-origin-width=&quot;443&quot; data-origin-height=&quot;760&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;rarr; 각각의 프래그먼트 화면을 아래처럼 단순하게 배경색을 변경하여 구성하고, 추후에 이미지를 넣거나 다양하게 응용하면 됩니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;프래그먼트-화면구성.png&quot; data-origin-width=&quot;1400&quot; data-origin-height=&quot;760&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/5eXeV/btsJufyL9J9/2aSMUK6qIDKsQnZj4N6P5k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/5eXeV/btsJufyL9J9/2aSMUK6qIDKsQnZj4N6P5k/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/5eXeV/btsJufyL9J9/2aSMUK6qIDKsQnZj4N6P5k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F5eXeV%2FbtsJufyL9J9%2F2aSMUK6qIDKsQnZj4N6P5k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1400&quot; height=&quot;760&quot; data-filename=&quot;프래그먼트-화면구성.png&quot; data-origin-width=&quot;1400&quot; data-origin-height=&quot;760&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;▶&amp;nbsp; 실행 결과&amp;nbsp;&lt;/b&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;rarr; 1번, 2번, 3번 버튼을 클릭하면 아래와 같이 main_activity.xml 레이아웃 화면에 각각의 프래그먼트 화면이 로딩되도록 합니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;프래그먼트-결과-화면.png&quot; data-origin-width=&quot;1421&quot; data-origin-height=&quot;1000&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/v6eKU/btsJt2GvE4W/GQmBqkMRpxncZz7mrawDLk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/v6eKU/btsJt2GvE4W/GQmBqkMRpxncZz7mrawDLk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/v6eKU/btsJt2GvE4W/GQmBqkMRpxncZz7mrawDLk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fv6eKU%2FbtsJt2GvE4W%2FGQmBqkMRpxncZz7mrawDLk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1421&quot; height=&quot;1000&quot; data-filename=&quot;프래그먼트-결과-화면.png&quot; data-origin-width=&quot;1421&quot; data-origin-height=&quot;1000&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;▶ 코드 구성&lt;/b&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;① 먼저 gradle에 있는 build.gradle.kts(Module :app) 파일에 아래처럼 뷰바인딩 사용 선언을 해주세요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1053&quot; data-origin-height=&quot;409&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/doUj4g/btsJtvCuXky/c2U2XBuB7532oqUQdQvlc1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/doUj4g/btsJtvCuXky/c2U2XBuB7532oqUQdQvlc1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/doUj4g/btsJtvCuXky/c2U2XBuB7532oqUQdQvlc1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdoUj4g%2FbtsJtvCuXky%2Fc2U2XBuB7532oqUQdQvlc1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1053&quot; height=&quot;409&quot; data-origin-width=&quot;1053&quot; data-origin-height=&quot;409&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;br /&gt;② 아래 이미지를 참고하여 res 》 layout 》 New 》 Fragment 》 Fragment(Blank) 를 클릭하고 타이틀은 frag1으로 입력하여 만들면 fragment_frag1.xml 파일과 함께 frg1.kt 파일이 세트로 만들어집니다. (layout에서 마우스 우클릭하면 New 메뉴가 나타납니다)&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1029&quot; data-origin-height=&quot;967&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/IEbiF/btsJs7aWKEB/g9778UBiFldmNBKSNI9221/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/IEbiF/btsJs7aWKEB/g9778UBiFldmNBKSNI9221/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/IEbiF/btsJs7aWKEB/g9778UBiFldmNBKSNI9221/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FIEbiF%2FbtsJs7aWKEB%2Fg9778UBiFldmNBKSNI9221%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1029&quot; height=&quot;967&quot; data-origin-width=&quot;1029&quot; data-origin-height=&quot;967&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;같은 방법으로 아래 이미지처럼&amp;nbsp; &lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;fragment_frag2.xml , fragment_frag3.xml ( frg2.kt&lt;span&gt; , frag3.kt)을 만들어 주세요.&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;311&quot; data-origin-height=&quot;474&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bCqnms/btsJsXTMtjj/xxqm3MRDJcwfwwyMeSDiU1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bCqnms/btsJsXTMtjj/xxqm3MRDJcwfwwyMeSDiU1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bCqnms/btsJsXTMtjj/xxqm3MRDJcwfwwyMeSDiU1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbCqnms%2FbtsJsXTMtjj%2Fxxqm3MRDJcwfwwyMeSDiU1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;311&quot; height=&quot;474&quot; data-origin-width=&quot;311&quot; data-origin-height=&quot;474&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;rarr; frag 1의 xml 코드는 아래와 같습니다. (단순하게 배경색 지정하고 TextView를 하나 넣었습니다)&lt;/p&gt;
&lt;div style=&quot;background-color: #1e1f22; color: #bcbec4;&quot;&gt;
&lt;pre class=&quot;bash&quot; data-ke-language=&quot;bash&quot;&gt;&lt;code&gt;&amp;lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&amp;gt;
&amp;lt;FrameLayout xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;
    xmlns:tools=&quot;http://schemas.android.com/tools&quot;
    android:layout_width=&quot;match_parent&quot;
    android:layout_height=&quot;match_parent&quot;
    android:background=&quot;#2233aa&quot;
    tools:context=&quot;.frag1&quot;&amp;gt;

    &amp;lt;TextView
        android:id=&quot;@+id/txtview_frag1&quot;
        android:layout_width=&quot;wrap_content&quot;
        android:layout_height=&quot;wrap_content&quot;
        android:layout_gravity=&quot;center&quot;
        android:text= &quot;Frag 1 page&quot;
        android:textSize=&quot;20dp&quot;
        android:textStyle=&quot;bold&quot;
        android:textColor=&quot;@color/white&quot;/&amp;gt;

&amp;lt;/FrameLayout&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;434&quot; data-origin-height=&quot;757&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cKQLjH/btsJuCG7cFz/10LMKz1yp2aeohPgjAbhl1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cKQLjH/btsJuCG7cFz/10LMKz1yp2aeohPgjAbhl1/img.png&quot; data-alt=&quot;frag1.xml의 뷰화면&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cKQLjH/btsJuCG7cFz/10LMKz1yp2aeohPgjAbhl1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcKQLjH%2FbtsJuCG7cFz%2F10LMKz1yp2aeohPgjAbhl1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;200&quot; height=&quot;349&quot; data-origin-width=&quot;434&quot; data-origin-height=&quot;757&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;frag1.xml의 뷰화면&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&amp;rarr; frag2의 xml&lt;span&gt; 코드 또한 동일하며 배경색과 id 그리고 text 내용만 각각 바꾸어 주세요.&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;div style=&quot;background-color: #1e1f22; color: #bcbec4;&quot;&gt;
&lt;pre class=&quot;bash&quot; data-ke-language=&quot;bash&quot;&gt;&lt;code&gt;&amp;lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&amp;gt;
&amp;lt;FrameLayout xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;
    xmlns:tools=&quot;http://schemas.android.com/tools&quot;
    android:layout_width=&quot;match_parent&quot;
    android:layout_height=&quot;match_parent&quot;
    android:background=&quot;#A51EB4&quot;
    tools:context=&quot;.frag2&quot;&amp;gt;

    &amp;lt;TextView
        android:layout_width=&quot;wrap_content&quot;
        android:layout_height=&quot;wrap_content&quot;
        android:layout_gravity=&quot;center&quot;
        android:text= &quot;Frag 2 page&quot;
        android:textSize=&quot;20dp&quot;
        android:textStyle=&quot;bold&quot;
        android:textColor=&quot;@color/white&quot;/&amp;gt;

&amp;lt;/FrameLayout&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;428&quot; data-origin-height=&quot;754&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cJ0gQc/btsJsLlKiUk/znWKFZdBddKdotVIYNjAfk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cJ0gQc/btsJsLlKiUk/znWKFZdBddKdotVIYNjAfk/img.png&quot; data-alt=&quot;frag2.xml의 뷰화면&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cJ0gQc/btsJsLlKiUk/znWKFZdBddKdotVIYNjAfk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcJ0gQc%2FbtsJsLlKiUk%2FznWKFZdBddKdotVIYNjAfk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;200&quot; height=&quot;352&quot; data-origin-width=&quot;428&quot; data-origin-height=&quot;754&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;frag2.xml의 뷰화면&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;rarr;&amp;nbsp; &lt;/span&gt;frag3의 xml&lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;코드 또한 동일하며 배경색과 id 그리고 text 내용만 각각 바꾸어 주세요.&lt;/span&gt;&lt;/p&gt;
&lt;div style=&quot;background-color: #1e1f22; color: #bcbec4;&quot;&gt;
&lt;pre class=&quot;bash&quot; data-ke-language=&quot;bash&quot;&gt;&lt;code&gt;&amp;lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&amp;gt;
&amp;lt;FrameLayout xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;
    xmlns:tools=&quot;http://schemas.android.com/tools&quot;
    android:layout_width=&quot;match_parent&quot;
    android:layout_height=&quot;match_parent&quot;
    android:background=&quot;#FF9800&quot;
    tools:context=&quot;.frag3&quot;&amp;gt;

    &amp;lt;TextView
        android:layout_width=&quot;wrap_content&quot;
        android:layout_height=&quot;wrap_content&quot;
        android:layout_gravity=&quot;center&quot;
        android:text= &quot;Frag 3 page&quot;
        android:textSize=&quot;20dp&quot;
        android:textStyle=&quot;bold&quot;
        android:textColor=&quot;@color/white&quot;/&amp;gt;

&amp;lt;/FrameLayout&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;428&quot; data-origin-height=&quot;760&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bQVJQo/btsJs03Z7ol/3dzu07IKLgGIrBdIlSSgf1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bQVJQo/btsJs03Z7ol/3dzu07IKLgGIrBdIlSSgf1/img.png&quot; data-alt=&quot;frag3.xml의 뷰화면&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bQVJQo/btsJs03Z7ol/3dzu07IKLgGIrBdIlSSgf1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbQVJQo%2FbtsJs03Z7ol%2F3dzu07IKLgGIrBdIlSSgf1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;200&quot; height=&quot;355&quot; data-origin-width=&quot;428&quot; data-origin-height=&quot;760&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;frag3.xml의 뷰화면&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;④ 자동으로 생성된 frag1.kt 프래그먼트의 클래스 함수 코드는 아래와 같습니다.&lt;/b&gt;&lt;/h4&gt;
&lt;div style=&quot;background-color: #1e1f22; color: #bcbec4;&quot;&gt;
&lt;pre class=&quot;kotlin&quot; data-ke-language=&quot;kotlin&quot;&gt;&lt;code&gt;package com.example.fragment

import android.os.Bundle
import androidx.fragment.app.Fragment
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup

// TODO: Rename parameter arguments, choose names that match
// the fragment initialization parameters, e.g. ARG_ITEM_NUMBER
private const val ARG_PARAM1 = &quot;param1&quot;
private const val ARG_PARAM2 = &quot;param2&quot;

/**
 * A simple [Fragment] subclass.
 * Use the [frag1.newInstance] factory method to
 * create an instance of this fragment.
 */
class frag1 : Fragment() {
    // TODO: Rename and change types of parameters
    private var param1: String? = null
    private var param2: String? = null

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        arguments?.let {
            param1 = it.getString(ARG_PARAM1)
            param2 = it.getString(ARG_PARAM2)
        }
    }

    override fun onCreateView(
        inflater: LayoutInflater, container: ViewGroup?,
        savedInstanceState: Bundle?
    ): View? {
        // Inflate the layout for this fragment
        return inflater.inflate(R.layout.fragment_frag1, container, false)
    }

    companion object {
        /**
         * Use this factory method to create a new instance of
         * this fragment using the provided parameters.
         *
         * @param param1 Parameter 1.
         * @param param2 Parameter 2.
         * @return A new instance of fragment frag1.
         */
        // TODO: Rename and change types and number of parameters
        @JvmStatic
        fun newInstance(param1: String, param2: String) =
            frag1().apply {
                arguments = Bundle().apply {
                    putString(ARG_PARAM1, param1)
                    putString(ARG_PARAM2, param2)
                }
            }
    }
}&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;위 코드처럼 기본 생성된 코드 그대로 사용해도 실행에 문제는 없는데요,&amp;nbsp; 필요 없는 내용 다 지우고 아래만 남겨 놓으면&amp;nbsp; 됩니다.&lt;/p&gt;
&lt;div style=&quot;background-color: #1e1f22; color: #bcbec4;&quot;&gt;
&lt;pre class=&quot;kotlin&quot;&gt;&lt;code&gt;package com.example.fragment

import android.os.Bundle
import androidx.fragment.app.Fragment
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup

class frag1 : Fragment() {

    override fun onCreateView(
        inflater: LayoutInflater, container: ViewGroup?,
        savedInstanceState: Bundle?
    ): View? {
        return inflater.inflate(R.layout.fragment_frag1, container, false)
    }
}&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;frag2.kt&amp;nbsp; 와 frag3.kt 코드도 마찬가지로 정리해 보세요.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;⑤ activity_main.xml&amp;nbsp; 코드는 아래처럼 작성해 주세요.&lt;/b&gt;&lt;/h4&gt;
&lt;div style=&quot;background-color: #1e1f22; color: #bcbec4;&quot;&gt;
&lt;pre class=&quot;bash&quot; data-ke-language=&quot;bash&quot;&gt;&lt;code&gt;&amp;lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&amp;gt;
&amp;lt;androidx.constraintlayout.widget.ConstraintLayout xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;
    xmlns:app=&quot;http://schemas.android.com/apk/res-auto&quot;
    xmlns:tools=&quot;http://schemas.android.com/tools&quot;
    android:id=&quot;@+id/main&quot;
    android:layout_width=&quot;match_parent&quot;
    android:layout_height=&quot;match_parent&quot;
    tools:context=&quot;.MainActivity&quot;&amp;gt;

    &amp;lt;FrameLayout
        android:id=&quot;@+id/main_view&quot;
        android:layout_width=&quot;match_parent&quot;
        android:layout_height=&quot;0dp&quot;
        app:layout_constraintBottom_toTopOf=&quot;@+id/linearLayout&quot;
        app:layout_constraintEnd_toEndOf=&quot;parent&quot;
        app:layout_constraintStart_toStartOf=&quot;parent&quot;
        app:layout_constraintTop_toTopOf=&quot;parent&quot;&amp;gt;&amp;lt;/FrameLayout&amp;gt;

    &amp;lt;LinearLayout
        android:id=&quot;@+id/btn_layout&quot;
        android:layout_width=&quot;match_parent&quot;
        android:layout_height=&quot;wrap_content&quot;
        android:weightSum=&quot;3&quot;
        app:layout_constraintBottom_toBottomOf=&quot;parent&quot;
        app:layout_constraintEnd_toEndOf=&quot;parent&quot;
        app:layout_constraintStart_toStartOf=&quot;parent&quot;
        app:layout_constraintTop_toBottomOf=&quot;@+id/main_view&quot;&amp;gt;

        &amp;lt;Button
            android:id=&quot;@+id/btn1&quot;
            android:layout_width=&quot;wrap_content&quot;
            android:layout_height=&quot;wrap_content&quot;
            android:layout_margin=&quot;5dp&quot;
            android:layout_weight=&quot;1&quot;
            android:text=&quot;1번&quot;
            android:textSize=&quot;20dp&quot;
            android:textStyle=&quot;bold&quot; /&amp;gt;

        &amp;lt;Button
            android:id=&quot;@+id/btn2&quot;
            android:layout_width=&quot;wrap_content&quot;
            android:layout_height=&quot;wrap_content&quot;
            android:layout_margin=&quot;5dp&quot;
            android:layout_weight=&quot;1&quot;
            android:text=&quot;2번&quot;
            android:textSize=&quot;20dp&quot;
            android:textStyle=&quot;bold&quot; /&amp;gt;

        &amp;lt;Button
            android:id=&quot;@+id/btn3&quot;
            android:layout_width=&quot;wrap_content&quot;
            android:layout_height=&quot;wrap_content&quot;
            android:layout_margin=&quot;5dp&quot;
            android:layout_weight=&quot;1&quot;
            android:text=&quot;3번&quot;
            android:textSize=&quot;20dp&quot;
            android:textStyle=&quot;bold&quot; /&amp;gt;
    &amp;lt;/LinearLayout&amp;gt;

&amp;lt;/androidx.constraintlayout.widget.ConstraintLayout&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&amp;nbsp;&lt;/h4&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;⑥&amp;nbsp; 뷰 바인딩을 적용한&amp;nbsp; MainActivity.kt의 코드는 아래처럼 해주세요.&amp;nbsp;&lt;/b&gt;&lt;/h4&gt;
&lt;div style=&quot;background-color: #1e1f22; color: #bcbec4;&quot;&gt;
&lt;pre class=&quot;kotlin&quot; data-ke-language=&quot;kotlin&quot;&gt;&lt;code&gt;package com.example.fragment

import android.os.Bundle
import androidx.activity.enableEdgeToEdge
import androidx.appcompat.app.AppCompatActivity
import androidx.core.view.ViewCompat
import androidx.core.view.WindowInsetsCompat
import com.example.fragment.databinding.ActivityMainBinding
import com.example.fragment.databinding.FragmentFrag1Binding

class MainActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        val binding = ActivityMainBinding.inflate(layoutInflater)        
        setContentView(binding.root)
        binding.btn1.setOnClickListener {
            supportFragmentManager.beginTransaction().replace(R.id.main_view, frag1()).commit()
        }
        binding.btn2.setOnClickListener {
            supportFragmentManager.beginTransaction().replace(R.id.main_view, frag2()).commit()
        }
        binding.btn3.setOnClickListener {
            supportFragmentManager.beginTransaction().replace(R.id.main_view, frag3()).commit()
        }
    }
}&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위 코드에서 supportFragmentManager 코드에도 바인딩 기능을 적용하면 아래와 같이 하면 됩니다.&amp;nbsp;&lt;br /&gt;그리고, 각 버튼을 클릭할 때 마다 LinearLayout의 배경색도 따라 바뀌도록 아래처럼 코드를 추가해 줄 수 있어요.&lt;br /&gt;&quot;binding.linearBtnbox.setBackgroundColor(Color.parseColor(&quot;#2233aa&quot;))&quot;&lt;/p&gt;
&lt;pre id=&quot;code_1730628215828&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;package com.example.fragment

import android.os.Bundle
import androidx.activity.enableEdgeToEdge
import androidx.appcompat.app.AppCompatActivity
import androidx.core.view.ViewCompat
import androidx.core.view.WindowInsetsCompat
import com.example.fragment.databinding.ActivityMainBinding
import com.example.fragment.databinding.FragmentFrag1Binding

class MainActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        val binding = ActivityMainBinding.inflate(layoutInflater)        
        setContentView(binding.root)
        binding.btn1.setOnClickListener {
            binding.linearBtnbox.setBackgroundColor(Color.parseColor(&quot;#2233aa&quot;))
            supportFragmentManager.beginTransaction().replace(binding.frameLayout.id, frag1()).commit()
        }
        binding.btn2.setOnClickListener {
            binding.linearBtnbox.setBackgroundColor(Color.parseColor(&quot;#A51EB4&quot;))
            supportFragmentManager.beginTransaction().replace(binding.frameLayout.id, frag2()).commit()
        }
        binding.btn3.setOnClickListener {
            binding.linearBtnbox.setBackgroundColor(Color.parseColor(&quot;#FF9800&quot;))
            supportFragmentManager.beginTransaction().replace(binding.frameLayout.id, frag3()).commit()
        }
    }
}&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;이렇게 까지만 하면 작성이 완료되고 실행해 보면 아래와 같이 실행이 되는 것을 볼 수 있습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;프래그먼트-결과-화면.png&quot; data-origin-width=&quot;1421&quot; data-origin-height=&quot;1000&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/v6eKU/btsJt2GvE4W/GQmBqkMRpxncZz7mrawDLk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/v6eKU/btsJt2GvE4W/GQmBqkMRpxncZz7mrawDLk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/v6eKU/btsJt2GvE4W/GQmBqkMRpxncZz7mrawDLk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fv6eKU%2FbtsJt2GvE4W%2FGQmBqkMRpxncZz7mrawDLk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1421&quot; height=&quot;1000&quot; data-filename=&quot;프래그먼트-결과-화면.png&quot; data-origin-width=&quot;1421&quot; data-origin-height=&quot;1000&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;마지막으로, 살짝 응용해서 TextView 대신 이미지 뷰(ImageView)를 넣어 사진을 보여주는 것으로 바꾸어 볼게요.&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;그럼, 변경할 곳은 fragment_frag1.xml&amp;nbsp; 파일에서 TextView 대신 아래와 같이 ImageView 를 대체해서 넣어 주면 됩니다.&amp;nbsp; &amp;nbsp;나머지 fragment_frag2.xml 과 fragment_frag3.xml 파일도 동일하게 바꾸어주세요.&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;lt;fragment_frag1.xml 파일 코드&amp;gt;&lt;/p&gt;
&lt;div style=&quot;background-color: #1e1f22; color: #bcbec4;&quot;&gt;
&lt;pre class=&quot;xml&quot;&gt;&lt;code&gt;&amp;lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&amp;gt;
&amp;lt;FrameLayout xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;
    xmlns:tools=&quot;http://schemas.android.com/tools&quot;
    android:layout_width=&quot;match_parent&quot;
    android:layout_height=&quot;match_parent&quot;
    android:background=&quot;#ffaaff&quot;
    tools:context=&quot;.frag1&quot;&amp;gt;

    &amp;lt;ImageView
        android:layout_width=&quot;wrap_content&quot;
        android:layout_height=&quot;match_parent&quot;
        android:src=&quot;@drawable/lake1&quot;
        android:background=&quot;#22aabb&quot; /&amp;gt;

&amp;lt;/FrameLayout&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;이때, 보여줄 사진으로 호수(lake)사진을 넣었는데요, 첨부해 드릴테니 연습으로 해보세요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;fileblock&quot; data-ke-align=&quot;alignCenter&quot;&gt;&lt;a href=&quot;https://blog.kakaocdn.net/dn/bbWsQ9/btsJt12O7BR/weOyBealokIKKZWRKJZD11/%ED%98%B8%EC%88%98%28jpg%29.zip?attach=1&amp;amp;knm=tfile.zip&quot; class=&quot;&quot;&gt;
    &lt;div class=&quot;image&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;desc&quot;&gt;&lt;div class=&quot;filename&quot;&gt;&lt;span class=&quot;name&quot;&gt;호수(jpg).zip&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;size&quot;&gt;1.53MB&lt;/div&gt;
&lt;/div&gt;
  &lt;/a&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;br /&gt;사진 파일들은&amp;nbsp; 안드로이드 스튜디오의 프로젝트 탐색창에서 ,&amp;nbsp; res 》 drawable 폴더로 복사해 넣어주세요.&amp;nbsp;&lt;br /&gt;(아래 참고)&amp;nbsp; 직접 끌어다 넣기하거나 , 복붙해도 됩니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;315&quot; data-origin-height=&quot;698&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/lun3Q/btsJvsYStBN/YBRiGlqPTggkg1C1SGI72K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/lun3Q/btsJvsYStBN/YBRiGlqPTggkg1C1SGI72K/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/lun3Q/btsJvsYStBN/YBRiGlqPTggkg1C1SGI72K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Flun3Q%2FbtsJvsYStBN%2FYBRiGlqPTggkg1C1SGI72K%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;315&quot; height=&quot;698&quot; data-origin-width=&quot;315&quot; data-origin-height=&quot;698&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;아래는, 이미지로 대체해서 실행한 모습입니다.&amp;nbsp;&lt;br /&gt;사진이 없는 배경의 공간은 기본값인 흰색인데, background 배경의 색을 사진과 잘 어울리게 넣어서 채워봤습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;프래그먼트-결과-화면(image).png&quot; data-origin-width=&quot;1421&quot; data-origin-height=&quot;1000&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/csPw4K/btsJtr1WSC8/8pjtJEKtA0NxQ0HHWXDuZK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/csPw4K/btsJtr1WSC8/8pjtJEKtA0NxQ0HHWXDuZK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/csPw4K/btsJtr1WSC8/8pjtJEKtA0NxQ0HHWXDuZK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcsPw4K%2FbtsJtr1WSC8%2F8pjtJEKtA0NxQ0HHWXDuZK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1421&quot; height=&quot;1000&quot; data-filename=&quot;프래그먼트-결과-화면(image).png&quot; data-origin-width=&quot;1421&quot; data-origin-height=&quot;1000&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;그럼, 지금까지 안드로이드 스튜디오에서&amp;nbsp; kotlin으로 프래그먼트(fragment)를 사용하는 방법과 실제 예시를 설명해 드렸습니다.&amp;nbsp; 몇 번 반복적으로 연습해 보면 금방 응용할 수 있을 거예요.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;감사합니다.&lt;/p&gt;</description>
      <category>App개발/Android_Studio</category>
      <category>android app kotlin fragment</category>
      <category>fragment 실습</category>
      <category>imageview로 프래그먼트만들기</category>
      <category>코틀린코드로 프래그먼트 만들기 실습</category>
      <category>프래그먼트 연습</category>
      <author>엑소더스팩토리</author>
      <guid isPermaLink="true">https://rasino.tistory.com/386</guid>
      <comments>https://rasino.tistory.com/386#entry386comment</comments>
      <pubDate>Fri, 6 Sep 2024 15:28:46 +0900</pubDate>
    </item>
    <item>
      <title>[Android Studio] VIew Binding - 뷰 바인딩으로 바꾸기 (코틀린)</title>
      <link>https://rasino.tistory.com/385</link>
      <description>&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt; ▶ 기존 방식 &amp;rarr;&amp;nbsp; findViewById &lt;/b&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;안드로이드 스튜디오를 이용한 안드로이드 네이티브 앱개발에서 findViewById 메서드는 리소스 id를 통해서 레이아웃에 있는 뷰 객체들 중 일치하는 뷰를 가져오는 메서드입니다.&amp;nbsp; 그리고 setContentView와 같은 메서드로 xml에 있는 리소스들을 지정한 속성에 맞게 인스턴스를 생성하여 메모리에 로드하는 인플레이션 과정이 필요합니다.&amp;nbsp; 이때 사용하는 메서드가 findViewById인데요, 문제는 가져와야 할 요소가 적을 때는 별문제가 없지만 아무리 간단한 앱이라고 하더라도 페이지 화면과 구성요소들이 증가하게 되면, 이 메서드로 일일이 뷰 객체를 하나씩 지정해서 가져오는 작업이 아주 번거로워집니다.&amp;nbsp; 이에 따라, 성능상으로도 좋지 않기에 kotlin extension, Data Binding, View Binding과 같은 대체 방법들이 추가되었고, 이를 이용해서 앱을 개발하는 것이 좋습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;▶ viewBinding의 장점 &lt;/b&gt;&lt;br /&gt;&lt;br /&gt;1.&amp;nbsp;findViewById&amp;nbsp;보다&amp;nbsp;속도가&amp;nbsp;상대적으로&amp;nbsp;빠르다. &lt;br /&gt;2. Binding 지정만 해주면 정확한 view의 타입을 찾아 알아서 맵핑해준다. &lt;br /&gt;3.&amp;nbsp;NullPointerException을&amp;nbsp;방지&amp;nbsp;해준다.&lt;/h4&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;▶&lt;span&gt; viewBinding 사용법&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;① build.gradle.kts (Module:app) 파일을 클릭하여 android {&amp;nbsp; ...&amp;nbsp; }&amp;nbsp; 항목 속에 아래코드를 추가해 주세요.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&lt;span style=&quot;color: #ef5369;&quot;&gt;viewBinding&lt;/span&gt;.&lt;span style=&quot;color: #ef5369;&quot;&gt;isEnabled&lt;/span&gt;&amp;nbsp;=&amp;nbsp;&lt;span style=&quot;color: #ef6f53;&quot;&gt;true&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1725595166081&quot; class=&quot;kotlin&quot; data-ke-language=&quot;kotlin&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;android {
    namespace = &quot;com.example.resourcetest&quot;
    compileSdk = 34
    viewBinding.isEnabled = true
    defaultConfig {
        applicationId = &quot;com.example.resourcetest&quot;
        minSdk = 24
        targetSdk = 34
        versionCode = 1
        versionName = &quot;1.0&quot;

        testInstrumentationRunner = &quot;androidx.test.runner.AndroidJUnitRunner&quot;
    }&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;코드 추가 후 상단에 보이는 Sync Now를 클릭하여 적용시켜 주세요.(아래)&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1053&quot; data-origin-height=&quot;409&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dOYqlH/btsJrTjSjqq/owj8h03rRHFMG5KsKv9KQ0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dOYqlH/btsJrTjSjqq/owj8h03rRHFMG5KsKv9KQ0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dOYqlH/btsJrTjSjqq/owj8h03rRHFMG5KsKv9KQ0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdOYqlH%2FbtsJrTjSjqq%2Fowj8h03rRHFMG5KsKv9KQ0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1053&quot; height=&quot;409&quot; data-origin-width=&quot;1053&quot; data-origin-height=&quot;409&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;그리고 바인딩을 참조하려는 layout의 이름 규칙에 따라 binding 객체를 생성해 주세요.&amp;nbsp;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;이름 생성 규칙&amp;nbsp; &amp;darr; &amp;darr; &lt;br /&gt;예시 1) activity_main.xml 을 참조한다면(바인딩)&amp;nbsp; ActivityMainBinding 으로 이름 지어집니다.&lt;br /&gt;(언더바는 생략하고 단어 첫 글자를 대문자로 한 다음 Binding글자와 함께 모두 이어 붙입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;예시 2) page_one.xml 을 참조한다면(바인딩)&amp;nbsp; PageOneBinding 으로 이름 지어집니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;따라서 예시 1과 같이 activity_main.xml을 바인딩한다면&amp;nbsp; MainActivity.kt 파일의 코드를&amp;nbsp; 아래와 같이 구성해 주면 됩니다.&lt;/p&gt;
&lt;div style=&quot;background-color: #1e1f22; color: #bcbec4;&quot;&gt;
&lt;pre class=&quot;kotlin&quot; data-ke-language=&quot;kotlin&quot;&gt;&lt;code&gt;val binding = ActivityMainBinding.inflate(layoutInflater)&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;그리고 변경하고자 하는 xml 파일의 text 값이 있다면 아래처럼 구성합니다. &lt;br /&gt;만약, activity_main.xml의 textView 객체의 id가 txtview 라면,&lt;/p&gt;
&lt;div style=&quot;background-color: #1e1f22; color: #bcbec4;&quot;&gt;
&lt;pre class=&quot;kotlin&quot; data-ke-language=&quot;kotlin&quot;&gt;&lt;code&gt;binding.txtview.setText(&quot;클릭했음&quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;그러면 textView의 내용이 &quot;클릭했음&quot;으로 변경 되게 됩니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;아래는 변경한 코드 포함 전체 MainActivity.kt의 코드입니다.&amp;nbsp; (버튼 1을 눌렀을 때 textView의 내용이 변하는 코드)&lt;/p&gt;
&lt;div style=&quot;background-color: #1e1f22; color: #bcbec4;&quot;&gt;
&lt;pre class=&quot;kotlin&quot; data-ke-language=&quot;kotlin&quot;&gt;&lt;code&gt;class MainActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        val binding = ActivityMainBinding.inflate(layoutInflater)        
        setContentView(binding.root)
        binding.btn1.setOnClickListener {
        	binding.txtview.setText(&quot;클릭했음&quot;)
        }&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>App개발/Android_Studio</category>
      <category>viewbinding 사용법</category>
      <category>viewbinding의 장점 특징</category>
      <category>뷰바인딩으로 바꾸기</category>
      <category>안드로이드스튜디오kotlin문법</category>
      <author>엑소더스팩토리</author>
      <guid isPermaLink="true">https://rasino.tistory.com/385</guid>
      <comments>https://rasino.tistory.com/385#entry385comment</comments>
      <pubDate>Fri, 6 Sep 2024 13:53:42 +0900</pubDate>
    </item>
    <item>
      <title>【트러블슈팅】 개발프로그램에서 스마트폰과 연결이 안될 때!</title>
      <link>https://rasino.tistory.com/384</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;-&amp;nbsp;안드로이드&amp;nbsp;스튜디오와 같은&amp;nbsp;개발프로그램에서&amp;nbsp;스마트폰과&amp;nbsp;연결하는&amp;nbsp;방법과&lt;br /&gt;&amp;nbsp;&amp;nbsp;(개발자&amp;nbsp;모드&amp;nbsp;활성화&amp;nbsp;방법) &lt;br /&gt;- USB디버깅 모드가 비활성화 되어 있는 이유와 활성화 방법에 대해 다루어 볼게요&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;안드로이드와-연결-타이틀.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1080&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b3iO8D/btsI0TJ8aMK/TucfdmkZkrIg75pLYwwKUk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b3iO8D/btsI0TJ8aMK/TucfdmkZkrIg75pLYwwKUk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b3iO8D/btsI0TJ8aMK/TucfdmkZkrIg75pLYwwKUk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb3iO8D%2FbtsI0TJ8aMK%2FTucfdmkZkrIg75pLYwwKUk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1920&quot; height=&quot;1080&quot; data-filename=&quot;안드로이드와-연결-타이틀.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1080&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;기본적으로 스마트폰에서는 보안관련 안전을 위해 케이블 연결로 안드로이드 스튜디오와 같은 프로그램에서 앱 직접 설치와 같은 접근을 제한하고 있는데요,&amp;nbsp; 이를 해결하기 위해서는 스마트폰에 숨김처리되어 있는 '개발자 옵션'이라는 것을 활성화해주어야 합니다.&amp;nbsp; &amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;우선 아래 안드로이드 프로그램에서 가상 디바이스로 먼저 기본화면을 동작시켜 볼게요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1080&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b6nfK1/btsI0FrLE1j/EELMQBfeErVLJjs26UQkCK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b6nfK1/btsI0FrLE1j/EELMQBfeErVLJjs26UQkCK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b6nfK1/btsI0FrLE1j/EELMQBfeErVLJjs26UQkCK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb6nfK1%2FbtsI0FrLE1j%2FEELMQBfeErVLJjs26UQkCK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1920&quot; height=&quot;1080&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1080&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;픽셀이라는 가상 디바이스로 실행이 잘 되었네요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1327&quot; data-origin-height=&quot;737&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/caQ0xD/btsIZRmhMbj/Wa5KVpOSQBvES0dK7MoEnK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/caQ0xD/btsIZRmhMbj/Wa5KVpOSQBvES0dK7MoEnK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/caQ0xD/btsIZRmhMbj/Wa5KVpOSQBvES0dK7MoEnK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcaQ0xD%2FbtsIZRmhMbj%2FWa5KVpOSQBvES0dK7MoEnK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1327&quot; height=&quot;737&quot; data-origin-width=&quot;1327&quot; data-origin-height=&quot;737&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;현재 스마트폰이 PC에 연결되어 있으나 장치 목록에는 인식되지 않은 것으로 보이네요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;643&quot; data-origin-height=&quot;645&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bBT03q/btsI1E6zCQa/0QqUWzQbm8lqlKhbKYFV80/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bBT03q/btsI1E6zCQa/0QqUWzQbm8lqlKhbKYFV80/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bBT03q/btsI1E6zCQa/0QqUWzQbm8lqlKhbKYFV80/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbBT03q%2FbtsI1E6zCQa%2F0QqUWzQbm8lqlKhbKYFV80%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;643&quot; height=&quot;645&quot; data-origin-width=&quot;643&quot; data-origin-height=&quot;645&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그럼, 스마트폰에서 설정으로 들어가세요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;505&quot; data-origin-height=&quot;1044&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bfMvu4/btsI1VGZycZ/Rh3VYgiDgGoOiqiQfO0dFk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bfMvu4/btsI1VGZycZ/Rh3VYgiDgGoOiqiQfO0dFk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bfMvu4/btsI1VGZycZ/Rh3VYgiDgGoOiqiQfO0dFk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbfMvu4%2FbtsI1VGZycZ%2FRh3VYgiDgGoOiqiQfO0dFk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;505&quot; height=&quot;1044&quot; data-origin-width=&quot;505&quot; data-origin-height=&quot;1044&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그런 다음 제일 아래에 있는 '휴대전화 정보'를 터치해 들어가세요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1911&quot; data-origin-height=&quot;1074&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/2DIPV/btsIZPaTXcz/2AO46L3K2kZps6iwx1h0S1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/2DIPV/btsIZPaTXcz/2AO46L3K2kZps6iwx1h0S1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/2DIPV/btsIZPaTXcz/2AO46L3K2kZps6iwx1h0S1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F2DIPV%2FbtsIZPaTXcz%2F2AO46L3K2kZps6iwx1h0S1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1911&quot; height=&quot;1074&quot; data-origin-width=&quot;1911&quot; data-origin-height=&quot;1074&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다음, '소프트웨어 정보'를 터치해주세요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;566&quot; data-origin-height=&quot;1033&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/DYJLF/btsI1dahFxc/HgZ7tFX8MGMzMeYhXW4UI0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/DYJLF/btsI1dahFxc/HgZ7tFX8MGMzMeYhXW4UI0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/DYJLF/btsI1dahFxc/HgZ7tFX8MGMzMeYhXW4UI0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FDYJLF%2FbtsI1dahFxc%2FHgZ7tFX8MGMzMeYhXW4UI0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;566&quot; height=&quot;1033&quot; data-origin-width=&quot;566&quot; data-origin-height=&quot;1033&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다음, '빌드번호'를 7회 이상 터치해 주면, 개발자 메뉴가 활성화됩니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;519&quot; data-origin-height=&quot;1028&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bVzEA0/btsI1ubNWcW/17E7wla1gGdPXxZXbntMuk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bVzEA0/btsI1ubNWcW/17E7wla1gGdPXxZXbntMuk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bVzEA0/btsI1ubNWcW/17E7wla1gGdPXxZXbntMuk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbVzEA0%2FbtsI1ubNWcW%2F17E7wla1gGdPXxZXbntMuk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;519&quot; height=&quot;1028&quot; data-origin-width=&quot;519&quot; data-origin-height=&quot;1028&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그럼, 뒤로 가기를 한 번 눌러 제일 아래로 스크롤해 보면, 아래처럼 '개발자 옵션'이 활성화되어 있는 것을 볼 수 있어요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1080&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/5L95C/btsI1pBOvK4/K3UYn0p9BxWt5jA4ELTS71/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/5L95C/btsI1pBOvK4/K3UYn0p9BxWt5jA4ELTS71/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/5L95C/btsI1pBOvK4/K3UYn0p9BxWt5jA4ELTS71/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F5L95C%2FbtsI1pBOvK4%2FK3UYn0p9BxWt5jA4ELTS71%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1920&quot; height=&quot;1080&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1080&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;USB 디버깅 메뉴를 터치해서 USB디버깅 허용 팝업창의 확인 버튼을 터치하고,&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1441&quot; data-origin-height=&quot;1054&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bAR5lC/btsI0vbXktM/KKmbJ65YkRo0qGWmgJpKF1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bAR5lC/btsI0vbXktM/KKmbJ65YkRo0qGWmgJpKF1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bAR5lC/btsI0vbXktM/KKmbJ65YkRo0qGWmgJpKF1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbAR5lC%2FbtsI0vbXktM%2FKKmbJ65YkRo0qGWmgJpKF1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1441&quot; height=&quot;1054&quot; data-origin-width=&quot;1441&quot; data-origin-height=&quot;1054&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;곧이어 뜨는 팝업창에서 '이 컴퓨터에서 항상 허용'을 체크하고 허용을 눌러주세요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;518&quot; data-origin-height=&quot;665&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/Bnp8q/btsI0ChCjDA/z9lGNo3R0hwj4vd0lqYxS1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Bnp8q/btsI0ChCjDA/z9lGNo3R0hwj4vd0lqYxS1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Bnp8q/btsI0ChCjDA/z9lGNo3R0hwj4vd0lqYxS1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FBnp8q%2FbtsI0ChCjDA%2Fz9lGNo3R0hwj4vd0lqYxS1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;518&quot; height=&quot;665&quot; data-origin-width=&quot;518&quot; data-origin-height=&quot;665&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이제 안드로이드 스튜디오에서 PC와 연결된 스마트폰 디바이스가 잡히는 것을 볼 수 있습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1197&quot; data-origin-height=&quot;673&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/tq1TM/btsIZQ1ZF0m/SQO8okMPtjhFWUdcMNj4r1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/tq1TM/btsIZQ1ZF0m/SQO8okMPtjhFWUdcMNj4r1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/tq1TM/btsIZQ1ZF0m/SQO8okMPtjhFWUdcMNj4r1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Ftq1TM%2FbtsIZQ1ZF0m%2FSQO8okMPtjhFWUdcMNj4r1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1197&quot; height=&quot;673&quot; data-origin-width=&quot;1197&quot; data-origin-height=&quot;673&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래는 연결한 갤럭시 스마트폰에 앱설치와 동시에 바로 실행된 모습입니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1543&quot; data-origin-height=&quot;924&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cqVbym/btsI0AjKJpu/JVuGADM4T23PuznYLUuB4K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cqVbym/btsI0AjKJpu/JVuGADM4T23PuznYLUuB4K/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cqVbym/btsI0AjKJpu/JVuGADM4T23PuznYLUuB4K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcqVbym%2FbtsI0AjKJpu%2FJVuGADM4T23PuznYLUuB4K%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1543&quot; height=&quot;924&quot; data-origin-width=&quot;1543&quot; data-origin-height=&quot;924&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;※ USB 디버깅 모드가 활성화 자체가 안 되는 경우가 생기는데요, 즉 ON/OFF 자체를 할 수 없는 상황이 생기는데, 그 이유는 기존 연결해서 사용하던 PC가 아닌 노트북이나 다른 PC로 연결해서 사용할 때 이렇게 됩니다.&amp;nbsp;&lt;br /&gt;이럴 때는 기존 PC에 연결 승인된 권한을 취소해 주어야 새로 연결하는 PC에 다시 권한을 주면서 USB 디버깅 모드를 활성화시킬 수 있게 됩니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1291&quot; data-origin-height=&quot;1019&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dA2nv0/btsI1VmHaqq/44GIjOmqgZykc0AevtdB31/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dA2nv0/btsI1VmHaqq/44GIjOmqgZykc0AevtdB31/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dA2nv0/btsI1VmHaqq/44GIjOmqgZykc0AevtdB31/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdA2nv0%2FbtsI1VmHaqq%2F44GIjOmqgZykc0AevtdB31%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1291&quot; height=&quot;1019&quot; data-origin-width=&quot;1291&quot; data-origin-height=&quot;1019&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그럼 다시 &quot;이 컴퓨터에서 항상 허용&quot;에 체크해 주고 확인을 눌러 주면&amp;nbsp; &amp;nbsp;USB 디버깅이 활성화된 것을 볼 수 있습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;527&quot; data-origin-height=&quot;1031&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/1MOzH/btsI0vpsJpB/7KiWDxiyUD6bRrDkWg7rz0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/1MOzH/btsI0vpsJpB/7KiWDxiyUD6bRrDkWg7rz0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/1MOzH/btsI0vpsJpB/7KiWDxiyUD6bRrDkWg7rz0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F1MOzH%2FbtsI0vpsJpB%2F7KiWDxiyUD6bRrDkWg7rz0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;527&quot; height=&quot;1031&quot; data-origin-width=&quot;527&quot; data-origin-height=&quot;1031&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;자, 이렇게 해도 &quot;USB 디버깅&quot; 메뉴가 활성화 안 되는 경우에는&amp;nbsp; 개발자 옵션을 삭제하고 다시 열어보시고, 그래도 안 될 경우에는,&amp;nbsp; &lt;span style=&quot;background-color: #ffffff; color: #000000; text-align: left;&quot;&gt;Usb 디버깅 설정이 폰에 설치된 보안관련 설정 어플리케이션등에 의해 제한될 수 있는 경우이니, 최근 관련 어플 설치나 보안 관련 설정 변경을 한 것이 있는지? 찾아서 삭제하거나 해제해 보세요.&amp;nbsp; 그러면 대부분은 이 문제가 해결 될 거예요.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;background-color: #ffffff; color: #000000; text-align: left;&quot;&gt;아레 폰에 보안 설정을 ON 하면 USB 디버깅 메뉴가 계속 꺼져있게 됩니다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;01-1.png&quot; data-origin-width=&quot;507&quot; data-origin-height=&quot;1004&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/rWmTL/btsKl5B4OKB/xFdkNwCSrcTf2zdpBaFKGk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/rWmTL/btsKl5B4OKB/xFdkNwCSrcTf2zdpBaFKGk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/rWmTL/btsKl5B4OKB/xFdkNwCSrcTf2zdpBaFKGk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FrWmTL%2FbtsKl5B4OKB%2FxFdkNwCSrcTf2zdpBaFKGk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;507&quot; height=&quot;1004&quot; data-filename=&quot;01-1.png&quot; data-origin-width=&quot;507&quot; data-origin-height=&quot;1004&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;02-1.png&quot; data-origin-width=&quot;501&quot; data-origin-height=&quot;1006&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bhmTgR/btsKkXSAj1N/KD5SgUW8dohgA32EVHF4d1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bhmTgR/btsKkXSAj1N/KD5SgUW8dohgA32EVHF4d1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bhmTgR/btsKkXSAj1N/KD5SgUW8dohgA32EVHF4d1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbhmTgR%2FbtsKkXSAj1N%2FKD5SgUW8dohgA32EVHF4d1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;501&quot; height=&quot;1006&quot; data-filename=&quot;02-1.png&quot; data-origin-width=&quot;501&quot; data-origin-height=&quot;1006&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;비록 크게 어려운 부분은 아니지만, 간혹 &quot;USB디버깅&quot; 메뉴 자체가 활성화 안 되어 당황할 수 있기에 이쪽 관련으로 처음 시작하려는 누군가에게는 도움이 되리라 생각하여 게시해 봅니다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그럼, 오늘도 좋은 하루 보내세요~&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://youtu.be/AWZE7UQLb3Q&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://youtu.be/AWZE7UQLb3Q&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1723308951302&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;website&quot; data-og-title=&quot;- YouTube&quot; data-og-description=&quot;&quot; data-og-host=&quot;www.youtube.com&quot; data-og-source-url=&quot;https://youtu.be/AWZE7UQLb3Q&quot; data-og-url=&quot;https://www.youtube.com/watch?v=AWZE7UQLb3Q&amp;amp;feature=youtu.be&quot; data-og-image=&quot;&quot;&gt;&lt;a href=&quot;https://youtu.be/AWZE7UQLb3Q&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://youtu.be/AWZE7UQLb3Q&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url();&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;- YouTube&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;www.youtube.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>App개발/Android_Studio</category>
      <category>usb 디버깅 활성화</category>
      <category>usb디버깅권한승인취소</category>
      <category>개발자옵션</category>
      <category>안드로이드스튜디오 스마트폰 연결하기</category>
      <category>안드로이드스튜디오폰연결문제</category>
      <author>엑소더스팩토리</author>
      <guid isPermaLink="true">https://rasino.tistory.com/384</guid>
      <comments>https://rasino.tistory.com/384#entry384comment</comments>
      <pubDate>Mon, 12 Aug 2024 10:10:28 +0900</pubDate>
    </item>
    <item>
      <title>【 라즈베리파이/우분투】 리눅스(Linux)  명령어 정리 2</title>
      <link>https://rasino.tistory.com/383</link>
      <description>&lt;p style=&quot;background-color: #ffffff; color: #383838; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt;sudo&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;(substitute user do&amp;nbsp; 또는 super user do 의미)&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc; background-color: #ffffff; color: #383838; text-align: start;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;list-style-type: disc; color: #383838;&quot;&gt;로그아웃 없이&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt;다른 사용자의 권한을 사용&lt;/b&gt;&lt;/span&gt;하여 명령을 실행하도록 하는 명령어&lt;/li&gt;
&lt;li style=&quot;list-style-type: disc; color: #383838;&quot;&gt;&quot;sudo 명령어&quot; 는 root 권한으로 명령어를 실행함&lt;/li&gt;
&lt;li style=&quot;list-style-type: disc; color: #383838;&quot;&gt;/etc/sudoers 파일에 지정되어 있는 사용자만 사용가능&lt;/li&gt;
&lt;/ul&gt;
&lt;p style=&quot;background-color: #ffffff; color: #383838; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #f89009;&quot;&gt;su&lt;/span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/b&gt;(substitute user 또는 super user)&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc; background-color: #ffffff; color: #383838; text-align: start;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;list-style-type: disc; color: #383838;&quot;&gt;로그아웃 없이&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;b&gt;&lt;span style=&quot;color: #f89009;&quot;&gt;다른 사용자로 로그인&lt;/span&gt;&lt;/b&gt;하는 명령어&lt;/li&gt;
&lt;li style=&quot;list-style-type: disc; color: #383838;&quot;&gt;&quot;su 사용자명&quot; 으로 사용 (&quot;su&quot;는 &quot;su root&quot;와 동일함)&lt;/li&gt;
&lt;li style=&quot;list-style-type: disc; color: #383838;&quot;&gt;로그인 하려는 계정의 패스워드가 필요함&lt;/li&gt;
&lt;/ul&gt;
&lt;p style=&quot;background-color: #ffffff; color: #383838; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;sudo 명령어의 사용방법&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;background-color: #ffffff; color: #383838; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;sudo [명령어] :&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;b&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;root 계정으로 로그인 없이 [명령어]를 실행&lt;/span&gt;&lt;/b&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;| root 계정의 패스워드 필요&lt;/p&gt;
&lt;p style=&quot;background-color: #ffffff; color: #383838; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;sudo su : root 계정으로 로그인 |&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #333333;&quot;&gt;현재 디렉토리 유지 (현재 계정의 쉘 유지) |&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;b&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;현재 계정의 패스워드 필요&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;background-color: #ffffff; color: #383838; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;sudo -s : root 계정으로 로그인 | 현재 디렉토리 유지 (현재 계정의 쉘 유지)&lt;span style=&quot;color: #333333;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;| root 계정의 패스워드 필요&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;background-color: #ffffff; color: #383838; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;sudo -i :&lt;span style=&quot;color: #333333;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;root 계정으로 로그인 |&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;b&gt;&lt;span style=&quot;color: #f89009;&quot;&gt;&quot;/root&quot;로 디렉토리 변경&lt;/span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #f89009;&quot;&gt;(root 쉘 실행)&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;color: #333333;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;| root 계정의 패스워드 필요&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;background-color: #ffffff; color: #383838; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;su 명령어의 사용방법 ([아이디] 파라미터가 없을경우 root 로 치환됨)&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;background-color: #ffffff; color: #383838; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;su [아이디] :&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #333333;&quot;&gt;root 계정으로 로그인 |&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: #333333;&quot;&gt;현재 디렉토리 유지 (현재 계정의 쉘 유지) |&lt;span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;root 계정의 패스워드 필요&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;background-color: #ffffff; color: #383838; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;su - [아이디] :&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #333333;&quot;&gt;root 계정으로 로그인 |&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style=&quot;color: #f89009;&quot;&gt;&quot;/root&quot;로&lt;span&gt;&amp;nbsp;&lt;/span&gt;디렉토리 변경&lt;/span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #f89009;&quot;&gt;(root 쉘 실행)&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;color: #333333;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;| root 계정의 패스워드 필요&lt;/span&gt;&lt;/p&gt;</description>
      <category>라즈베리파이/라즈베리_명령어</category>
      <category>sudo 명령어</category>
      <category>리눅스 명령어</category>
      <category>리눅스 명령어 su</category>
      <author>엑소더스팩토리</author>
      <guid isPermaLink="true">https://rasino.tistory.com/383</guid>
      <comments>https://rasino.tistory.com/383#entry383comment</comments>
      <pubDate>Sat, 27 Apr 2024 18:50:38 +0900</pubDate>
    </item>
    <item>
      <title>【 3D프린팅 】Fusion360(퓨전360) 개인용 무료버전 설치</title>
      <link>https://rasino.tistory.com/381</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;이번 게시글은 3D 프린팅 모델 중에서 가장 접근하기 편하면서 강력한 기능을 제공하는 Fusion360에 대해 다루고 있습니다.&amp;nbsp; &lt;br /&gt;특히&amp;nbsp;파라메트릭&amp;nbsp;모델링&amp;nbsp;기능이&amp;nbsp;강력해서&amp;nbsp;결과물&amp;nbsp;완성&amp;nbsp;후에도&amp;nbsp;치수&amp;nbsp;변경등에&amp;nbsp;대해&amp;nbsp;바로바로&amp;nbsp;적용시킬&amp;nbsp;수&amp;nbsp;있으며,&amp;nbsp;히스토리&amp;nbsp;기능&amp;nbsp;제공으로&amp;nbsp;수정&amp;nbsp;작업&amp;nbsp;시간을&amp;nbsp;매우&amp;nbsp;빠르게&amp;nbsp;줄여주는&amp;nbsp;모델링&amp;nbsp;툴입니다.&amp;nbsp;&amp;nbsp; &lt;br /&gt;이번 게시글은 3D프린팅 모델링 소프트웨어 중에서 장점이 많은 Fusion360(퓨전360)의 개인용 무료 버전을 다운로드하여 설치하는 내용을 담고 있습니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Fusion360-개인-무료-버전-설치-타이틀(Ras).png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1080&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/TbKdV/btsATfA2Yri/ttpY6WWdAYf4VZjx1lBGOK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/TbKdV/btsATfA2Yri/ttpY6WWdAYf4VZjx1lBGOK/img.png&quot; data-alt=&quot;Fusion360 무료버전 설치 타이틀&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/TbKdV/btsATfA2Yri/ttpY6WWdAYf4VZjx1lBGOK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FTbKdV%2FbtsATfA2Yri%2FttpY6WWdAYf4VZjx1lBGOK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1920&quot; height=&quot;1080&quot; data-filename=&quot;Fusion360-개인-무료-버전-설치-타이틀(Ras).png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1080&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;Fusion360 무료버전 설치 타이틀&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Fusion 360은 인벤터, Rhino 와 함께 대표적인 3D모델링 툴 중 하나인데요, 앞서 설명한 파라메트릭 모델링 및 히스트리 기능을 제공하면서 개인용 무료 버전으로 활용할 수 있는 몇 안 되는 툴로서, 설계 시 직관적으로 설계할 수 있는 매우 좋은 3D 모델링 툴입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Fusion 360은 기본적으로 클라우드 형태로 동작되는 데요,&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;08.png&quot; data-origin-width=&quot;496&quot; data-origin-height=&quot;297&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/qaCn3/btsASHkhf8J/KyWk57yDgsV3Y4uKhDM6yK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/qaCn3/btsASHkhf8J/KyWk57yDgsV3Y4uKhDM6yK/img.png&quot; data-alt=&quot;OnLine 모드로 작업&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/qaCn3/btsASHkhf8J/KyWk57yDgsV3Y4uKhDM6yK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FqaCn3%2FbtsASHkhf8J%2FKyWk57yDgsV3Y4uKhDM6yK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;496&quot; height=&quot;297&quot; data-filename=&quot;08.png&quot; data-origin-width=&quot;496&quot; data-origin-height=&quot;297&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;OnLine 모드로 작업&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;만약 네트워크가 안 될 경우에도 &amp;lsquo;Off 라인 모드&amp;rsquo;로 작업이 가능합니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;09.png&quot; data-origin-width=&quot;423&quot; data-origin-height=&quot;283&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/buJ8KA/btsAQATL6xB/pbfkd6PhuuvVFug2Do6zWK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/buJ8KA/btsAQATL6xB/pbfkd6PhuuvVFug2Do6zWK/img.png&quot; data-alt=&quot;OffLine 모드로 작업&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/buJ8KA/btsAQATL6xB/pbfkd6PhuuvVFug2Do6zWK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbuJ8KA%2FbtsAQATL6xB%2Fpbfkd6PhuuvVFug2Do6zWK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;423&quot; height=&quot;283&quot; data-filename=&quot;09.png&quot; data-origin-width=&quot;423&quot; data-origin-height=&quot;283&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;OffLine 모드로 작업&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Fusion360은 기본적으로 월/년/3년 단위의 유료 구독으로 운영이 되는데요,&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;00.png&quot; data-origin-width=&quot;1253&quot; data-origin-height=&quot;777&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cvXxFX/btsAQzm1xS3/d46FSdbcxwvMcaKkfMBkg1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cvXxFX/btsAQzm1xS3/d46FSdbcxwvMcaKkfMBkg1/img.png&quot; data-alt=&quot;Fusion360 정식 버전 구매 가격&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cvXxFX/btsAQzm1xS3/d46FSdbcxwvMcaKkfMBkg1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcvXxFX%2FbtsAQzm1xS3%2Fd46FSdbcxwvMcaKkfMBkg1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1253&quot; height=&quot;777&quot; data-filename=&quot;00.png&quot; data-origin-width=&quot;1253&quot; data-origin-height=&quot;777&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;Fusion360 정식 버전 구매 가격&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;보시다시피 개인이 구매해서 사용하기에는 부담이 되는 금액이죠.&lt;br /&gt;물론 무료 체험판이 있지만, 한 달 체험기간이 끝나면 다시 사용하려면 결국 결제해야 합니다.&lt;br /&gt;하지만 영문 서버로 접속했을 때,&amp;nbsp; 비상업적 용도로 계속해서 사용할 수 있는 개인용 버전을 다운로드하여 사용할 수 있습니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;11.png&quot; data-origin-width=&quot;1491&quot; data-origin-height=&quot;553&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bHTHgh/btsAUnysi6e/6DuJNkyGAr2jMbIkeKMeqK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bHTHgh/btsAUnysi6e/6DuJNkyGAr2jMbIkeKMeqK/img.png&quot; data-alt=&quot;개인용 무료 Fusion360 버전과 유료 Fusion360 버전의 기능 비교&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bHTHgh/btsAUnysi6e/6DuJNkyGAr2jMbIkeKMeqK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbHTHgh%2FbtsAUnysi6e%2F6DuJNkyGAr2jMbIkeKMeqK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1491&quot; height=&quot;553&quot; data-filename=&quot;11.png&quot; data-origin-width=&quot;1491&quot; data-origin-height=&quot;553&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;개인용 무료 Fusion360 버전과 유료 Fusion360 버전의 기능 비교&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;개인용에서 제공하는 기능만으로도 3D출력물 모델링에는 별다른 지장이 없고, 3D 프린팅 자격증을 취득하거나 하는 등 모두 가능하기 때문에 개인용 무료 버전을 설치하면 됩니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그럼, Autodesk 사이트에 접속하고 화면 우측 상단의 &amp;lsquo;로그인&amp;rsquo;을 클릭하세요.&amp;nbsp;&lt;br /&gt;아래 링크를 클릭해서 접속해주세요.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;10.png&quot; data-origin-width=&quot;330&quot; data-origin-height=&quot;229&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/URTGn/btsATBqk1Kb/r3KMkRAKiKXUB39PAix8Wk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/URTGn/btsATBqk1Kb/r3KMkRAKiKXUB39PAix8Wk/img.png&quot; data-alt=&quot;'로그인' 위치&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/URTGn/btsATBqk1Kb/r3KMkRAKiKXUB39PAix8Wk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FURTGn%2FbtsATBqk1Kb%2Fr3KMkRAKiKXUB39PAix8Wk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;330&quot; height=&quot;229&quot; data-filename=&quot;10.png&quot; data-origin-width=&quot;330&quot; data-origin-height=&quot;229&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;'로그인' 위치&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;계정이 있다면 바로 로그인 하면 되고, 가입 이력이 없다면 &amp;lsquo;계정생성&amp;rsquo;을 클릭해 주세요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;04.png&quot; data-origin-width=&quot;517&quot; data-origin-height=&quot;439&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/esluGJ/btsAScZf2Z7/nVBNt4zemRrggQMKct5OP1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/esluGJ/btsAScZf2Z7/nVBNt4zemRrggQMKct5OP1/img.png&quot; data-alt=&quot;로그인 이미지&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/esluGJ/btsAScZf2Z7/nVBNt4zemRrggQMKct5OP1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FesluGJ%2FbtsAScZf2Z7%2FnVBNt4zemRrggQMKct5OP1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;517&quot; height=&quot;439&quot; data-filename=&quot;04.png&quot; data-origin-width=&quot;517&quot; data-origin-height=&quot;439&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;로그인 이미지&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그럼, 아래 양식에 있는 빈 곳을 채우고 영상을 따라 진행해 보세요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;05.png&quot; data-origin-width=&quot;643&quot; data-origin-height=&quot;967&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/xszuS/btsATiYHOv8/kTiuRGJQYyG3NNBSXO1To0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/xszuS/btsATiYHOv8/kTiuRGJQYyG3NNBSXO1To0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/xszuS/btsATiYHOv8/kTiuRGJQYyG3NNBSXO1To0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FxszuS%2FbtsATiYHOv8%2FkTiuRGJQYyG3NNBSXO1To0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;643&quot; height=&quot;967&quot; data-filename=&quot;05.png&quot; data-origin-width=&quot;643&quot; data-origin-height=&quot;967&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;만약 '전자메일 확인'란에서 확인 메일을 정확히 입력해도 잘 안 된다면, 복사 붙여 넣기로 해보세요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;06.png&quot; data-origin-width=&quot;533&quot; data-origin-height=&quot;505&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/lIYsR/btsAUoRHgn1/FGIwQW0N19RE43IZFl3tl1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/lIYsR/btsAUoRHgn1/FGIwQW0N19RE43IZFl3tl1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/lIYsR/btsAUoRHgn1/FGIwQW0N19RE43IZFl3tl1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FlIYsR%2FbtsAUoRHgn1%2FFGIwQW0N19RE43IZFl3tl1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;533&quot; height=&quot;505&quot; data-filename=&quot;06.png&quot; data-origin-width=&quot;533&quot; data-origin-height=&quot;505&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고,&amp;nbsp; 처음 계정 가입 시에는 가입시 등록한 메일로 &amp;lsquo;가입 확인&amp;rsquo; 메일이 전송되는데요, 지금 그 메일로 로그인하여 Autodesk에서 보낸 메일을 열어 확인 버튼을 클릭해야 합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;네, 이렇게 로그인이 되었다면, 지금 링크로 접속해 보세요.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;&lt;b&gt; ( ※ 주의 :&amp;nbsp; 만약 autodesk.co.kr로 되어 있는 한국 사이트에 접속할 경우 기능제한은 없지만 30일 한달만 사용가능한 체험판 버전이 설치될 수 있습니다.&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;&lt;b&gt;따라서, 기능제한은 있지만 평생 무료로 쓸수 있는 버전을 원한다면 반드시 autodesk.com 오리지널 사이트로 접속해 주세요) &lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;h4 style=&quot;color: #000000;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;[ Fusion360(퓨전360 ) 개인용 무료 버전 다운로드&amp;nbsp; ]&lt;/b&gt;&lt;br /&gt;&lt;a href=&quot;https://www.autodesk.com/products/fusion-360/personal&quot;&gt;https://www.autodesk.com/products/fusion-360/personal&lt;/a&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;처음 영문 페이지에 접속하면 아래같은 질문 창들이 보일 때 자세이 보고 잘 클릭해줘야 합니다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;만약 아래와 같은 창에서는 반드시 &quot;Stay&quot; 버튼을 눌러주세요.&amp;nbsp; &amp;nbsp;왜냐하면, 오토데스크 한국어 페이지에서는 다운로드 항목을 찾을 수 없고 영문 페이지로 접속해야 받을 수 있어요.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;01.png&quot; data-origin-width=&quot;867&quot; data-origin-height=&quot;583&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bhsE2D/btsBx9fnRiT/sU5oid4TyA09bjMbUBrwnK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bhsE2D/btsBx9fnRiT/sU5oid4TyA09bjMbUBrwnK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bhsE2D/btsBx9fnRiT/sU5oid4TyA09bjMbUBrwnK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbhsE2D%2FbtsBx9fnRiT%2FsU5oid4TyA09bjMbUBrwnK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;867&quot; height=&quot;583&quot; data-filename=&quot;01.png&quot; data-origin-width=&quot;867&quot; data-origin-height=&quot;583&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;아래 이미지에서는 &quot;Get Fusion 360 for personal use&quot; 를 클릭하세요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;02 autodesk_Get Fusion.png&quot; data-origin-width=&quot;810&quot; data-origin-height=&quot;529&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ttf5J/btsBx6Xe1EH/DaRhRTJy9EdnQB9yx6DXI0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ttf5J/btsBx6Xe1EH/DaRhRTJy9EdnQB9yx6DXI0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ttf5J/btsBx6Xe1EH/DaRhRTJy9EdnQB9yx6DXI0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fttf5J%2FbtsBx6Xe1EH%2FDaRhRTJy9EdnQB9yx6DXI0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;810&quot; height=&quot;529&quot; data-filename=&quot;02 autodesk_Get Fusion.png&quot; data-origin-width=&quot;810&quot; data-origin-height=&quot;529&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 아래와 같은 창에서는 자신의 이메일을 넣어주세요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;03 autodesk_Continue.png&quot; data-origin-width=&quot;621&quot; data-origin-height=&quot;562&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bbcpku/btsBx97weYK/mTnKEeFhP1Kqd9VbuQxd70/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bbcpku/btsBx97weYK/mTnKEeFhP1Kqd9VbuQxd70/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bbcpku/btsBx97weYK/mTnKEeFhP1Kqd9VbuQxd70/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbbcpku%2FbtsBx97weYK%2FmTnKEeFhP1Kqd9VbuQxd70%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;621&quot; height=&quot;562&quot; data-filename=&quot;03 autodesk_Continue.png&quot; data-origin-width=&quot;621&quot; data-origin-height=&quot;562&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 아래 처럼 이름과 연락처를 입력하면 됩니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;04 autodesk_Continue2.png&quot; data-origin-width=&quot;492&quot; data-origin-height=&quot;654&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/yx3nd/btsBymFz9Jv/zKUw2au19DrujeXsZXkcvk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/yx3nd/btsBymFz9Jv/zKUw2au19DrujeXsZXkcvk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/yx3nd/btsBymFz9Jv/zKUw2au19DrujeXsZXkcvk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fyx3nd%2FbtsBymFz9Jv%2FzKUw2au19DrujeXsZXkcvk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;492&quot; height=&quot;654&quot; data-filename=&quot;04 autodesk_Continue2.png&quot; data-origin-width=&quot;492&quot; data-origin-height=&quot;654&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;569&quot; data-origin-height=&quot;413&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/HSoBu/btsATNRKMeQ/kyLOEDBCLHkc3hH8Vcqmg0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/HSoBu/btsATNRKMeQ/kyLOEDBCLHkc3hH8Vcqmg0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/HSoBu/btsATNRKMeQ/kyLOEDBCLHkc3hH8Vcqmg0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FHSoBu%2FbtsATNRKMeQ%2FkyLOEDBCLHkc3hH8Vcqmg0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;569&quot; height=&quot;413&quot; data-origin-width=&quot;569&quot; data-origin-height=&quot;413&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&quot;No thanks&quot; 체크&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;413&quot; data-origin-height=&quot;500&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/XftpI/btsASIjfh5g/GnH6IZoKoApoGox5zI14zk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/XftpI/btsASIjfh5g/GnH6IZoKoApoGox5zI14zk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/XftpI/btsASIjfh5g/GnH6IZoKoApoGox5zI14zk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FXftpI%2FbtsASIjfh5g%2FGnH6IZoKoApoGox5zI14zk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;413&quot; height=&quot;500&quot; data-origin-width=&quot;413&quot; data-origin-height=&quot;500&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이미지 처럼 체크 후, Submit 클릭!&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;640&quot; data-origin-height=&quot;427&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b8kksm/btsASWuQoAu/Rzsdfffw3xV5QKgVTUxGk1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b8kksm/btsASWuQoAu/Rzsdfffw3xV5QKgVTUxGk1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b8kksm/btsASWuQoAu/Rzsdfffw3xV5QKgVTUxGk1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb8kksm%2FbtsASWuQoAu%2FRzsdfffw3xV5QKgVTUxGk1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;400&quot; data-origin-width=&quot;640&quot; data-origin-height=&quot;427&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;lsquo;다운로드&amp;rsquo;&amp;nbsp;버튼을&amp;nbsp;클릭해&amp;nbsp;주세요&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;설치 파일이 다운로드 완료 되면, 실행하여 설치를 진행해 주세요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;966&quot; data-origin-height=&quot;639&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bZ8GwJ/btsAVsGjnUA/n7PNrAnRhRDcQWQiPqoSD0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bZ8GwJ/btsAVsGjnUA/n7PNrAnRhRDcQWQiPqoSD0/img.png&quot; data-alt=&quot;무료버전 설치중인 모습&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bZ8GwJ/btsAVsGjnUA/n7PNrAnRhRDcQWQiPqoSD0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbZ8GwJ%2FbtsAVsGjnUA%2Fn7PNrAnRhRDcQWQiPqoSD0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;397&quot; data-origin-width=&quot;966&quot; data-origin-height=&quot;639&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;무료버전 설치중인 모습&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;869&quot; data-origin-height=&quot;564&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bUWRMz/btsAUml2l81/97vPdsbGGIRBUPfr0w10Kk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bUWRMz/btsAUml2l81/97vPdsbGGIRBUPfr0w10Kk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bUWRMz/btsAUml2l81/97vPdsbGGIRBUPfr0w10Kk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbUWRMz%2FbtsAUml2l81%2F97vPdsbGGIRBUPfr0w10Kk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;389&quot; data-origin-width=&quot;869&quot; data-origin-height=&quot;564&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위 이미지처럼 체크 후 Autodesk Identity Manager 열기를 클릭하세요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1283&quot; data-origin-height=&quot;692&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cd2z14/btsATCCMx9c/k4w2PkHlACPo1XyxPw32XK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cd2z14/btsATCCMx9c/k4w2PkHlACPo1XyxPw32XK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cd2z14/btsATCCMx9c/k4w2PkHlACPo1XyxPw32XK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fcd2z14%2FbtsATCCMx9c%2Fk4w2PkHlACPo1XyxPw32XK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;324&quot; data-origin-width=&quot;1283&quot; data-origin-height=&quot;692&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1237&quot; data-origin-height=&quot;674&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bmWcS4/btsASF06hjN/qjFK2VN4mpCJtaBXgt0qW1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bmWcS4/btsASF06hjN/qjFK2VN4mpCJtaBXgt0qW1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bmWcS4/btsASF06hjN/qjFK2VN4mpCJtaBXgt0qW1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbmWcS4%2FbtsASF06hjN%2FqjFK2VN4mpCJtaBXgt0qW1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;674&quot; data-origin-width=&quot;1237&quot; data-origin-height=&quot;674&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;네, 이렇게 해서 최종적으로 설치 완료 된 모습입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Fusion360은 클라우드 형태로 운영되는 데요, 작업 파일을 서버에 저장하기 때문에 다른 사람과 협업(공동) 작업이 가능하고, 이미지처럼 이전에 다른 PC에서 작업했던 내용을 다시 열어서 작업하는 것이 가능합니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;401&quot; data-origin-height=&quot;770&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/zA7hP/btsARjj3eEz/0B4jrkEO03YQmekhB2cGwK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/zA7hP/btsARjj3eEz/0B4jrkEO03YQmekhB2cGwK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/zA7hP/btsARjj3eEz/0B4jrkEO03YQmekhB2cGwK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FzA7hP%2FbtsARjj3eEz%2F0B4jrkEO03YQmekhB2cGwK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;401&quot; height=&quot;770&quot; data-origin-width=&quot;401&quot; data-origin-height=&quot;770&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;우선, 기본 설정 부분을 간략히 설명드릴게요.&lt;br /&gt;마우스를 로그인 id 위에서 우클릭하면 &amp;lsquo;기본 설정&amp;rsquo; 메뉴 뜨는데요, 클릭하세요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;545&quot; data-origin-height=&quot;502&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/z2zd0/btsATArp5CD/kkQ1AWqubKfJPci9ZZIzr0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/z2zd0/btsATArp5CD/kkQ1AWqubKfJPci9ZZIzr0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/z2zd0/btsATArp5CD/kkQ1AWqubKfJPci9ZZIzr0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fz2zd0%2FbtsATArp5CD%2FkkQ1AWqubKfJPci9ZZIzr0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;545&quot; height=&quot;502&quot; data-origin-width=&quot;545&quot; data-origin-height=&quot;502&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;언어 설정은 아래 이미지에서 영어 같은 것으로 바꿀 수 있습니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1007&quot; data-origin-height=&quot;639&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/W70eh/btsAUpXl8pg/KHcSlwloz8UCma4TqrHFN1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/W70eh/btsAUpXl8pg/KHcSlwloz8UCma4TqrHFN1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/W70eh/btsAUpXl8pg/KHcSlwloz8UCma4TqrHFN1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FW70eh%2FbtsAUpXl8pg%2FKHcSlwloz8UCma4TqrHFN1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;381&quot; data-origin-width=&quot;1007&quot; data-origin-height=&quot;639&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1013&quot; data-origin-height=&quot;605&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/brBCYP/btsASt7u5d1/Y3xOBggb5WpkArHNZXIXdk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/brBCYP/btsASt7u5d1/Y3xOBggb5WpkArHNZXIXdk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/brBCYP/btsASt7u5d1/Y3xOBggb5WpkArHNZXIXdk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbrBCYP%2FbtsASt7u5d1%2FY3xOBggb5WpkArHNZXIXdk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;605&quot; data-origin-width=&quot;1013&quot; data-origin-height=&quot;605&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;개인적으로 마우스 사용방식은 &amp;lsquo;Tinkercad&amp;rsquo;에서 사용하던 방식이 편해서 사용하고 있는데요, 각각 사용해 보면서 나머지 부분들도 여러분이 사용하기 편한 방식으로 선택해 보세요.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 설계하는 기본 단위가 mm / cm / inch 무엇으로 되어 있는지 확인해 보세요.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그럼, 테스트로 100mm X 100mm X 30mm 치수의 박스를 모델링해 볼게요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;738&quot; data-origin-height=&quot;841&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/zGHmc/btsATWViXGs/Xa4oyw1TDPgN8pki1yZtUK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/zGHmc/btsATWViXGs/Xa4oyw1TDPgN8pki1yZtUK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/zGHmc/btsATWViXGs/Xa4oyw1TDPgN8pki1yZtUK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FzGHmc%2FbtsATWViXGs%2FXa4oyw1TDPgN8pki1yZtUK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;684&quot; data-origin-width=&quot;738&quot; data-origin-height=&quot;841&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;815&quot; data-origin-height=&quot;824&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ba3B28/btsATf18kRz/EDsFQkOHbftZyTluKh4WWK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ba3B28/btsATf18kRz/EDsFQkOHbftZyTluKh4WWK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ba3B28/btsATf18kRz/EDsFQkOHbftZyTluKh4WWK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fba3B28%2FbtsATf18kRz%2FEDsFQkOHbftZyTluKh4WWK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;607&quot; data-origin-width=&quot;815&quot; data-origin-height=&quot;824&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;여기서 파일 저장(Save)은 기본적으로 서버로 저장되는데요, 폴더를 만들어 정리해 주면 좋습니다.&lt;br /&gt;만약, 작업하고 있는 PC로 저장하고자 한다면 Export 메뉴로 저장할 수 있어요.&amp;nbsp;&amp;nbsp;&lt;br /&gt;그리고, 저장할 수 있는 파일 확장자를 확인하세요.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;23.png&quot; data-origin-width=&quot;787&quot; data-origin-height=&quot;493&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/pS82Y/btsAStzFQoq/ukyTHwkOQBTKTXcxIIcHjK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/pS82Y/btsAStzFQoq/ukyTHwkOQBTKTXcxIIcHjK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/pS82Y/btsAStzFQoq/ukyTHwkOQBTKTXcxIIcHjK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FpS82Y%2FbtsAStzFQoq%2FukyTHwkOQBTKTXcxIIcHjK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;376&quot; data-filename=&quot;23.png&quot; data-origin-width=&quot;787&quot; data-origin-height=&quot;493&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1331&quot; data-origin-height=&quot;516&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/kwFj6/btsATg054Hd/qFQX7fdfCN9hf01WYkXM40/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/kwFj6/btsATg054Hd/qFQX7fdfCN9hf01WYkXM40/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/kwFj6/btsATg054Hd/qFQX7fdfCN9hf01WYkXM40/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FkwFj6%2FbtsATg054Hd%2FqFQX7fdfCN9hf01WYkXM40%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;233&quot; data-origin-width=&quot;1331&quot; data-origin-height=&quot;516&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;***.f3d&amp;nbsp;&amp;nbsp;&amp;rarr; fusion360 확장자입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다만, 개인용 무료 버전은 동시에 편집 가능한 파일의 개수가 10개로 제한되는데요, 작업을 끝낸 파일은 Read-Only로 변경해 놓으면 사용하는데 크게 불편하지는 않습니다.&amp;nbsp;&lt;br /&gt;다시 수정하고자 한다면 Enable로 변경하면 됩니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;377&quot; data-origin-height=&quot;213&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/l8xfl/btsAUnZy9KB/XgH2ngpmAmodKgyySwion0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/l8xfl/btsAUnZy9KB/XgH2ngpmAmodKgyySwion0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/l8xfl/btsAUnZy9KB/XgH2ngpmAmodKgyySwion0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fl8xfl%2FbtsAUnZy9KB%2FXgH2ngpmAmodKgyySwion0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;377&quot; height=&quot;213&quot; data-origin-width=&quot;377&quot; data-origin-height=&quot;213&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;그리고 우클릭하여 파일을 삭제할 수도 있습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;363&quot; data-origin-height=&quot;378&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bYP9eF/btsAUJVIzCF/rHEQrKqCWzhxUnzSlhL1Xk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bYP9eF/btsAUJVIzCF/rHEQrKqCWzhxUnzSlhL1Xk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bYP9eF/btsAUJVIzCF/rHEQrKqCWzhxUnzSlhL1Xk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbYP9eF%2FbtsAUJVIzCF%2FrHEQrKqCWzhxUnzSlhL1Xk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;363&quot; height=&quot;378&quot; data-origin-width=&quot;363&quot; data-origin-height=&quot;378&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이상으로 Fusion360을 개인용 무료 버전으로 설치하고 기본 사용 설정까지 해보았습니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1126&quot; data-origin-height=&quot;832&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/tO3zN/btsASHdxb5d/r2SR9QNkNwexVjmUR3XrF0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/tO3zN/btsASHdxb5d/r2SR9QNkNwexVjmUR3XrF0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/tO3zN/btsASHdxb5d/r2SR9QNkNwexVjmUR3XrF0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FtO3zN%2FbtsASHdxb5d%2Fr2SR9QNkNwexVjmUR3XrF0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;443&quot; data-origin-width=&quot;1126&quot; data-origin-height=&quot;832&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;감사합니다. 좋은 하루 보내세요~&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>3D 프린팅</category>
      <category>3D모델링툴추천</category>
      <category>Fusion360가입</category>
      <category>Fusion360개인용설치와셋업</category>
      <category>Fusion360무료버전과유료버전비교</category>
      <category>Fusion360장점</category>
      <category>퓨전360개인용무료버전다운로드받기주소</category>
      <author>엑소더스팩토리</author>
      <guid isPermaLink="true">https://rasino.tistory.com/381</guid>
      <comments>https://rasino.tistory.com/381#entry381comment</comments>
      <pubDate>Sat, 25 Nov 2023 22:24:19 +0900</pubDate>
    </item>
    <item>
      <title>【 우분투#3 】Ubuntu 우분투에서 한글 사용하기</title>
      <link>https://rasino.tistory.com/376</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;이 번 시간에는 지난 시간에 이어 Ubuntu에 한글 입력기 설치(설정)를 통해 한글 입력이 가능하도록 해볼 텐데요, 아울러 운영체제 메뉴도 한글로 바꾸어 보도록 할게요.&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;【 학습 참고 자료 】&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1. &amp;nbsp;&lt;a href=&quot;https://rasino.tistory.com/374&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;【 우분투#1 】윈도에 VMware 가상 머신 설치하기 (Ubuntu 우분투 설치를 위한 준비)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2.&amp;nbsp; &lt;a href=&quot;https://rasino.tistory.com/375&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;【 우분투#2 】VMware 가상 머신에 Ubuntu 우분투 설치하기&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;라즈베리파이에 설치되는 라즈비안OS의 경우에는 한글 폰트부터 직접 다운로드하여 설정을 해주어야 합니다.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;우분투도 설치하면 기본적으로 한글 입력기 설정이 되어 있지 않는데요, 아래 절차에 따라 설정해 보세요.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;먼저 터미널을 열고 update(upgrade) 상황을 살펴봅니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래 명령어를 입력해보세요.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; padding: 7px 10px 5px; margin: 0 0 10px; border-left: 5px solid #00BFFF; font-size: 24px; background-color: #fafafa; color: #333;&quot; data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;~$&lt;/span&gt; sudo apt-get update&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;01.png&quot; data-origin-width=&quot;1259&quot; data-origin-height=&quot;298&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bXuU3V/btszU2bLudJ/1jasGlhx7EOHK1rF8kAB71/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bXuU3V/btszU2bLudJ/1jasGlhx7EOHK1rF8kAB71/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bXuU3V/btszU2bLudJ/1jasGlhx7EOHK1rF8kAB71/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbXuU3V%2FbtszU2bLudJ%2F1jasGlhx7EOHK1rF8kAB71%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1259&quot; height=&quot;298&quot; data-filename=&quot;01.png&quot; data-origin-width=&quot;1259&quot; data-origin-height=&quot;298&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 신규 업데이트 항목이 있다면, 업그레이드를 진행해 주세요.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; padding: 7px 10px 5px; margin: 0 0 10px; border-left: 5px solid #00BFFF; font-size: 24px; background-color: #fafafa; color: #333;&quot; data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;~$&lt;/span&gt; sudo apt-get upgrade&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;02.png&quot; data-origin-width=&quot;822&quot; data-origin-height=&quot;430&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b5iCwX/btszYKHSquI/SWrheO6I4M2RzBdqFiyKo0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b5iCwX/btszYKHSquI/SWrheO6I4M2RzBdqFiyKo0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b5iCwX/btszYKHSquI/SWrheO6I4M2RzBdqFiyKo0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb5iCwX%2FbtszYKHSquI%2FSWrheO6I4M2RzBdqFiyKo0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;822&quot; height=&quot;430&quot; data-filename=&quot;02.png&quot; data-origin-width=&quot;822&quot; data-origin-height=&quot;430&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 프로그램 표시 항목을 클릭해서 윈도에서 제어판에 해당하는 설정 아이콘을 클릭해서 열어주세요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;02-1.png&quot; data-origin-width=&quot;1218&quot; data-origin-height=&quot;606&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cVhDh3/btszZFsMW4v/qCCFxISZT95AE8KZIxgCiK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cVhDh3/btszZFsMW4v/qCCFxISZT95AE8KZIxgCiK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cVhDh3/btszZFsMW4v/qCCFxISZT95AE8KZIxgCiK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcVhDh3%2FbtszZFsMW4v%2FqCCFxISZT95AE8KZIxgCiK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1218&quot; height=&quot;606&quot; data-filename=&quot;02-1.png&quot; data-origin-width=&quot;1218&quot; data-origin-height=&quot;606&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그러면, 아래와 같은 창이 열릴 거예요.&amp;nbsp; 그러면, &quot;&lt;span style=&quot;color: #5733b1;&quot;&gt;&lt;b&gt;Resion &amp;amp; Language&lt;/b&gt;&lt;/span&gt;&quot; 항목을 클릭해서 아래 이미지에서 표시한 Language 제목 바로 아래에 보이는 &quot;&lt;span style=&quot;color: #ef5369;&quot;&gt;&lt;b&gt;Manage Installed Languages&lt;/b&gt;&lt;/span&gt;&quot;를 클릭하세요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;03.png&quot; data-origin-width=&quot;1252&quot; data-origin-height=&quot;917&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bwGZwX/btszSLPrrzt/CymEKUKIayk9LcIgKfpVj1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bwGZwX/btszSLPrrzt/CymEKUKIayk9LcIgKfpVj1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bwGZwX/btszSLPrrzt/CymEKUKIayk9LcIgKfpVj1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbwGZwX%2FbtszSLPrrzt%2FCymEKUKIayk9LcIgKfpVj1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1252&quot; height=&quot;917&quot; data-filename=&quot;03.png&quot; data-origin-width=&quot;1252&quot; data-origin-height=&quot;917&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;그럼, 아래와 같은 창이 열리는데요,&amp;nbsp; Install 버튼을 눌러주세요.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;04.png&quot; data-origin-width=&quot;1194&quot; data-origin-height=&quot;888&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/QpVWz/btszXZehGEj/Uxxil8QVBL5mFUGJE3K6Xk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/QpVWz/btszXZehGEj/Uxxil8QVBL5mFUGJE3K6Xk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/QpVWz/btszXZehGEj/Uxxil8QVBL5mFUGJE3K6Xk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FQpVWz%2FbtszXZehGEj%2FUxxil8QVBL5mFUGJE3K6Xk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1194&quot; height=&quot;888&quot; data-filename=&quot;04.png&quot; data-origin-width=&quot;1194&quot; data-origin-height=&quot;888&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 user 패스워드를 물어오는 창이 나타나고 패스워드를 입력해 주면, 아래처럼, 자동으로 Korea 관련 언어패키지 설치가 진행됩니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;05.png&quot; data-origin-width=&quot;1068&quot; data-origin-height=&quot;880&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/LsS1x/btszTyvEXWL/GI16jAUGHEbIQE3c5cG8rK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/LsS1x/btszTyvEXWL/GI16jAUGHEbIQE3c5cG8rK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/LsS1x/btszTyvEXWL/GI16jAUGHEbIQE3c5cG8rK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FLsS1x%2FbtszTyvEXWL%2FGI16jAUGHEbIQE3c5cG8rK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1068&quot; height=&quot;880&quot; data-filename=&quot;05.png&quot; data-origin-width=&quot;1068&quot; data-origin-height=&quot;880&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 아래처럼 창이 뜨면, 화살표로 표시한 Install/Remove Languages... 항목을 클릭해서 보면,&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;05-1.png&quot; data-origin-width=&quot;1065&quot; data-origin-height=&quot;674&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bYN5iM/btszXlPC4rR/9QDl1r2JZbukORKKsHRKoK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bYN5iM/btszXlPC4rR/9QDl1r2JZbukORKKsHRKoK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bYN5iM/btszXlPC4rR/9QDl1r2JZbukORKKsHRKoK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbYN5iM%2FbtszXlPC4rR%2F9QDl1r2JZbukORKKsHRKoK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1065&quot; height=&quot;674&quot; data-filename=&quot;05-1.png&quot; data-origin-width=&quot;1065&quot; data-origin-height=&quot;674&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래처럼 Korean 한국어가 설치되어 있는 것을 볼 수 있습니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;06.png&quot; data-origin-width=&quot;1036&quot; data-origin-height=&quot;712&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/7Qz5u/btszQDD5Pg8/pTdejkqL66ES783nQRbqEK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/7Qz5u/btszQDD5Pg8/pTdejkqL66ES783nQRbqEK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/7Qz5u/btszQDD5Pg8/pTdejkqL66ES783nQRbqEK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F7Qz5u%2FbtszQDD5Pg8%2FpTdejkqL66ES783nQRbqEK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1036&quot; height=&quot;712&quot; data-filename=&quot;06.png&quot; data-origin-width=&quot;1036&quot; data-origin-height=&quot;712&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 아래 ①번을 클릭하여&amp;nbsp; 열리는 팝업창에서 아래 ②번을 클릭하고 우분투 재시작(재부팅) 버튼을 누르게 되면 시스템 메뉴를 한글화(폰트 변경) 하게 됩니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;07.png&quot; data-origin-width=&quot;1336&quot; data-origin-height=&quot;909&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/S7388/btszZFl1n36/lITv5LE4KcctBfkWBrVBrk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/S7388/btszZFl1n36/lITv5LE4KcctBfkWBrVBrk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/S7388/btszZFl1n36/lITv5LE4KcctBfkWBrVBrk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FS7388%2FbtszZFl1n36%2FlITv5LE4KcctBfkWBrVBrk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1336&quot; height=&quot;909&quot; data-filename=&quot;07.png&quot; data-origin-width=&quot;1336&quot; data-origin-height=&quot;909&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 중요!!!&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;시스템 재부팅 후, 아래와 같은 창이 떴을 때,&amp;nbsp; 반드시 예전 이름 유지(K)를 선택해 주세요.&amp;nbsp;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;폴더 이름이 한글로 되어 있을 경우 그 아래에 설치되거나 실행되는 프로그램의 경우 제대로 실행되지 않거나 문제가 생기는 경우가 종종 발생하게 있기 때문입니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;08.png&quot; data-origin-width=&quot;1021&quot; data-origin-height=&quot;717&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bjMLgB/btszUz1UtLL/kk2K00gS54C1lVOb16lW9k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bjMLgB/btszUz1UtLL/kk2K00gS54C1lVOb16lW9k/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bjMLgB/btszUz1UtLL/kk2K00gS54C1lVOb16lW9k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbjMLgB%2FbtszUz1UtLL%2Fkk2K00gS54C1lVOb16lW9k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1021&quot; height=&quot;717&quot; data-filename=&quot;08.png&quot; data-origin-width=&quot;1021&quot; data-origin-height=&quot;717&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래 이미지처럼 창이 열리면 ①번 지역형식 탭을 클릭하고 &amp;rarr; ② 한국어가 화면에 뜨도록 제일 상단으로 끌어다 놓아주세요. ③ 그리고 시스템 전체 적용 버튼을 클릭해 주세요(경우에 따라 재부팅하는 경우가 있어요)&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;09.png&quot; data-origin-width=&quot;1193&quot; data-origin-height=&quot;880&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/Mkf1O/btszU2iASZ4/TQTUt5Glj9qgtFKCslI8i1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Mkf1O/btszU2iASZ4/TQTUt5Glj9qgtFKCslI8i1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Mkf1O/btszU2iASZ4/TQTUt5Glj9qgtFKCslI8i1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FMkf1O%2FbtszU2iASZ4%2FTQTUt5Glj9qgtFKCslI8i1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1193&quot; height=&quot;880&quot; data-filename=&quot;09.png&quot; data-origin-width=&quot;1193&quot; data-origin-height=&quot;880&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;(아래) 이제 한글화(한글 폰트)가 적용되어 시스템의 기본적인 메뉴들이 아래 이미지처럼 한글로 바뀌게 됩니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;10.png&quot; data-origin-width=&quot;1150&quot; data-origin-height=&quot;953&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dbtILz/btszXDWRY0B/cf6KhwwVMDUR3766jU5LsK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dbtILz/btszXDWRY0B/cf6KhwwVMDUR3766jU5LsK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dbtILz/btszXDWRY0B/cf6KhwwVMDUR3766jU5LsK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdbtILz%2FbtszXDWRY0B%2Fcf6KhwwVMDUR3766jU5LsK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1150&quot; height=&quot;953&quot; data-filename=&quot;10.png&quot; data-origin-width=&quot;1150&quot; data-origin-height=&quot;953&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;하지만, 터미널창을 열고 한글을 입력해 보아도 아직 한글 입력에 대해서는 적용되지 않았다는 것을 알 수 있습니다. (아래)&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;11.png&quot; data-origin-width=&quot;1769&quot; data-origin-height=&quot;891&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ONcFK/btszUoM559P/6SoN4cwcVEFjNJYJQqJnoK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ONcFK/btszUoM559P/6SoN4cwcVEFjNJYJQqJnoK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ONcFK/btszUoM559P/6SoN4cwcVEFjNJYJQqJnoK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FONcFK%2FbtszUoM559P%2F6SoN4cwcVEFjNJYJQqJnoK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1769&quot; height=&quot;891&quot; data-filename=&quot;11.png&quot; data-origin-width=&quot;1769&quot; data-origin-height=&quot;891&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그럼, 이제 아래 이미지처럼 키보드 항목을 클릭하고 입력소스 부분(+)을 클릭하여 입력소스를 한글로 변경해야 합니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;12.png&quot; data-origin-width=&quot;1537&quot; data-origin-height=&quot;957&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/lB2ou/btszSH7iNOQ/i01sIFeaZWzMByOujoRKek/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/lB2ou/btszSH7iNOQ/i01sIFeaZWzMByOujoRKek/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/lB2ou/btszSH7iNOQ/i01sIFeaZWzMByOujoRKek/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FlB2ou%2FbtszSH7iNOQ%2Fi01sIFeaZWzMByOujoRKek%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1537&quot; height=&quot;957&quot; data-filename=&quot;12.png&quot; data-origin-width=&quot;1537&quot; data-origin-height=&quot;957&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 아래처럼 창이 열리면 &lt;span style=&quot;color: #ffffff; background-color: #f89009;&quot;&gt;한국어(Hangul)&lt;/span&gt;를 선택하고 &lt;span style=&quot;color: #ffffff; background-color: #009a87;&quot;&gt;&lt;b&gt;추가(A)&lt;/b&gt; &lt;/span&gt;버튼을 클릭해 주세요.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;13.png&quot; data-origin-width=&quot;1022&quot; data-origin-height=&quot;869&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/UoGgF/btszXp5yfrn/7Dadg73kW8oxuK4Ky4EQ30/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/UoGgF/btszXp5yfrn/7Dadg73kW8oxuK4Ky4EQ30/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/UoGgF/btszXp5yfrn/7Dadg73kW8oxuK4Ky4EQ30/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FUoGgF%2FbtszXp5yfrn%2F7Dadg73kW8oxuK4Ky4EQ30%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1022&quot; height=&quot;869&quot; data-filename=&quot;13.png&quot; data-origin-width=&quot;1022&quot; data-origin-height=&quot;869&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 아래 이미지를 참고해서,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;① 한국어(Hangul)만 남기고 영어는 삭제해 주세요.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;② 점 세 개 부분을 눌러 나타나는 팝업 메뉴에서&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;③ &quot;기본 설정&quot; 항목을 클릭해 보세요.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;④&amp;nbsp; 한영 전환키를 별도로 추가해 주거나 수정이 가능합니다. (여러 개의 단축키 등록 가능)&lt;br /&gt;⑤&amp;nbsp; 한글 모드로 시작을 선택해 주세요.&amp;nbsp;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;⑥&amp;nbsp; 마지막으로 &quot;확인&quot; 버튼을 클릭 해 주면 설정이 완료됩니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;14.png&quot; data-origin-width=&quot;1202&quot; data-origin-height=&quot;880&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/2vCWC/btszU3BK7BT/1RNSPKxj4IP7T08KISrHW0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/2vCWC/btszU3BK7BT/1RNSPKxj4IP7T08KISrHW0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/2vCWC/btszU3BK7BT/1RNSPKxj4IP7T08KISrHW0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F2vCWC%2FbtszU3BK7BT%2F1RNSPKxj4IP7T08KISrHW0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1202&quot; height=&quot;880&quot; data-filename=&quot;14.png&quot; data-origin-width=&quot;1202&quot; data-origin-height=&quot;880&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 우측상단에 있는 En &amp;rarr; 한&amp;nbsp; 으로 바꾸면,&amp;nbsp; 터미널창에서 설정해 놓은 단축키 'Shift+space&quot;로 한국어(Hangul)로 바꾸어서 ,&amp;nbsp; 글자를 입력해 보면 한글입력이 잘 되는 것을 볼 수 있습니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;15-1.png&quot; data-origin-width=&quot;180&quot; data-origin-height=&quot;137&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bZEHUo/btszX1iSsMs/pjrORR1nUAhUYYURSWM3qK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bZEHUo/btszX1iSsMs/pjrORR1nUAhUYYURSWM3qK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bZEHUo/btszX1iSsMs/pjrORR1nUAhUYYURSWM3qK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbZEHUo%2FbtszX1iSsMs%2FpjrORR1nUAhUYYURSWM3qK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;180&quot; height=&quot;137&quot; data-filename=&quot;15-1.png&quot; data-origin-width=&quot;180&quot; data-origin-height=&quot;137&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;16.png&quot; data-origin-width=&quot;845&quot; data-origin-height=&quot;742&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dJuegB/btszQB0yNyZ/AR5bs612Uwk4Vu6R9LOIk0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dJuegB/btszQB0yNyZ/AR5bs612Uwk4Vu6R9LOIk0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dJuegB/btszQB0yNyZ/AR5bs612Uwk4Vu6R9LOIk0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdJuegB%2FbtszQB0yNyZ%2FAR5bs612Uwk4Vu6R9LOIk0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;845&quot; height=&quot;742&quot; data-filename=&quot;16.png&quot; data-origin-width=&quot;845&quot; data-origin-height=&quot;742&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그럼, 여기까지 하고 마치겠습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;감사합니다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;[ 우분투 설치 &amp;amp; 한글 설정 동영상으로 확인하기 ]&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure data-ke-type=&quot;video&quot; data-ke-style=&quot;alignCenter&quot; data-video-host=&quot;youtube&quot; data-video-url=&quot;https://www.youtube.com/watch?v=oBfqiUhbsRw&quot; data-video-thumbnail=&quot;https://scrap.kakaocdn.net/dn/bfkmV3/hyUyltVHS2/03OUldMYpiIYvC5SKZOVa1/img.jpg?width=1280&amp;amp;height=720&amp;amp;face=0_0_1280_720&quot; data-video-width=&quot;860&quot; data-video-height=&quot;484&quot; data-video-origin-width=&quot;860&quot; data-video-origin-height=&quot;484&quot; data-ke-mobilestyle=&quot;widthContent&quot; data-video-title=&quot;【 우분투#2 】윈도에 VMware로 Ubuntu 우분투 설치 하기 (한글 사용 설정과 크롬 브라우저 설치)&quot; data-original-url=&quot;&quot;&gt;&lt;iframe src=&quot;https://www.youtube.com/embed/oBfqiUhbsRw&quot; width=&quot;860&quot; height=&quot;484&quot; frameborder=&quot;&quot; allowfullscreen=&quot;true&quot;&gt;&lt;/iframe&gt;
&lt;figcaption style=&quot;display: none;&quot;&gt;&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>라즈베리파이/리눅스(Linux)</category>
      <category>ubuntu 한글 입력 설정하기</category>
      <category>리눅스(우분투) Ubuntu 한글 폰트 입력하기</category>
      <category>우분투 한글 (폰트) 설치 입력</category>
      <category>우분투에서 한글 입력 한글 메뉴로 변경하기</category>
      <author>엑소더스팩토리</author>
      <guid isPermaLink="true">https://rasino.tistory.com/376</guid>
      <comments>https://rasino.tistory.com/376#entry376comment</comments>
      <pubDate>Tue, 7 Nov 2023 21:00:20 +0900</pubDate>
    </item>
    <item>
      <title>【 아두이노Nano33#4】NANO33IoT BLE 저전력 블루투스 사용설명서 #3 (App Inventor앱 BLE통신 도어락제어)</title>
      <link>https://rasino.tistory.com/373</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Nano33ioT-BLE-기초-3편.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1080&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/Urvuk/btszwcGqGTc/M8jQdrJeafyLSn9Gz5XHvK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Urvuk/btszwcGqGTc/M8jQdrJeafyLSn9Gz5XHvK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Urvuk/btszwcGqGTc/M8jQdrJeafyLSn9Gz5XHvK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FUrvuk%2FbtszwcGqGTc%2FM8jQdrJeafyLSn9Gz5XHvK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1920&quot; height=&quot;1080&quot; data-filename=&quot;Nano33ioT-BLE-기초-3편.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1080&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;3회에 걸쳐 Nano33 ioT 보드의 BLE 저전력 블루투스를 사용하는 다양한 방법에 대해 다루고 있습니다.&amp;nbsp; 아두이노 나노33 보드시리즈는 콤팩트하면서 사용법이 아두이노 우노(나노)와 거의 동일하여 쉽게 접근가능하고 여기에 더해 WiFi기능과 저전력 블루투스 기능을 활용할 수 있는 매우 장점이 큰 보드입니다. 다만 유사한 기능을 제공하는 ESP32 보드에 비해 단가가 조금 나가는 단점이 있지만 아두이노 정품 보드의 정통성?을 이어받아 안정적이고 불량률이 거의 없다는 점이 장점인 보드입니다.&amp;nbsp; 기본적인 스펙과 사용법은 아래, 이전 게시글을 참고하시면 상세하게 파악할 수 있으니 참고해 보세요.&lt;/p&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;【 Nano33 IoT 선수학습 】&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;1.&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;a style=&quot;color: #0070d1;&quot; href=&quot;https://rasino.tistory.com/301&quot;&gt;【 아두이노Nano33#1】 NANO 33 IoT 처음사용 설명서&lt;/a&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;2.&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;a style=&quot;color: #0070d1;&quot; href=&quot;https://rasino.tistory.com/302&quot;&gt;【 아두이노Nano33#1-2】 NANO 33 IoT 처음사용 설명서 #1-2 (LSM6DS3 센서 테스트)&lt;/a&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;(자이로센서 등등)&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;3.&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;a style=&quot;color: #0070d1;&quot; href=&quot;https://rasino.tistory.com/310&quot;&gt;【 아두이노Nano33#2】 NANO 33 IoT 처음사용 설명서 2편 WiFi 활용하기&lt;/a&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;4.&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;a style=&quot;color: #0070d1;&quot; href=&quot;https://rasino.tistory.com/369&quot;&gt;【 아두이노Nano33#3】 NANO 33 IoT BLE 저전력 블루투스 사용설명서 #1 (BLE로 LED &amp;amp; 서보모터 제어하기)&lt;/a&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;5. &lt;a href=&quot;https://rasino.tistory.com/372&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;【 아두이노Nano33#4】 NANO 33 IoT BLE 저전력 블루투스 사용설명서 #2 (BLE로 도어락 솔레노이드 제어하기)&lt;/a&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;2편에서는 BLE를 이용해서 릴레이에 연결된 솔레노이드를 제어하여 도어록을 열고 닫는 실습을 진행했습니다.&amp;nbsp; &lt;/b&gt;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;이번 시리즈 마지막 3편에서는 1~2편을 통해 구성된 하드웨어들을 스마트폰에서 제공되는 BLE 통신으로 제어해 보려고 하는데요, 앱인벤터(App Inventor)를 이용해서 아주 쉽게 앱을 만들어 제어해 보겠습니다.&amp;nbsp; 우선 이번 실습을 따라 해보고 만약 앱인벤터 기초 부분의 학습이 필요하다고 생각된다면 아래 게시물을 참고해 보세요. 응용 예시를 따라 하다 보면, &lt;b&gt;아주 쉽게&lt;/b&gt; 적응이 될거예요.&amp;nbsp;&lt;br /&gt;&lt;br /&gt;[ &lt;span style=&quot;color: #009a87;&quot;&gt;앱 인벤터 기초과정&lt;/span&gt; ]&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;1.&lt;/b&gt;&amp;nbsp; &amp;nbsp;&lt;a href=&quot;https://rasino.tistory.com/268&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;【 앱인벤터기초#1】 MIT-구글의 App-인벤터 란? ( App-Inventor!)&lt;/a&gt;&lt;/p&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;2.&amp;nbsp; &lt;/b&gt;&lt;a href=&quot;https://rasino.tistory.com/269&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;&amp;nbsp;【 앱인벤터기초 #02】 앱인벤터 시작하기(설치&amp;amp;셋업) ( App-Inventor!)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;3.&amp;nbsp;&amp;nbsp;&lt;/b&gt; &lt;a href=&quot;https://rasino.tistory.com/271&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;【 앱인벤터기초 #03】 앱인벤터 따라 하기 실습#1(메뉴화면소개 및 사용법)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;4.&amp;nbsp; &amp;nbsp;&lt;/b&gt;&lt;a href=&quot;https://rasino.tistory.com/272&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;【 앱인벤터기초 #04】 앱인벤터 1도 모르고 따라하기 실습#2(화면이동 예제 만들기)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;5.&amp;nbsp; &amp;nbsp;&lt;/b&gt;&lt;a href=&quot;https://rasino.tistory.com/276&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;【 앱인벤터기초 #05】 앱인벤터 1도 모르고 따라 하기#3(날짜/시간/체크박스 실습)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;6.&amp;nbsp; &amp;nbsp;&lt;/b&gt;&lt;a href=&quot;https://rasino.tistory.com/288&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;【 앱인벤터기초 #06】 앱인벤터 1도 모르고 따라 하기 영상 실습#4 (사진/글자표시/SNS보내기 앱上)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;7.&lt;/b&gt; &amp;nbsp; &lt;a href=&quot;https://rasino.tistory.com/290&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;【 앱인벤터기초 #07】 앱인벤터 1도 모르고 따라 하기 영상 실습#5 (사진/글자표시/SNS보내기 앱下-완결!)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;【 학습 목표 】&lt;/b&gt;&lt;/h3&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #5733b1;&quot;&gt;&lt;b&gt;&amp;lt;1편&amp;gt;&amp;nbsp; Nano33 기본 환경설정과 BLE 페어링 후 스위치로 LED On/Off 제어하기&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; ① BLE(UUID)에 대한 이해와 nano33 BLE 사용을 위한 기본 환경 설정(보드&amp;amp;라이브러리 설치)&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; ② Nano33 BLE&amp;nbsp; 스캔과 페어링&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; ③ Nano33 스위치회로와 LED회로 제작 후 블루투스(BLE)로 제어하기&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; ④ 서보모터 스위치로 제어하기&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #5733b1;&quot;&gt;&lt;b&gt;&amp;lt;2 편&amp;gt; 블루투스로 도어(Door 문)&amp;nbsp; 잠금장치(솔레노이드) 열고 닫기&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; ① 주요 부품 소개 ( 솔레노이드 / 솔레노이드 잠금걸쇠 / 릴레이 )&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; ② 도어 미니어처 제작 (3D 모델링과 3D 프린팅)&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; ③ 블루투스(BLE)로 도어 열고 닫기&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;h4 style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;&amp;lt;3 편&amp;gt; 앱 인벤터(App Inventor) 만들고 스마트폰으로 도어 열고 닫기&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; ① nRF Connect 앱 활용해 보기 (LED 기본 제어)&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; ② 블루투스 스캔 및 연결과 같은 기본 앱 기능 만들고 LED 제어해 보기&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; ③&amp;nbsp; &lt;/b&gt;&lt;b&gt;LED 제어와 서보 및 Door 제어 결합된 앱 만들기 (&lt;/b&gt;&lt;b&gt;앱 안정성 향상 기능 넣기)&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/b&gt;&lt;/h4&gt;
&lt;h2 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;color: #5733b1;&quot;&gt;&lt;b&gt;&amp;lt;3편&amp;gt;&amp;nbsp; App Inventor 앱으로 BLE통신하여 &lt;/b&gt;&lt;/span&gt;&lt;span style=&quot;color: #5733b1;&quot;&gt;&lt;b&gt;Nano33 ioT보드에 연결된 &lt;/b&gt;&lt;/span&gt;&lt;span style=&quot;color: #5733b1;&quot;&gt;&lt;b&gt;도어록과 서보모터 LED 제어하기!&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h4 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size20&quot;&gt;【 실습 준비 】&lt;/h4&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;이번 실습을 위해 필요한 준비물과 회로는 위 링크에도 게시한 아래 &amp;lt;1편&amp;gt;과 &amp;lt;2편&amp;gt; 게시물을 참고해 주세요.&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;1.&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;a style=&quot;color: #0070d1;&quot; href=&quot;https://rasino.tistory.com/369&quot;&gt;【 아두이노Nano33#3】 NANO 33 IoT BLE 저전력 블루투스 사용설명서 #1&amp;nbsp;&lt;/a&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;2.&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;a style=&quot;color: #0070d1;&quot; href=&quot;https://rasino.tistory.com/372&quot;&gt;【 아두이노Nano33#4】 NANO 33 IoT BLE 저전력 블루투스 사용설명서 #2&amp;nbsp;&lt;/a&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size20&quot;&gt;【 작품 준비 】&lt;/h4&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;실습을 위한 회로들을 아래처럼 아크릴 판(투명 아크릴 독서대 활용)을 이용해서 정리해 보았는데요, 특히 5V 전원이 다중으로 들어가기 때문에 5V 5A 용량의 미니 파워서플라이를 이용해서 USB 다중 전원 잭을 만들고 공급해 주었습니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Pic1.jpg&quot; data-origin-width=&quot;4000&quot; data-origin-height=&quot;2252&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/byXDz8/btszwejXCAC/FIOOBBVBKU0VlS8HRkNsXk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/byXDz8/btszwejXCAC/FIOOBBVBKU0VlS8HRkNsXk/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/byXDz8/btszwejXCAC/FIOOBBVBKU0VlS8HRkNsXk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbyXDz8%2FbtszwejXCAC%2FFIOOBBVBKU0VlS8HRkNsXk%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;4000&quot; height=&quot;2252&quot; data-filename=&quot;Pic1.jpg&quot; data-origin-width=&quot;4000&quot; data-origin-height=&quot;2252&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;pic2.jpg&quot; data-origin-width=&quot;4000&quot; data-origin-height=&quot;2252&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b3C7NW/btszxrb5Dc7/DPpckZlUJgVWH3f1khmcX0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b3C7NW/btszxrb5Dc7/DPpckZlUJgVWH3f1khmcX0/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b3C7NW/btszxrb5Dc7/DPpckZlUJgVWH3f1khmcX0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb3C7NW%2Fbtszxrb5Dc7%2FDPpckZlUJgVWH3f1khmcX0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;4000&quot; height=&quot;2252&quot; data-filename=&quot;pic2.jpg&quot; data-origin-width=&quot;4000&quot; data-origin-height=&quot;2252&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size20&quot;&gt;【 소스 코드 】&lt;/h4&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;소스코드는 이전 게시글을 참고해도 됩니다.&lt;br /&gt;① 기본적으로 블루투스는&amp;nbsp; 1대 1로 연결되는 기기이기 때문에,&amp;nbsp; 버튼회로(중앙회로) + LED 회로(주변회로) , 등 개별로 연결되도록 BLE의 로컬 네임을(SetLocalName) ,&amp;nbsp; &amp;nbsp;각각 &quot;LED&quot; , &quot;SERVO&quot;&amp;nbsp; ,&amp;nbsp; &quot;DOOR&quot;로 하여 1대 1 통신하도록 하였는데요,&amp;nbsp; 그럼 이렇게 번갈아가며 1대1 연결하고 통신 시연하려면, 버튼회로로 사용되는 중앙회로에 연결시키려는 기기이름으로 계속 바꾸어가며 업로드를 해야 하니 번거로워집니다.&amp;nbsp; 따라서, 이 실습에서는 로컬 네임을&amp;nbsp; &quot;MULTI&quot;로 통일하여 주변기기의 전원을 ON / OFF 하여 간편히 페어링 되도록 하였다는 점 참고해 주세요.&amp;nbsp;&lt;br /&gt;&lt;br /&gt;(&quot;MULTI&quot;로 정리한 소스 코드 한 번에 다운로드 받기)&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;fileblock&quot; data-ke-align=&quot;alignCenter&quot;&gt;&lt;a href=&quot;https://blog.kakaocdn.net/dn/qeBij/btszw5tuZQK/m1cRtYLHXp1mrHZ0wK1ps0/05.%20MultiCode.zip?attach=1&amp;amp;knm=tfile.zip&quot; class=&quot;&quot;&gt;
    &lt;div class=&quot;image&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;desc&quot;&gt;&lt;div class=&quot;filename&quot;&gt;&lt;span class=&quot;name&quot;&gt;05. MultiCode.zip&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;size&quot;&gt;0.01MB&lt;/div&gt;
&lt;/div&gt;
  &lt;/a&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;② 중앙회로가 스마트폰이 되면 앱상에서 버튼별로 로컬네임을 줄 수 있기 때문에 각 회로별로 SetLocalName을 각각 &quot;LED&quot; , &quot;SERVO&quot;&amp;nbsp; ,&amp;nbsp; &quot;DOOR&quot; 주어 구분할 수 있고 그렇게 해야 원하는 기기를 선택해서 페어링 할 수 있습니다.&amp;nbsp; &amp;nbsp;따라서 이렇게 네이밍이 된 코드는 아래에 압축하여 제공해 드립니다.&amp;nbsp;&lt;br /&gt;&lt;br /&gt;( &quot;LED&quot; , &quot;SERVO&quot;&amp;nbsp; ,&amp;nbsp; &quot;DOOR&quot;로 각각 네이밍 된 소스 코드 한 번에 다운르드 받기)&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;fileblock&quot; data-ke-align=&quot;alignCenter&quot;&gt;&lt;a href=&quot;https://blog.kakaocdn.net/dn/bdpRSR/btszyIxMWzh/m86U475NQx6RbWuNJCCKok/04.%20App_Code.zip?attach=1&amp;amp;knm=tfile.zip&quot; class=&quot;&quot;&gt;
    &lt;div class=&quot;image&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;desc&quot;&gt;&lt;div class=&quot;filename&quot;&gt;&lt;span class=&quot;name&quot;&gt;04. App_Code.zip&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;size&quot;&gt;0.01MB&lt;/div&gt;
&lt;/div&gt;
  &lt;/a&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size23&quot;&gt;【 이번 실습 프리뷰 】&lt;/h3&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;br /&gt;이번 실습에서 1편과 2편을 통해 아래와 같이 중앙회로를 만들고 주변회로를 만들어 1대 1 통신을 실습했는데요,&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;01.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1080&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/DZbEZ/btszKxciUGd/wqyJxia4i0bopCd8fPHCKk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/DZbEZ/btszKxciUGd/wqyJxia4i0bopCd8fPHCKk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/DZbEZ/btszKxciUGd/wqyJxia4i0bopCd8fPHCKk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FDZbEZ%2FbtszKxciUGd%2FwqyJxia4i0bopCd8fPHCKk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1920&quot; height=&quot;1080&quot; data-filename=&quot;01.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1080&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;이번 3편 실습에서는 아래처럼 스마트 폰의 BLE기능을 이용해서 각각의 회로를 제어해 보겠습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;02.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1080&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/wkVCn/btszONSgmBB/0ucf5KobphjzRUYyxkUpZK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/wkVCn/btszONSgmBB/0ucf5KobphjzRUYyxkUpZK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/wkVCn/btszONSgmBB/0ucf5KobphjzRUYyxkUpZK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FwkVCn%2FbtszONSgmBB%2F0ucf5KobphjzRUYyxkUpZK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1920&quot; height=&quot;1080&quot; data-filename=&quot;02.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1080&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;이번 실습의 결과물은 아래와 같습니다.&amp;nbsp; 최종 결과물 앱인벤터 코드가 어렵지 않도록 기본 핵심기능만 담은 Basic앱을 먼저 제작해 보고, 서보, 릴레이 회로 모두 제어하면서 좀 더 향상된 기능의 Advanced앱도 제작해 볼게요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;03.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1080&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/brIzzl/btszIZf4iIb/nko1ZKLFTG2grYT5EfQPM0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/brIzzl/btszIZf4iIb/nko1ZKLFTG2grYT5EfQPM0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/brIzzl/btszIZf4iIb/nko1ZKLFTG2grYT5EfQPM0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbrIzzl%2FbtszIZf4iIb%2Fnko1ZKLFTG2grYT5EfQPM0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1920&quot; height=&quot;1080&quot; data-filename=&quot;03.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1080&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;h4 style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size20&quot;&gt;&amp;nbsp;&lt;/h4&gt;
&lt;h4 style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size20&quot;&gt;&amp;nbsp;&lt;/h4&gt;
&lt;h3 style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;【&amp;nbsp; &amp;nbsp;① nRF Connect 앱 활용해 보기 (LED / Servo / Relay기본 제어)&amp;nbsp; &amp;nbsp;】&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;먼저, 앱인벤터로 앱을 만들어 제어하기 전에, 블루투스(BLE)로 통신하여 간단한 신호를 송수신할 수 있는 기존 통신앱을 다운로드하여 제어가 되는지? 확인해 볼게요.&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;앱이름은 nRF Connect 앱입니다.&amp;nbsp; 앱스토어에서 검색 후 설치해 보세요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;01-lbl.png&quot; data-origin-width=&quot;1009&quot; data-origin-height=&quot;751&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dDj77S/btszyPqgJR5/RYjS25U1U9Kt3yIJjbKSE0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dDj77S/btszyPqgJR5/RYjS25U1U9Kt3yIJjbKSE0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dDj77S/btszyPqgJR5/RYjS25U1U9Kt3yIJjbKSE0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdDj77S%2FbtszyPqgJR5%2FRYjS25U1U9Kt3yIJjbKSE0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1009&quot; height=&quot;751&quot; data-filename=&quot;01-lbl.png&quot; data-origin-width=&quot;1009&quot; data-origin-height=&quot;751&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;앱을 설치하고 실행시켜 주세요.&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;앱을 실행하면 자동으로 주변의 블루투스 장치를 스캐닝합니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;04.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1080&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bW7MUI/btszLr97QO0/11vhKkDNZuPoa3gxGfHKg1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bW7MUI/btszLr97QO0/11vhKkDNZuPoa3gxGfHKg1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bW7MUI/btszLr97QO0/11vhKkDNZuPoa3gxGfHKg1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbW7MUI%2FbtszLr97QO0%2F11vhKkDNZuPoa3gxGfHKg1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1920&quot; height=&quot;1080&quot; data-filename=&quot;04.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1080&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;현재&amp;nbsp;LocalName이&amp;nbsp;&amp;ldquo;LED&amp;rdquo;로&amp;nbsp;되어&amp;nbsp;있는&amp;nbsp;Nano33 보드가&amp;nbsp;스캔되었고 (현재,&amp;nbsp;A.&amp;nbsp;LED기기만&amp;nbsp;ON&amp;nbsp;되어&amp;nbsp;있음)&amp;nbsp;&lt;br /&gt;&amp;ldquo;CONNECT&amp;rdquo; 버튼을 눌러 주세요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;05.png&quot; data-origin-width=&quot;412&quot; data-origin-height=&quot;358&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bSqqSI/btszKEbauhi/7rj0ungCRiXHUhA8wsGmT0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bSqqSI/btszKEbauhi/7rj0ungCRiXHUhA8wsGmT0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bSqqSI/btszKEbauhi/7rj0ungCRiXHUhA8wsGmT0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbSqqSI%2FbtszKEbauhi%2F7rj0ungCRiXHUhA8wsGmT0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;412&quot; height=&quot;358&quot; data-filename=&quot;05.png&quot; data-origin-width=&quot;412&quot; data-origin-height=&quot;358&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;맨 아래 &amp;ldquo;Unknown Service&amp;rdquo;를 터치하고,&amp;nbsp;&lt;span&gt;&amp;nbsp;&lt;/span&gt;송신 화살표 &amp;ldquo;&amp;uarr;&amp;rdquo;를 터치해 주세요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;06.png&quot; data-origin-width=&quot;481&quot; data-origin-height=&quot;525&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/Lueep/btszKHsiB3S/A0L8byBWoKLA2w4NVy3oJ1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Lueep/btszKHsiB3S/A0L8byBWoKLA2w4NVy3oJ1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Lueep/btszKHsiB3S/A0L8byBWoKLA2w4NVy3oJ1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FLueep%2FbtszKHsiB3S%2FA0L8byBWoKLA2w4NVy3oJ1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;481&quot; height=&quot;525&quot; data-filename=&quot;06.png&quot; data-origin-width=&quot;481&quot; data-origin-height=&quot;525&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;0x____ 항목에 &amp;ldquo;01&amp;rdquo;을 입력하고 SEND 버튼을 터치하세요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;07.png&quot; data-origin-width=&quot;433&quot; data-origin-height=&quot;604&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/tVdZw/btszH60CQj0/rCosjvcoZrpCMBRGN8M2ok/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/tVdZw/btszH60CQj0/rCosjvcoZrpCMBRGN8M2ok/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/tVdZw/btszH60CQj0/rCosjvcoZrpCMBRGN8M2ok/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FtVdZw%2FbtszH60CQj0%2FrCosjvcoZrpCMBRGN8M2ok%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;433&quot; height=&quot;604&quot; data-filename=&quot;07.png&quot; data-origin-width=&quot;433&quot; data-origin-height=&quot;604&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;그럼 연결된 LED회로로 byte값 &amp;lsquo;1&amp;rsquo;이 전송되어 LED가 켜지게 됩니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;08.png&quot; data-origin-width=&quot;980&quot; data-origin-height=&quot;843&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/d9hzYx/btszIZUNCmz/Rij39OU7eDmYKeYgaNcsg1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/d9hzYx/btszIZUNCmz/Rij39OU7eDmYKeYgaNcsg1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/d9hzYx/btszIZUNCmz/Rij39OU7eDmYKeYgaNcsg1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fd9hzYx%2FbtszIZUNCmz%2FRij39OU7eDmYKeYgaNcsg1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;980&quot; height=&quot;843&quot; data-filename=&quot;08.png&quot; data-origin-width=&quot;980&quot; data-origin-height=&quot;843&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;다시, 송신 화살표&amp;ldquo;&amp;uarr;&amp;rdquo;를 터치하고 0x00을 입력하면 byte값 &amp;lsquo;0&amp;rsquo;이 전송되어 LED가 꺼지게 됩니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;09.png&quot; data-origin-width=&quot;964&quot; data-origin-height=&quot;849&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cnSclV/btszLuTsDW9/kumUrusGwQqR0AeJUtI7Y1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cnSclV/btszLuTsDW9/kumUrusGwQqR0AeJUtI7Y1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cnSclV/btszLuTsDW9/kumUrusGwQqR0AeJUtI7Y1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcnSclV%2FbtszLuTsDW9%2FkumUrusGwQqR0AeJUtI7Y1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;964&quot; height=&quot;849&quot; data-filename=&quot;09.png&quot; data-origin-width=&quot;964&quot; data-origin-height=&quot;849&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;마찬가지로 서보모터를 켜고 동일하게 전송하면 제어가 잘 되는 것을 볼 수 있습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;11.png&quot; data-origin-width=&quot;1132&quot; data-origin-height=&quot;922&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cqn4fb/btszM3nBUy7/A3isJTc1Fmix8DzCA0S5sK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cqn4fb/btszM3nBUy7/A3isJTc1Fmix8DzCA0S5sK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cqn4fb/btszM3nBUy7/A3isJTc1Fmix8DzCA0S5sK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fcqn4fb%2FbtszM3nBUy7%2FA3isJTc1Fmix8DzCA0S5sK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1132&quot; height=&quot;922&quot; data-filename=&quot;11.png&quot; data-origin-width=&quot;1132&quot; data-origin-height=&quot;922&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;그리고 릴레이회로도 보조 전원을 연결하고 동일하게 전송하면 제어가 잘 되는 것을 볼 수 있습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;12.png&quot; data-origin-width=&quot;1317&quot; data-origin-height=&quot;886&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/LjEfJ/btszI00vOwT/RxaxKmTnc9Thd5kLfVcXhK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/LjEfJ/btszI00vOwT/RxaxKmTnc9Thd5kLfVcXhK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/LjEfJ/btszI00vOwT/RxaxKmTnc9Thd5kLfVcXhK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FLjEfJ%2FbtszI00vOwT%2FRxaxKmTnc9Thd5kLfVcXhK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1317&quot; height=&quot;886&quot; data-filename=&quot;12.png&quot; data-origin-width=&quot;1317&quot; data-origin-height=&quot;886&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size23&quot;&gt;【 Basic 제어 앱 만들기 】&lt;/h3&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;이제 앱인벤터(App Inventor)를 이용하여 BLE 통신을 위한 기본앱을 만들어 볼게요.&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;App Inventor 기초와 응용을 다룬 7편의 영상 시리즈가 있는데요,&amp;nbsp; 이 게시글 위에 관련 링크가 있으니 앱인벤터 기초가 필요하다면 참고해 보세요~&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;13.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1080&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/shTXn/btszLntl4lD/Qc3CZ6VReiSKMQO0wKA370/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/shTXn/btszLntl4lD/Qc3CZ6VReiSKMQO0wKA370/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/shTXn/btszLntl4lD/Qc3CZ6VReiSKMQO0wKA370/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FshTXn%2FbtszLntl4lD%2FQc3CZ6VReiSKMQO0wKA370%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1920&quot; height=&quot;1080&quot; data-filename=&quot;13.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1080&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;우선, 1차적으로 아주 간단하게 핵심기능만 넣은 App을 제작해 보고,&amp;nbsp; 이것을 바탕으로 게시글 끝에는 서보회로와 릴레이회로까지 넣고 좀 더 깔끔하게 실행되도록 만들어 볼게요.&amp;nbsp;&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;Basic App의 디자인 모습은 아래와 같습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;BLE-Basic-App-투명.png&quot; data-origin-width=&quot;403&quot; data-origin-height=&quot;615&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bXlpPd/btszLu0cvrp/IDpeFSvRhh5qdDsEDP0KDK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bXlpPd/btszLu0cvrp/IDpeFSvRhh5qdDsEDP0KDK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bXlpPd/btszLu0cvrp/IDpeFSvRhh5qdDsEDP0KDK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbXlpPd%2FbtszLu0cvrp%2FIDpeFSvRhh5qdDsEDP0KDK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;403&quot; height=&quot;615&quot; data-filename=&quot;BLE-Basic-App-투명.png&quot; data-origin-width=&quot;403&quot; data-origin-height=&quot;615&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;br /&gt;우선 작동 원리를 간단히 설명드립니다.&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;먼저,&amp;nbsp;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;①&amp;nbsp;Scan&amp;nbsp;버튼을&amp;nbsp;누르면&amp;nbsp;폰&amp;nbsp;주변에&amp;nbsp;감지되는&amp;nbsp;블루투스&amp;nbsp;장치를&amp;nbsp;검색하도록&amp;nbsp;합니다.&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;② 검색된 장치 목록에서 &amp;lsquo;LED&amp;rsquo;를 선택하면 Service UUID와 LocalName을 가져옵니다.&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;③ Connect를 터치하면 선택한 LED 주변장치와 연결을 시도하고 UUID와 특성 UUID를 체크하도록 합니다.&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;④ LED ON 버튼을 터치할 경우 true값에 해당하는 &amp;lsquo;1&amp;rsquo;을 전송시켜 LED가 켜지도록 합니다.&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;⑤ LED OFF 버튼을 터치할 경우 false값에 해당하는 &amp;lsquo;0&amp;rsquo;을 전송시켜 LED가 꺼지도록 합니다.&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;그럼, App Inventor 사이트에 접속하여 새 프로젝트를 클릭해 주세요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;14.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1080&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ERGHT/btszLs2vn1F/Xvl5rsIoVRfN3TFKVmSGck/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ERGHT/btszLs2vn1F/Xvl5rsIoVRfN3TFKVmSGck/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ERGHT/btszLs2vn1F/Xvl5rsIoVRfN3TFKVmSGck/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FERGHT%2FbtszLs2vn1F%2FXvl5rsIoVRfN3TFKVmSGck%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1920&quot; height=&quot;1080&quot; data-filename=&quot;14.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1080&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;15.png&quot; data-origin-width=&quot;1157&quot; data-origin-height=&quot;851&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bYzbzO/btszKczmiDG/SLCPVOvCz0ReuGsEcQvI30/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bYzbzO/btszKczmiDG/SLCPVOvCz0ReuGsEcQvI30/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bYzbzO/btszKczmiDG/SLCPVOvCz0ReuGsEcQvI30/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbYzbzO%2FbtszKczmiDG%2FSLCPVOvCz0ReuGsEcQvI30%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1157&quot; height=&quot;851&quot; data-filename=&quot;15.png&quot; data-origin-width=&quot;1157&quot; data-origin-height=&quot;851&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;App Inventor의 메뉴 언어는 한글로도 바꿀 수 있으니 한글메뉴가 더 익숙한 분은 여기서 바꾸어 주세요.(아래 이미지)&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;16.png&quot; data-origin-width=&quot;1463&quot; data-origin-height=&quot;835&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/lLjcO/btszK9bbUGO/zK0xrqDKOEtTwUPPumXrtK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/lLjcO/btszK9bbUGO/zK0xrqDKOEtTwUPPumXrtK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/lLjcO/btszK9bbUGO/zK0xrqDKOEtTwUPPumXrtK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FlLjcO%2FbtszK9bbUGO%2FzK0xrqDKOEtTwUPPumXrtK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1463&quot; height=&quot;835&quot; data-filename=&quot;16.png&quot; data-origin-width=&quot;1463&quot; data-origin-height=&quot;835&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;저전력(BLE) 블루투스가 아닌 경우에는 Connectivity에 있는 Bluetooth를 사용하면 됩니다. (아래)&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;17.png&quot; data-origin-width=&quot;1021&quot; data-origin-height=&quot;791&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/caKJKE/btszOLUGc9S/MRqJzJZXdBCYbrZoSLw1L1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/caKJKE/btszOLUGc9S/MRqJzJZXdBCYbrZoSLw1L1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/caKJKE/btszOLUGc9S/MRqJzJZXdBCYbrZoSLw1L1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcaKJKE%2FbtszOLUGc9S%2FMRqJzJZXdBCYbrZoSLw1L1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1021&quot; height=&quot;791&quot; data-filename=&quot;17.png&quot; data-origin-width=&quot;1021&quot; data-origin-height=&quot;791&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;하지만 여기서는 저전력 블루투스(Bluetooth LE)를 사용해야 하기 때문에 BLE 확장 패키지를 Extension항목에 별도로 추가해야 사용할 수 있습니다.(아래)&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;18.png&quot; data-origin-width=&quot;1089&quot; data-origin-height=&quot;825&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bGnoTo/btszLWWHPVW/xaT9gSPoF1MG51ziQ4OAj1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bGnoTo/btszLWWHPVW/xaT9gSPoF1MG51ziQ4OAj1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bGnoTo/btszLWWHPVW/xaT9gSPoF1MG51ziQ4OAj1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbGnoTo%2FbtszLWWHPVW%2FxaT9gSPoF1MG51ziQ4OAj1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1089&quot; height=&quot;825&quot; data-filename=&quot;18.png&quot; data-origin-width=&quot;1089&quot; data-origin-height=&quot;825&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;그럼, 확장 패키지를 다운로드하기 위해 앱인벤터 사이트 또는 구글 검색으로 &amp;ldquo;&lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt;Bluetooth LE&lt;/b&gt;&lt;/span&gt;&amp;rdquo; 또는 &amp;ldquo;BLE&amp;rdquo;라고 검색해 보세요. (아래)&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;19.png&quot; data-origin-width=&quot;1821&quot; data-origin-height=&quot;885&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b4QTxX/btszLY1lgzl/GUZNbwULVBJILaKco43T91/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b4QTxX/btszLY1lgzl/GUZNbwULVBJILaKco43T91/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b4QTxX/btszLY1lgzl/GUZNbwULVBJILaKco43T91/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb4QTxX%2FbtszLY1lgzl%2FGUZNbwULVBJILaKco43T91%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1821&quot; height=&quot;885&quot; data-filename=&quot;19.png&quot; data-origin-width=&quot;1821&quot; data-origin-height=&quot;885&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;검색된 영상과 같은 링크를 클릭하세요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;20.png&quot; data-origin-width=&quot;605&quot; data-origin-height=&quot;767&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/kPKzv/btszKecQuWh/QZEi3REKO8ayPD205GJ43k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/kPKzv/btszKecQuWh/QZEi3REKO8ayPD205GJ43k/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/kPKzv/btszKecQuWh/QZEi3REKO8ayPD205GJ43k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FkPKzv%2FbtszKecQuWh%2FQZEi3REKO8ayPD205GJ43k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;605&quot; height=&quot;767&quot; data-filename=&quot;20.png&quot; data-origin-width=&quot;605&quot; data-origin-height=&quot;767&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;첫 번째 항목에 있는 BluetoothLE.aix를 다운로드하세요.(아래)&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;21.png&quot; data-origin-width=&quot;1729&quot; data-origin-height=&quot;773&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/MX2GL/btszLvx64jS/qktmlldJ7WRjccpUwGmHjK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/MX2GL/btszLvx64jS/qktmlldJ7WRjccpUwGmHjK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/MX2GL/btszLvx64jS/qktmlldJ7WRjccpUwGmHjK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FMX2GL%2FbtszLvx64jS%2FqktmlldJ7WRjccpUwGmHjK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1729&quot; height=&quot;773&quot; data-filename=&quot;21.png&quot; data-origin-width=&quot;1729&quot; data-origin-height=&quot;773&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;설명란에 보이는 링크를 클릭하면&amp;nbsp;&amp;nbsp;BluetoothLE에서 사용할 수 있는 각 블록에 대한 설명을 참고할 수 있어요. (위/아래 이미지 참고)&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;22.png&quot; data-origin-width=&quot;1319&quot; data-origin-height=&quot;949&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/7zcg3/btszLnz8N9f/kfLTtl1KckQgCmB792gdb0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/7zcg3/btszLnz8N9f/kfLTtl1KckQgCmB792gdb0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/7zcg3/btszLnz8N9f/kfLTtl1KckQgCmB792gdb0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F7zcg3%2FbtszLnz8N9f%2FkfLTtl1KckQgCmB792gdb0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1319&quot; height=&quot;949&quot; data-filename=&quot;22.png&quot; data-origin-width=&quot;1319&quot; data-origin-height=&quot;949&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;여기 &amp;ldquo; Import extension&amp;rdquo;을 클릭하여 좀 전에 받은 &amp;ldquo; edu...ble.aix &amp;rdquo;파일을 추가해 주세요. (아래)&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;23.png&quot; data-origin-width=&quot;795&quot; data-origin-height=&quot;779&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bihP4y/btszKeqo4qm/krN8DbgWlG7alCVVu13DXk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bihP4y/btszKeqo4qm/krN8DbgWlG7alCVVu13DXk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bihP4y/btszKeqo4qm/krN8DbgWlG7alCVVu13DXk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbihP4y%2FbtszKeqo4qm%2FkrN8DbgWlG7alCVVu13DXk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;795&quot; height=&quot;779&quot; data-filename=&quot;23.png&quot; data-origin-width=&quot;795&quot; data-origin-height=&quot;779&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;24.png&quot; data-origin-width=&quot;735&quot; data-origin-height=&quot;799&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bfK2Eq/btszOPbHx9k/LsrA5Qs0J7uZBxuST0vrV1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bfK2Eq/btszOPbHx9k/LsrA5Qs0J7uZBxuST0vrV1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bfK2Eq/btszOPbHx9k/LsrA5Qs0J7uZBxuST0vrV1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbfK2Eq%2FbtszOPbHx9k%2FLsrA5Qs0J7uZBxuST0vrV1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;735&quot; height=&quot;799&quot; data-filename=&quot;24.png&quot; data-origin-width=&quot;735&quot; data-origin-height=&quot;799&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;이렇게 생겨난 요소를 끌어다 폰 이미지 위에 올려주세요.(아래)&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;25.png&quot; data-origin-width=&quot;1057&quot; data-origin-height=&quot;867&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/c12rbi/btszMcd34jL/xUSAeIA38VSfDtDCsGA63k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/c12rbi/btszMcd34jL/xUSAeIA38VSfDtDCsGA63k/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/c12rbi/btszMcd34jL/xUSAeIA38VSfDtDCsGA63k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fc12rbi%2FbtszMcd34jL%2FxUSAeIA38VSfDtDCsGA63k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1057&quot; height=&quot;867&quot; data-filename=&quot;25.png&quot; data-origin-width=&quot;1057&quot; data-origin-height=&quot;867&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;그럼 이렇게 숨김 요소로 기능이 추가되는 것을 볼 수 있습니다.(위)&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;그럼 아래에 앱 인벤터의 디자이너(Designer) 부분을 캡처하였으니 보고 따라 진행해 보세요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;26.png&quot; data-origin-width=&quot;471&quot; data-origin-height=&quot;745&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/pXiMi/btszMZ6OYVy/kUNaGoaxHCQbi8Ihli8HCK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/pXiMi/btszMZ6OYVy/kUNaGoaxHCQbi8Ihli8HCK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/pXiMi/btszMZ6OYVy/kUNaGoaxHCQbi8Ihli8HCK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FpXiMi%2FbtszMZ6OYVy%2FkUNaGoaxHCQbi8Ihli8HCK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;471&quot; height=&quot;745&quot; data-filename=&quot;26.png&quot; data-origin-width=&quot;471&quot; data-origin-height=&quot;745&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;① 번의 디자인에 해당하는 Components 구성은 아래 ②번과 같습니다.&lt;br /&gt;각 Components의 속성은 거의 디폴트(기본) 값으로 하면 되는데요, LED ON 버튼과 LED OFF 버튼만 가로로 화면이 가득 차도록 나타내기 위해 Width 항목에 Fill parent. 옵션을 주고, 글자 FontBold 처리 및 FontSize, 색깔 정도만 처리를 해주면 좋습니다.&amp;nbsp; &amp;nbsp;나머지 부분은 자유롭게 꾸며도 좋고요, Basic앱에서는 이 정도만 하고 넘어가도록 할게요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;27.png&quot; data-origin-width=&quot;253&quot; data-origin-height=&quot;661&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/czRpVv/btszSIiYzch/Zi4C7YA3PEL5PeClYNIJt0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/czRpVv/btszSIiYzch/Zi4C7YA3PEL5PeClYNIJt0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/czRpVv/btszSIiYzch/Zi4C7YA3PEL5PeClYNIJt0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FczRpVv%2FbtszSIiYzch%2FZi4C7YA3PEL5PeClYNIJt0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;253&quot; height=&quot;661&quot; data-filename=&quot;27.png&quot; data-origin-width=&quot;253&quot; data-origin-height=&quot;661&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;각 항목의 이름들은 블록 코딩 화면에서 쉽게 알아차릴 수 있도록 의미를 부여해 네이밍 해주면 좋습니다.&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;예를 들어, Button의 경우 &amp;lsquo;btn_&amp;rsquo;으로 시작하는 태그를 붙여주고, Label의 경우 &amp;lsquo;lbl_&amp;rsquo;로 시작하는 태그를 붙인 다음, 각 요소의 이름을 붙여주는 식입니다.&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;이제 블록 코딩 화면으로 넘어갑니다.&lt;br /&gt;아래 이미지를 참고하시고,&amp;nbsp; 웹상에서 보기 어려울 경우를 대비해서 이미지 파일로 따로 링크해 놓을게요.&lt;br /&gt;블록 코딩 이미지 사진은 2장으로 캡처했습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;28.png&quot; data-origin-width=&quot;705&quot; data-origin-height=&quot;757&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/caiKLE/btszJGU62xC/Zof3BgmuHOFbK7lkKtMlM1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/caiKLE/btszJGU62xC/Zof3BgmuHOFbK7lkKtMlM1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/caiKLE/btszJGU62xC/Zof3BgmuHOFbK7lkKtMlM1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcaiKLE%2FbtszJGU62xC%2FZof3BgmuHOFbK7lkKtMlM1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;705&quot; height=&quot;757&quot; data-filename=&quot;28.png&quot; data-origin-width=&quot;705&quot; data-origin-height=&quot;757&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;Service UUID와 특성 UUID 값을 정확하게 입력해 주어야 합니다.&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;동일하게 반복되는 블록은 복붙 하는 것이 편할 수 있어요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;29.png&quot; data-origin-width=&quot;861&quot; data-origin-height=&quot;799&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bD5UOt/btszKecUpjE/i4sKB6cKd9M45ivAw2LKy1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bD5UOt/btszKecUpjE/i4sKB6cKd9M45ivAw2LKy1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bD5UOt/btszKecUpjE/i4sKB6cKd9M45ivAw2LKy1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbD5UOt%2FbtszKecUpjE%2Fi4sKB6cKd9M45ivAw2LKy1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;861&quot; height=&quot;799&quot; data-filename=&quot;29.png&quot; data-origin-width=&quot;861&quot; data-origin-height=&quot;799&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;--&amp;nbsp; 코드를 한글 메뉴로도 캡처했으니 참고해 보세요(아래) --&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;31.png&quot; data-origin-width=&quot;849&quot; data-origin-height=&quot;817&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/1o297/btszKIkEoLZ/iKWFg3Ak3v1MwXI2kwALF0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/1o297/btszKIkEoLZ/iKWFg3Ak3v1MwXI2kwALF0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/1o297/btszKIkEoLZ/iKWFg3Ak3v1MwXI2kwALF0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F1o297%2FbtszKIkEoLZ%2FiKWFg3Ak3v1MwXI2kwALF0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;849&quot; height=&quot;817&quot; data-filename=&quot;31.png&quot; data-origin-width=&quot;849&quot; data-origin-height=&quot;817&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;32.png&quot; data-origin-width=&quot;871&quot; data-origin-height=&quot;807&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/c4NGVZ/btszOMszyue/2SH14M9GIzB9iSlbFzSxF0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/c4NGVZ/btszOMszyue/2SH14M9GIzB9iSlbFzSxF0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/c4NGVZ/btszOMszyue/2SH14M9GIzB9iSlbFzSxF0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fc4NGVZ%2FbtszOMszyue%2F2SH14M9GIzB9iSlbFzSxF0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;871&quot; height=&quot;807&quot; data-filename=&quot;32.png&quot; data-origin-width=&quot;871&quot; data-origin-height=&quot;807&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;lt; Basic App 캡쳐 사진 다운로드하기! &amp;gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;fileblock&quot; data-ke-align=&quot;alignCenter&quot;&gt;&lt;a href=&quot;https://blog.kakaocdn.net/dn/bdI2L3/btszKexv4FH/IMxYpoSNats5b72XZjUoOK/%5BBasic%20%EC%95%B1%5D%20%EC%95%B1%EC%9D%B8%EB%B2%A4%ED%84%B0%20%EA%B5%AC%EC%84%B1%EC%9A%94%EC%86%8C%EC%99%80%20%EB%B8%94%EB%A1%9D%EC%BD%94%EB%94%A9%20%EC%BA%A1%EC%B3%90%20%EC%9D%B4%EB%AF%B8%EC%A7%80.zip?attach=1&amp;amp;knm=tfile.zip&quot; class=&quot;&quot;&gt;
    &lt;div class=&quot;image&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;desc&quot;&gt;&lt;div class=&quot;filename&quot;&gt;&lt;span class=&quot;name&quot;&gt;[Basic 앱] 앱인벤터 구성요소와 블록코딩 캡쳐 이미지.zip&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;size&quot;&gt;1.08MB&lt;/div&gt;
&lt;/div&gt;
  &lt;/a&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;블록 코드 구성이 완성되었다면, Build 메뉴에서 앱을 생성해 주세요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;33.png&quot; data-origin-width=&quot;675&quot; data-origin-height=&quot;381&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dFXp4t/btszKybzFql/RAnnWkbNDo3XCTwKGYn5J1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dFXp4t/btszKybzFql/RAnnWkbNDo3XCTwKGYn5J1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dFXp4t/btszKybzFql/RAnnWkbNDo3XCTwKGYn5J1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdFXp4t%2FbtszKybzFql%2FRAnnWkbNDo3XCTwKGYn5J1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;675&quot; height=&quot;381&quot; data-filename=&quot;33.png&quot; data-origin-width=&quot;675&quot; data-origin-height=&quot;381&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;앱 설치는 폰의 카메라를 이용해 QR코드를 스캔하면 연결된 링크를 통해 앱을 다운로드할 수 있고,&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;다운로드 버튼으로 설치앱을 다운로드 후,&amp;nbsp;&amp;nbsp;폰을 USB케이블로 연결하여 직접 복사하여 설치해도 됩니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;34.png&quot; data-origin-width=&quot;685&quot; data-origin-height=&quot;733&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/5oDp4/btszLqqbdGw/28diDd14KgXk8nZMFiK6zK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/5oDp4/btszLqqbdGw/28diDd14KgXk8nZMFiK6zK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/5oDp4/btszLqqbdGw/28diDd14KgXk8nZMFiK6zK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F5oDp4%2FbtszLqqbdGw%2F28diDd14KgXk8nZMFiK6zK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;685&quot; height=&quot;733&quot; data-filename=&quot;34.png&quot; data-origin-width=&quot;685&quot; data-origin-height=&quot;733&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;그럼, 앱 설치하는 장면을 집접 보여드릴게요 앱스토어를 통하는 것이 아니기 때문에 경고 창이 나타날 수 있습니다.&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure data-ke-type=&quot;video&quot; data-ke-style=&quot;alignCenter&quot; data-video-host=&quot;kakaotv&quot; data-video-url=&quot;https://tv.kakao.com/v/442260927&quot; data-video-thumbnail=&quot;https://scrap.kakaocdn.net/dn/wc1Sq/hyUrC31qsk/9uMNjfTywSvz1Rj1JmQ0E1/img.jpg?width=895&amp;amp;height=1920&amp;amp;face=0_0_895_1920,https://scrap.kakaocdn.net/dn/b9lL1r/hyUrAE9eCc/oXqtBbRGn8TYJM4N2kp0JK/img.jpg?width=895&amp;amp;height=1920&amp;amp;face=0_0_895_1920&quot; data-video-width=&quot;860&quot; data-video-height=&quot;1845&quot; data-video-origin-width=&quot;860&quot; data-video-origin-height=&quot;1845&quot; data-ke-mobilestyle=&quot;widthContent&quot; data-video-play-service=&quot;daum_tistory&quot; data-original-url=&quot;&quot; data-video-title=&quot;&quot;&gt;&lt;iframe src=&quot;https://play-tv.kakao.com/embed/player/cliplink/442260927?service=daum_tistory&quot; width=&quot;860&quot; height=&quot;1845&quot; frameborder=&quot;0&quot; allowfullscreen=&quot;true&quot;&gt;&lt;/iframe&gt;
&lt;figcaption style=&quot;display: none;&quot;&gt;&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;35.png&quot; data-origin-width=&quot;495&quot; data-origin-height=&quot;679&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bsxm0e/btszOOxd2LM/1oQw2L7uVt6EdU2ysFuPz0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bsxm0e/btszOOxd2LM/1oQw2L7uVt6EdU2ysFuPz0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bsxm0e/btszOOxd2LM/1oQw2L7uVt6EdU2ysFuPz0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbsxm0e%2FbtszOOxd2LM%2F1oQw2L7uVt6EdU2ysFuPz0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;495&quot; height=&quot;679&quot; data-filename=&quot;35.png&quot; data-origin-width=&quot;495&quot; data-origin-height=&quot;679&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;lsquo;Scan&amp;rsquo; 버튼을 누르면 주변의&amp;nbsp; 블루투스 장치들의 목록이 뜨는데요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;36.png&quot; data-origin-width=&quot;487&quot; data-origin-height=&quot;781&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/t0vJj/btszMdD4K9N/NxH5TpapbYcjC68TRWMK20/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/t0vJj/btszMdD4K9N/NxH5TpapbYcjC68TRWMK20/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/t0vJj/btszMdD4K9N/NxH5TpapbYcjC68TRWMK20/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Ft0vJj%2FbtszMdD4K9N%2FNxH5TpapbYcjC68TRWMK20%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;487&quot; height=&quot;781&quot; data-filename=&quot;36.png&quot; data-origin-width=&quot;487&quot; data-origin-height=&quot;781&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;rsquo;LED&amp;rsquo;가 검색되었다면 &amp;lsquo;Stop Scan&amp;rsquo;을 누르고 검색된 &amp;rsquo;LED&amp;rsquo;를 터치 후, &amp;lsquo;Connect&amp;rsquo;를 눌러 연결시켜 주세요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;37.png&quot; data-origin-width=&quot;499&quot; data-origin-height=&quot;339&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ZQTuU/btszJYuLfDe/lzPt6iOMFapCtCNp5XsVH1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ZQTuU/btszJYuLfDe/lzPt6iOMFapCtCNp5XsVH1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ZQTuU/btszJYuLfDe/lzPt6iOMFapCtCNp5XsVH1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FZQTuU%2FbtszJYuLfDe%2FlzPt6iOMFapCtCNp5XsVH1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;499&quot; height=&quot;339&quot; data-filename=&quot;37.png&quot; data-origin-width=&quot;499&quot; data-origin-height=&quot;339&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;그리고 ON / OFF 버튼을 누를 때마다 Status : 에 결과가 표시되도록 합니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;38.png&quot; data-origin-width=&quot;491&quot; data-origin-height=&quot;325&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bagqxT/btszLY1pCCY/bLo8A8zM9DcUEjlKMCXo91/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bagqxT/btszLY1pCCY/bLo8A8zM9DcUEjlKMCXo91/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bagqxT/btszLY1pCCY/bLo8A8zM9DcUEjlKMCXo91/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbagqxT%2FbtszLY1pCCY%2FbLo8A8zM9DcUEjlKMCXo91%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;491&quot; height=&quot;325&quot; data-filename=&quot;38.png&quot; data-origin-width=&quot;491&quot; data-origin-height=&quot;325&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;그럼, 실제 동작 영상과 함께 다시 보여드릴게요.&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;lsquo;Scan&amp;rsquo; 버튼을 누르면 주변의 블루투스 장치들의 목록이 뜨고.&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;rsquo;LED&amp;rsquo;가 검색되었다면 &amp;lsquo;Stop Scan&amp;rsquo;을 누르고 검색된 &amp;rsquo;LED&amp;rsquo;를 터치 후, &amp;lsquo;Connect&amp;rsquo;를 눌러 연결시켜 주세요.&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;그리고 On / Off 버튼을 누르면 LED가 잘 제어되는 것을 볼 수 있습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;39.png&quot; data-origin-width=&quot;565&quot; data-origin-height=&quot;731&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bfaTcz/btszQD3lmDj/M6On4sjBkE2Hr22yeK7aeK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bfaTcz/btszQD3lmDj/M6On4sjBkE2Hr22yeK7aeK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bfaTcz/btszQD3lmDj/M6On4sjBkE2Hr22yeK7aeK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbfaTcz%2FbtszQD3lmDj%2FM6On4sjBkE2Hr22yeK7aeK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;565&quot; height=&quot;731&quot; data-filename=&quot;39.png&quot; data-origin-width=&quot;565&quot; data-origin-height=&quot;731&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size23&quot;&gt;【 BLE 기능 추가 App 만들기 - (Advanced BLE App) 】&lt;/h3&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;앱을 좀 더 다듬고 서보와 릴레이 제어까지 추가한 Advanced 앱을 만들어 볼게요.&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;마찬가지로 디자인 화면과 코드블록을 보기 좋게 캡처하여 보여드리고 압축하여 첨부파일로도 올려드릴게요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;40.png&quot; data-origin-width=&quot;431&quot; data-origin-height=&quot;735&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bGnHMj/btszKHzjfzI/V8BRO3DXcsmK8X6ukuyk20/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bGnHMj/btszKHzjfzI/V8BRO3DXcsmK8X6ukuyk20/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bGnHMj/btszKHzjfzI/V8BRO3DXcsmK8X6ukuyk20/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbGnHMj%2FbtszKHzjfzI%2FV8BRO3DXcsmK8X6ukuyk20%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;431&quot; height=&quot;735&quot; data-filename=&quot;40.png&quot; data-origin-width=&quot;431&quot; data-origin-height=&quot;735&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;41.png&quot; data-origin-width=&quot;401&quot; data-origin-height=&quot;735&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b609RO/btszLm9gHN0/aauoC8cTgWJwCshpGuV8DK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b609RO/btszLm9gHN0/aauoC8cTgWJwCshpGuV8DK/img.png&quot; data-alt=&quot;아래로 스크롤 된 모습&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b609RO/btszLm9gHN0/aauoC8cTgWJwCshpGuV8DK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb609RO%2FbtszLm9gHN0%2FaauoC8cTgWJwCshpGuV8DK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;401&quot; height=&quot;735&quot; data-filename=&quot;41.png&quot; data-origin-width=&quot;401&quot; data-origin-height=&quot;735&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;아래로 스크롤 된 모습&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;42.png&quot; data-origin-width=&quot;327&quot; data-origin-height=&quot;829&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/DZ9KB/btszKG1vTWk/Hxz2m3U7frm15b7cRDHb20/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/DZ9KB/btszKG1vTWk/Hxz2m3U7frm15b7cRDHb20/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/DZ9KB/btszKG1vTWk/Hxz2m3U7frm15b7cRDHb20/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FDZ9KB%2FbtszKG1vTWk%2FHxz2m3U7frm15b7cRDHb20%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;327&quot; height=&quot;829&quot; data-filename=&quot;42.png&quot; data-origin-width=&quot;327&quot; data-origin-height=&quot;829&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;43.png&quot; data-origin-width=&quot;327&quot; data-origin-height=&quot;837&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bo48Cg/btszKIrunfS/GQvrTIwtHC91NZFGn9AwE1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bo48Cg/btszKIrunfS/GQvrTIwtHC91NZFGn9AwE1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bo48Cg/btszKIrunfS/GQvrTIwtHC91NZFGn9AwE1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbo48Cg%2FbtszKIrunfS%2FGQvrTIwtHC91NZFGn9AwE1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;327&quot; height=&quot;837&quot; data-filename=&quot;43.png&quot; data-origin-width=&quot;327&quot; data-origin-height=&quot;837&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;44.png&quot; data-origin-width=&quot;319&quot; data-origin-height=&quot;330&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/xrSRq/btszKAUNYLB/qOotJlnB5dr0RZPKa48E81/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/xrSRq/btszKAUNYLB/qOotJlnB5dr0RZPKa48E81/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/xrSRq/btszKAUNYLB/qOotJlnB5dr0RZPKa48E81/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FxrSRq%2FbtszKAUNYLB%2FqOotJlnB5dr0RZPKa48E81%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;319&quot; height=&quot;330&quot; data-filename=&quot;44.png&quot; data-origin-width=&quot;319&quot; data-origin-height=&quot;330&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;나머지 옵션 부분은 글자색 넣고 글자(Font...) 크기 및 가로 크기 맞추는 부분만 하면 되기 때문에, 이 부분은 직접 해보면 어렵지 않기 때문에 하면서 감을 익혀보세요.&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;- 블록 코딩 영역 &lt;span style=&quot;color: #ee2323;&quot;&gt;&amp;lt; 영문 메뉴 &amp;gt;&lt;/span&gt; -&amp;nbsp; &amp;nbsp;(③ 번 이미지)&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;45.png&quot; data-origin-width=&quot;1169&quot; data-origin-height=&quot;623&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/mh7Jx/btszOMlR3LK/rkPk4jV1hU9xH1eODGsxoK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/mh7Jx/btszOMlR3LK/rkPk4jV1hU9xH1eODGsxoK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/mh7Jx/btszOMlR3LK/rkPk4jV1hU9xH1eODGsxoK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fmh7Jx%2FbtszOMlR3LK%2FrkPk4jV1hU9xH1eODGsxoK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1169&quot; height=&quot;623&quot; data-filename=&quot;45.png&quot; data-origin-width=&quot;1169&quot; data-origin-height=&quot;623&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;46.png&quot; data-origin-width=&quot;1435&quot; data-origin-height=&quot;459&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/UcVh1/btszRSTKYKL/MRSaViR0L28sIOydrOkeuk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/UcVh1/btszRSTKYKL/MRSaViR0L28sIOydrOkeuk/img.png&quot; data-alt=&quot;Scan 버튼 관련된 블록코딩&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/UcVh1/btszRSTKYKL/MRSaViR0L28sIOydrOkeuk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FUcVh1%2FbtszRSTKYKL%2FMRSaViR0L28sIOydrOkeuk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1435&quot; height=&quot;459&quot; data-filename=&quot;46.png&quot; data-origin-width=&quot;1435&quot; data-origin-height=&quot;459&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;Scan 버튼 관련된 블록코딩&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;47.png&quot; data-origin-width=&quot;877&quot; data-origin-height=&quot;745&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dvHaHz/btszJH7DW1U/St5HP5Khtisk3VrKCBcA70/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dvHaHz/btszJH7DW1U/St5HP5Khtisk3VrKCBcA70/img.png&quot; data-alt=&quot;LED 버튼 블록코딩&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dvHaHz/btszJH7DW1U/St5HP5Khtisk3VrKCBcA70/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdvHaHz%2FbtszJH7DW1U%2FSt5HP5Khtisk3VrKCBcA70%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;877&quot; height=&quot;745&quot; data-filename=&quot;47.png&quot; data-origin-width=&quot;877&quot; data-origin-height=&quot;745&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;LED 버튼 블록코딩&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;48.png&quot; data-origin-width=&quot;913&quot; data-origin-height=&quot;753&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cUD07N/btszKISDD5N/0jdwNFoLkCr8D9peyw3Pqk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cUD07N/btszKISDD5N/0jdwNFoLkCr8D9peyw3Pqk/img.png&quot; data-alt=&quot;서버 모터 버튼 블록코딩&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cUD07N/btszKISDD5N/0jdwNFoLkCr8D9peyw3Pqk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcUD07N%2FbtszKISDD5N%2F0jdwNFoLkCr8D9peyw3Pqk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;913&quot; height=&quot;753&quot; data-filename=&quot;48.png&quot; data-origin-width=&quot;913&quot; data-origin-height=&quot;753&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;서버 모터 버튼 블록코딩&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;49.png&quot; data-origin-width=&quot;919&quot; data-origin-height=&quot;763&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dqeKCl/btszLrpb26x/iYIuKR4Gp3efRgplX9XlYk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dqeKCl/btszLrpb26x/iYIuKR4Gp3efRgplX9XlYk/img.png&quot; data-alt=&quot;도어 솔레노이드(릴레이) 버튼 블록코딩&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dqeKCl/btszLrpb26x/iYIuKR4Gp3efRgplX9XlYk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdqeKCl%2FbtszLrpb26x%2FiYIuKR4Gp3efRgplX9XlYk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;919&quot; height=&quot;763&quot; data-filename=&quot;49.png&quot; data-origin-width=&quot;919&quot; data-origin-height=&quot;763&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;도어 솔레노이드(릴레이) 버튼 블록코딩&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #ef6f53;&quot;&gt;아래 블록코딩은 &lt;/span&gt;&lt;span style=&quot;text-align: center;&quot;&gt;&lt;span style=&quot;color: #ef6f53;&quot;&gt;장치 선택에 따라서 블루투스 UUID 특성값을 다르게 선택하도록 처리한 부분입니다.&lt;/span&gt;&lt;br /&gt;LED Scan &lt;span style=&quot;color: #000000;&quot;&gt;버튼을 통해 device_Mode 변수값이 1일 경우 LED에 할당된 특성UUID 값을 가져오도록했고,&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;text-align: center;&quot;&gt;Servo Scan &lt;span style=&quot;color: #000000;&quot;&gt;버튼을 통해 device_Mode 변수값이 2가 될 경우 Servo에 할당된 특성UUID 값을 가져오도록했고,&lt;/span&gt;&amp;nbsp;&lt;/span&gt; &lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt; &lt;span style=&quot;text-align: center;&quot;&gt;Door Scan &lt;span style=&quot;color: #000000;&quot;&gt;버튼을 통해 device_Mode 변수값이 3인지 확인해서 Relay에 할당된 특성UUID 값을 가져오도록하여,&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #781b33;&quot;&gt;&lt;b&gt;&lt;span style=&quot;text-align: center;&quot;&gt;각 버튼에 맞도록 폰과 Nano33 ioT 기기와 페어링 되도록 하였습니다.&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;50.png&quot; data-origin-width=&quot;759&quot; data-origin-height=&quot;715&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/teOg7/btszKxqlaPZ/SV6DJMKWRvAVStNWyWafW1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/teOg7/btszKxqlaPZ/SV6DJMKWRvAVStNWyWafW1/img.png&quot; data-alt=&quot;장치 선택에 따라서 블루투스 UUID 특성값을 다르게 선택하도록 처리&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/teOg7/btszKxqlaPZ/SV6DJMKWRvAVStNWyWafW1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FteOg7%2FbtszKxqlaPZ%2FSV6DJMKWRvAVStNWyWafW1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;759&quot; height=&quot;715&quot; data-filename=&quot;50.png&quot; data-origin-width=&quot;759&quot; data-origin-height=&quot;715&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;장치 선택에 따라서 블루투스 UUID 특성값을 다르게 선택하도록 처리&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;- 블록 코딩 영역&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;&amp;lt; 한글 메뉴 &amp;gt;&lt;/span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;-&amp;nbsp; &amp;nbsp;(④ 번 이미지)&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;55.png&quot; data-origin-width=&quot;1149&quot; data-origin-height=&quot;599&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dDui62/btszK6Mw3nC/B3QRwKMSUXe4gCgb0FRwp0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dDui62/btszK6Mw3nC/B3QRwKMSUXe4gCgb0FRwp0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dDui62/btszK6Mw3nC/B3QRwKMSUXe4gCgb0FRwp0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdDui62%2FbtszK6Mw3nC%2FB3QRwKMSUXe4gCgb0FRwp0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1149&quot; height=&quot;599&quot; data-filename=&quot;55.png&quot; data-origin-width=&quot;1149&quot; data-origin-height=&quot;599&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;56.png&quot; data-origin-width=&quot;1477&quot; data-origin-height=&quot;459&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dJkL88/btszLXBAAA0/qn74oKcF8RkZ8WtrhQzZ30/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dJkL88/btszLXBAAA0/qn74oKcF8RkZ8WtrhQzZ30/img.png&quot; data-alt=&quot;Scan 버튼 관련된 블록코딩&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dJkL88/btszLXBAAA0/qn74oKcF8RkZ8WtrhQzZ30/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdJkL88%2FbtszLXBAAA0%2Fqn74oKcF8RkZ8WtrhQzZ30%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1477&quot; height=&quot;459&quot; data-filename=&quot;56.png&quot; data-origin-width=&quot;1477&quot; data-origin-height=&quot;459&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;Scan 버튼 관련된 블록코딩&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;57.png&quot; data-origin-width=&quot;931&quot; data-origin-height=&quot;693&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/YXMeC/btszK7xSihI/ZwqYvD9vkv17YdBCXHL9Lk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/YXMeC/btszK7xSihI/ZwqYvD9vkv17YdBCXHL9Lk/img.png&quot; data-alt=&quot;LED 버튼 블록코딩&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/YXMeC/btszK7xSihI/ZwqYvD9vkv17YdBCXHL9Lk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FYXMeC%2FbtszK7xSihI%2FZwqYvD9vkv17YdBCXHL9Lk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;931&quot; height=&quot;693&quot; data-filename=&quot;57.png&quot; data-origin-width=&quot;931&quot; data-origin-height=&quot;693&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;LED 버튼 블록코딩&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;58.png&quot; data-origin-width=&quot;1043&quot; data-origin-height=&quot;745&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/yE45b/btszKDRgw2N/KXKsAudbbl52SCup8iJsG0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/yE45b/btszKDRgw2N/KXKsAudbbl52SCup8iJsG0/img.png&quot; data-alt=&quot;서보 모터 버튼 블록코딩&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/yE45b/btszKDRgw2N/KXKsAudbbl52SCup8iJsG0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FyE45b%2FbtszKDRgw2N%2FKXKsAudbbl52SCup8iJsG0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1043&quot; height=&quot;745&quot; data-filename=&quot;58.png&quot; data-origin-width=&quot;1043&quot; data-origin-height=&quot;745&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;서보 모터 버튼 블록코딩&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;59.png&quot; data-origin-width=&quot;1035&quot; data-origin-height=&quot;745&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/P6RHc/btszOOYow7G/RC1QE9spYicxYsexHTgBM1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/P6RHc/btszOOYow7G/RC1QE9spYicxYsexHTgBM1/img.png&quot; data-alt=&quot;도어 솔레노이드(릴레이) 버튼 블록코딩&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/P6RHc/btszOOYow7G/RC1QE9spYicxYsexHTgBM1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FP6RHc%2FbtszOOYow7G%2FRC1QE9spYicxYsexHTgBM1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1035&quot; height=&quot;745&quot; data-filename=&quot;59.png&quot; data-origin-width=&quot;1035&quot; data-origin-height=&quot;745&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;도어 솔레노이드(릴레이) 버튼 블록코딩&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #ef6f53;&quot;&gt;아래 블록코딩은&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;text-align: center;&quot;&gt;&lt;span style=&quot;color: #ef6f53;&quot;&gt;장치 선택에 따라서 블루투스 UUID 특성값을 다르게 선택하도록 처리한 부분입니다.&lt;/span&gt;&lt;br /&gt;LED Scan&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;버튼을 통해 device_Mode 변수값이 1일 경우 LED에 할당된 특성UUID 값을 가져오도록했고,&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;text-align: center;&quot;&gt;Servo Scan&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;버튼을 통해 device_Mode 변수값이 2가 될 경우 Servo에 할당된 특성UUID 값을 가져오도록했고,&lt;/span&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt;&lt;span style=&quot;text-align: center;&quot;&gt;Door Scan&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;버튼을 통해 device_Mode 변수값이 3인지 확인해서 Relay에 할당된 특성UUID 값을 가져오도록 하여,&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #781b33;&quot;&gt;&lt;b&gt;&lt;span style=&quot;text-align: center;&quot;&gt;각 버튼에 맞도록 폰과 Nano33 ioT 기기와 페어링 되도록 하였습니다.&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;60.png&quot; data-origin-width=&quot;963&quot; data-origin-height=&quot;767&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/z93hD/btszLYNZfer/LJ6QkRlMAonG9uihCKmFy0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/z93hD/btszLYNZfer/LJ6QkRlMAonG9uihCKmFy0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/z93hD/btszLYNZfer/LJ6QkRlMAonG9uihCKmFy0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fz93hD%2FbtszLYNZfer%2FLJ6QkRlMAonG9uihCKmFy0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;963&quot; height=&quot;767&quot; data-filename=&quot;60.png&quot; data-origin-width=&quot;963&quot; data-origin-height=&quot;767&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;&amp;lt; Basic App 캡처 사진 다운로드하기! &amp;gt; &lt;/b&gt;&lt;/h4&gt;
&lt;p&gt;&lt;figure class=&quot;fileblock&quot; data-ke-align=&quot;alignCenter&quot;&gt;&lt;a href=&quot;https://blog.kakaocdn.net/dn/c181g8/btszSKnUOKm/iMLGm1Pk6OEGmQvVUxlHH0/%5BAdvanced%20%EC%95%B1%5D%20%EC%95%B1%EC%9D%B8%EB%B2%A4%ED%84%B0%20%EA%B5%AC%EC%84%B1%EC%9A%94%EC%86%8C%EC%99%80%20%EB%B8%94%EB%A1%9D%EC%BD%94%EB%94%A9%20%EC%BA%A1%EC%B3%90%EC%9D%B4%EB%AF%B8%EC%A7%80.zip?attach=1&amp;amp;knm=tfile.zip&quot; class=&quot;&quot;&gt;
    &lt;div class=&quot;image&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;desc&quot;&gt;&lt;div class=&quot;filename&quot;&gt;&lt;span class=&quot;name&quot;&gt;[Advanced 앱] 앱인벤터 구성요소와 블록코딩 캡쳐이미지.zip&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;size&quot;&gt;1.51MB&lt;/div&gt;
&lt;/div&gt;
  &lt;/a&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;그럼 이제 Advanced 앱도 실행시켜 볼게요.&lt;br /&gt;아래 이미지는 LED와 페어링 시키고 ON / OFF 제어에 성공한 모습입니다.&amp;nbsp;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;61.png&quot; data-origin-width=&quot;641&quot; data-origin-height=&quot;967&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/HNyw5/btszLntXOyF/8i8kn65Jyzpyurs9aZrUfK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/HNyw5/btszLntXOyF/8i8kn65Jyzpyurs9aZrUfK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/HNyw5/btszLntXOyF/8i8kn65Jyzpyurs9aZrUfK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FHNyw5%2FbtszLntXOyF%2F8i8kn65Jyzpyurs9aZrUfK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;641&quot; height=&quot;967&quot; data-filename=&quot;61.png&quot; data-origin-width=&quot;641&quot; data-origin-height=&quot;967&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래 이미지는 서보(모터) 기기와 페어링 시키고 ON / OFF 제어에 성공한 모습입니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;62.png&quot; data-origin-width=&quot;1173&quot; data-origin-height=&quot;837&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/d1bld2/btszOOxAPzl/c4XliaKZUaqWLiGo6vEF01/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/d1bld2/btszOOxAPzl/c4XliaKZUaqWLiGo6vEF01/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/d1bld2/btszOOxAPzl/c4XliaKZUaqWLiGo6vEF01/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fd1bld2%2FbtszOOxAPzl%2Fc4XliaKZUaqWLiGo6vEF01%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1173&quot; height=&quot;837&quot; data-filename=&quot;62.png&quot; data-origin-width=&quot;1173&quot; data-origin-height=&quot;837&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래 이미지는 도어 솔레노이드(릴레이) 기기와 페어링 시키고 도어문 개폐 제어에 성공한 모습입니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;63.png&quot; data-origin-width=&quot;1599&quot; data-origin-height=&quot;969&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b11Rfh/btszK2ckOab/MuxbYkibH78PkCGCmR8ON0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b11Rfh/btszK2ckOab/MuxbYkibH78PkCGCmR8ON0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b11Rfh/btszK2ckOab/MuxbYkibH78PkCGCmR8ON0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb11Rfh%2FbtszK2ckOab%2FMuxbYkibH78PkCGCmR8ON0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1599&quot; height=&quot;969&quot; data-filename=&quot;63.png&quot; data-origin-width=&quot;1599&quot; data-origin-height=&quot;969&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;모두 잘 작동하고 있습니다.&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;여기까지 Nano33 ioT 보드에서 제공되는 저전력 블루투스(BLE) 기능을 이용한 제어 시스템 학습 안내를 마무리하도록 하겠습니다.&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;감사합니다.&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;【동영상으로 학습하기】&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://youtu.be/vKGKb-h59sA&quot;&gt;https://youtu.be/vKGKb-h59sA&lt;/a&gt;&lt;/p&gt;
&lt;figure data-ke-type=&quot;video&quot; data-ke-style=&quot;alignCenter&quot; data-video-host=&quot;youtube&quot; data-video-url=&quot;https://www.youtube.com/watch?v=vKGKb-h59sA&quot; data-video-thumbnail=&quot;https://scrap.kakaocdn.net/dn/MvAhJ/hyUrAd8UR1/pmKqF7UTNzFiOebyD0iy71/img.jpg?width=1280&amp;amp;height=720&amp;amp;face=0_0_1280_720&quot; data-video-width=&quot;860&quot; data-video-height=&quot;484&quot; data-video-origin-width=&quot;860&quot; data-video-origin-height=&quot;484&quot; data-ke-mobilestyle=&quot;widthContent&quot; data-original-url=&quot;&quot; data-video-title=&quot;&quot;&gt;&lt;iframe src=&quot;https://www.youtube.com/embed/vKGKb-h59sA&quot; width=&quot;860&quot; height=&quot;484&quot; frameborder=&quot;&quot; allowfullscreen=&quot;true&quot;&gt;&lt;/iframe&gt;
&lt;figcaption style=&quot;display: none;&quot;&gt;&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>아두이노/5. 아두이노-프렌즈</category>
      <category>BLE 통신 실습</category>
      <category>Nano33ioT BLE 사용하기 제어하기</category>
      <category>nRF Connect 앱 블루투스 통신하기</category>
      <category>블루투스 BLE 도어록 개폐장치</category>
      <category>블루투스 캡스톤 디자인</category>
      <category>블루투스 프로젝트 과제</category>
      <category>저전력 블루투스(BLE) 통신 실습</category>
      <category>저전력 블루투스(BLE) 통신 작품만들기</category>
      <author>엑소더스팩토리</author>
      <guid isPermaLink="true">https://rasino.tistory.com/373</guid>
      <comments>https://rasino.tistory.com/373#entry373comment</comments>
      <pubDate>Mon, 6 Nov 2023 14:36:48 +0900</pubDate>
    </item>
    <item>
      <title>【 우분투#2 】VMware 가상 머신에 Ubuntu 우분투 설치하기</title>
      <link>https://rasino.tistory.com/375</link>
      <description>&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;지난 게시글에서 윈도 OS 상에서 리눅스 혹은 또 다른 운영체제를 돌리기 위해 VMware라는 가상 머신을 설치하였습니다.&amp;nbsp; 이렇게 설치된 VMware에 &lt;span style=&quot;background-color: #ffffff; color: #000000; text-align: start;&quot;&gt;Ubuntu를 탑재해서 언제든 윈도환경에서도 우분투를 사용해 볼 수 있도록 해볼게요.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #000000; text-align: start;&quot;&gt;우선,&amp;nbsp;&lt;br /&gt;&amp;rarr; ① 구글에서&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;&lt;b&gt;&quot;&lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;span&gt; 우분투 다운로드&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&quot;&amp;nbsp; &lt;/b&gt;&lt;/span&gt;또는&lt;span style=&quot;color: #ee2323;&quot;&gt;&lt;b&gt; &quot;&lt;span style=&quot;color: #006dd7;&quot;&gt; Ubuntu Download&lt;/span&gt; &quot;&lt;/b&gt;&lt;/span&gt; 검색합니다.&amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp; &amp;nbsp;그리고 아래 보이는 링크를 클릭해 주세요.&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;11.png&quot; data-origin-width=&quot;904&quot; data-origin-height=&quot;356&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/xTGw1/btszDTSSvLV/f62XVzS9nFP3EfvJshWvO1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/xTGw1/btszDTSSvLV/f62XVzS9nFP3EfvJshWvO1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/xTGw1/btszDTSSvLV/f62XVzS9nFP3EfvJshWvO1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FxTGw1%2FbtszDTSSvLV%2Ff62XVzS9nFP3EfvJshWvO1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;904&quot; height=&quot;356&quot; data-filename=&quot;11.png&quot; data-origin-width=&quot;904&quot; data-origin-height=&quot;356&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #000000; text-align: start;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;12.png&quot; data-origin-width=&quot;1481&quot; data-origin-height=&quot;528&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bGZaWd/btszA2Q47pC/jH7nxOFm3vqwyxF0n3lokk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bGZaWd/btszA2Q47pC/jH7nxOFm3vqwyxF0n3lokk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bGZaWd/btszA2Q47pC/jH7nxOFm3vqwyxF0n3lokk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbGZaWd%2FbtszA2Q47pC%2FjH7nxOFm3vqwyxF0n3lokk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1481&quot; height=&quot;528&quot; data-filename=&quot;12.png&quot; data-origin-width=&quot;1481&quot; data-origin-height=&quot;528&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #000000; text-align: start;&quot;&gt;다운로드 사이트 직접 링크&lt;br /&gt;&lt;a href=&quot;https://ubuntu.com/download/desktop&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://ubuntu.com/download/desktop&lt;/a&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1698898620455&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;website&quot; data-og-title=&quot;https://ubuntu.com/download/desktop&quot; data-og-description=&quot;&quot; data-og-host=&quot;ubuntu.com&quot; data-og-source-url=&quot;https://ubuntu.com/download/desktop&quot; data-og-url=&quot;https://ubuntu.com/download/desktop&quot; data-og-image=&quot;&quot;&gt;&lt;a href=&quot;https://ubuntu.com/download/desktop&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://ubuntu.com/download/desktop&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url();&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;https://ubuntu.com/download/desktop&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;ubuntu.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #000000; text-align: start;&quot;&gt;&amp;rarr; ② VMware를 실행 시키면 아래와 같은 VMware 메인 창이 열리게 되는데요, &lt;span style=&quot;color: #8a3db6;&quot;&gt;&lt;b&gt;Create a New Virtual Machine을&lt;/b&gt;&lt;/span&gt; 클릭합니다.&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;26.png&quot; data-origin-width=&quot;736&quot; data-origin-height=&quot;605&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/uiM4C/btszAkxF4YA/YPzBLTd30Lj51IEUDxAKE1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/uiM4C/btszAkxF4YA/YPzBLTd30Lj51IEUDxAKE1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/uiM4C/btszAkxF4YA/YPzBLTd30Lj51IEUDxAKE1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FuiM4C%2FbtszAkxF4YA%2FYPzBLTd30Lj51IEUDxAKE1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;736&quot; height=&quot;605&quot; data-filename=&quot;26.png&quot; data-origin-width=&quot;736&quot; data-origin-height=&quot;605&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #000000; text-align: start;&quot;&gt;&amp;rarr; 그럼, 아래와 같은 창이 열리는데요,&amp;nbsp; 아래처럼,&amp;nbsp; ①과 ②를 순서대로 클릭하세요.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;27.png&quot; data-origin-width=&quot;759&quot; data-origin-height=&quot;633&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/vHLj2/btszCttRwwO/vrM4DDw46uwlkZ74uw0qCk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/vHLj2/btszCttRwwO/vrM4DDw46uwlkZ74uw0qCk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/vHLj2/btszCttRwwO/vrM4DDw46uwlkZ74uw0qCk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FvHLj2%2FbtszCttRwwO%2FvrM4DDw46uwlkZ74uw0qCk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;759&quot; height=&quot;633&quot; data-filename=&quot;27.png&quot; data-origin-width=&quot;759&quot; data-origin-height=&quot;633&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;rarr; 그리고 열리는 창에서 위에서 받아 놓았던 우분투 이미지 파일(xxx.iso)을 선택 후 NEXT를 클릭해 주세요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;28.png&quot; data-origin-width=&quot;1373&quot; data-origin-height=&quot;755&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bpLIce/btszCFOnBmh/ebbfWhtKUjFdRhTmUv2dk0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bpLIce/btszCFOnBmh/ebbfWhtKUjFdRhTmUv2dk0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bpLIce/btszCFOnBmh/ebbfWhtKUjFdRhTmUv2dk0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbpLIce%2FbtszCFOnBmh%2FebbfWhtKUjFdRhTmUv2dk0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1373&quot; height=&quot;755&quot; data-filename=&quot;28.png&quot; data-origin-width=&quot;1373&quot; data-origin-height=&quot;755&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;29.png&quot; data-origin-width=&quot;428&quot; data-origin-height=&quot;430&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dioCdj/btszCh8j7zy/nRrh7JThWFvKulev6zRBf0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dioCdj/btszCh8j7zy/nRrh7JThWFvKulev6zRBf0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dioCdj/btszCh8j7zy/nRrh7JThWFvKulev6zRBf0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdioCdj%2FbtszCh8j7zy%2FnRrh7JThWFvKulev6zRBf0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;428&quot; height=&quot;430&quot; data-filename=&quot;29.png&quot; data-origin-width=&quot;428&quot; data-origin-height=&quot;430&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;rarr; 계정 관련 정보를 입력 후 잘 기억해 주세요.&amp;nbsp; 만약 ID, Password는 차후에 잊어버리게 되면 밀고 다시 설치해야 하니 잘 기억해 두세요.&amp;nbsp; &amp;nbsp; 여기서는 간단히 user&amp;nbsp; ,&amp;nbsp; &amp;nbsp;1234로 해두었습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;30.png&quot; data-origin-width=&quot;428&quot; data-origin-height=&quot;430&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dF1eHx/btszA1knc7l/8LkAirw94gTSUUfflN70a1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dF1eHx/btszA1knc7l/8LkAirw94gTSUUfflN70a1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dF1eHx/btszA1knc7l/8LkAirw94gTSUUfflN70a1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdF1eHx%2FbtszA1knc7l%2F8LkAirw94gTSUUfflN70a1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;428&quot; height=&quot;430&quot; data-filename=&quot;30.png&quot; data-origin-width=&quot;428&quot; data-origin-height=&quot;430&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;31.png&quot; data-origin-width=&quot;428&quot; data-origin-height=&quot;430&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/GLfO2/btszzXCsTgw/5V9jkRSYVPj0Sl9WVfaqJ0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/GLfO2/btszzXCsTgw/5V9jkRSYVPj0Sl9WVfaqJ0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/GLfO2/btszzXCsTgw/5V9jkRSYVPj0Sl9WVfaqJ0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FGLfO2%2FbtszzXCsTgw%2F5V9jkRSYVPj0Sl9WVfaqJ0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;428&quot; height=&quot;430&quot; data-filename=&quot;31.png&quot; data-origin-width=&quot;428&quot; data-origin-height=&quot;430&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래는 Ubuntu 우분투가 가상 공간으로 디스크를 차지하게 될 영역을 지정하는 화면인데요, 디폴트 값으로 20Gb 정도로 되어 있습니다.&amp;nbsp; 만약 용량이 더 필요하다면 올려서 Next를 클릭하세요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;32.png&quot; data-origin-width=&quot;428&quot; data-origin-height=&quot;430&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/m5nqR/btszA4aiUds/BYDyIWPID5D8eCD7KgA7p0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/m5nqR/btszA4aiUds/BYDyIWPID5D8eCD7KgA7p0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/m5nqR/btszA4aiUds/BYDyIWPID5D8eCD7KgA7p0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fm5nqR%2FbtszA4aiUds%2FBYDyIWPID5D8eCD7KgA7p0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;428&quot; height=&quot;430&quot; data-filename=&quot;32.png&quot; data-origin-width=&quot;428&quot; data-origin-height=&quot;430&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;33.png&quot; data-origin-width=&quot;428&quot; data-origin-height=&quot;430&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/XHigV/btszCFHENGf/uGnbAJz64WhJYtugkH43bK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/XHigV/btszCFHENGf/uGnbAJz64WhJYtugkH43bK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/XHigV/btszCFHENGf/uGnbAJz64WhJYtugkH43bK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FXHigV%2FbtszCFHENGf%2FuGnbAJz64WhJYtugkH43bK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;428&quot; height=&quot;430&quot; data-filename=&quot;33.png&quot; data-origin-width=&quot;428&quot; data-origin-height=&quot;430&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;rarr;&amp;nbsp; 그리고 Finish를 클릭하면 아래처럼 우분투가 실행됩니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;34.png&quot; data-origin-width=&quot;1282&quot; data-origin-height=&quot;911&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bmbqvz/btszCGfsREb/2tJ4yMideuuSygU6q3IOm1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bmbqvz/btszCGfsREb/2tJ4yMideuuSygU6q3IOm1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bmbqvz/btszCGfsREb/2tJ4yMideuuSygU6q3IOm1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbmbqvz%2FbtszCGfsREb%2F2tJ4yMideuuSygU6q3IOm1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1282&quot; height=&quot;911&quot; data-filename=&quot;34.png&quot; data-origin-width=&quot;1282&quot; data-origin-height=&quot;911&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;rarr;&amp;nbsp; 아래는 키보드 언어를 설정하는 화면인데요, 우선 디폴트 값인 영어로 설정하고 넘어가는 것을 추천드립니다. 추후에 한글 폰트와 언어 패키지를 제대로 설치하면 자연히 한글 입력도 가능해집니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;35.png&quot; data-origin-width=&quot;1282&quot; data-origin-height=&quot;857&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/c4JaND/btszCtAGoXv/LOYu5lPLZ4vUQ8DQIXcijK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/c4JaND/btszCtAGoXv/LOYu5lPLZ4vUQ8DQIXcijK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/c4JaND/btszCtAGoXv/LOYu5lPLZ4vUQ8DQIXcijK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fc4JaND%2FbtszCtAGoXv%2FLOYu5lPLZ4vUQ8DQIXcijK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1282&quot; height=&quot;857&quot; data-filename=&quot;35.png&quot; data-origin-width=&quot;1282&quot; data-origin-height=&quot;857&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;rarr; Continue 버튼 클릭하고 아래 이미지를 참고하여 계속 진행해 주세요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;36.png&quot; data-origin-width=&quot;1282&quot; data-origin-height=&quot;857&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/qhRHl/btszzWXSXdl/BR1LuMOt56FuKpVZHkOU70/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/qhRHl/btszzWXSXdl/BR1LuMOt56FuKpVZHkOU70/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/qhRHl/btszzWXSXdl/BR1LuMOt56FuKpVZHkOU70/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FqhRHl%2FbtszzWXSXdl%2FBR1LuMOt56FuKpVZHkOU70%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1282&quot; height=&quot;857&quot; data-filename=&quot;36.png&quot; data-origin-width=&quot;1282&quot; data-origin-height=&quot;857&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;37.png&quot; data-origin-width=&quot;1282&quot; data-origin-height=&quot;857&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/df7DdS/btszzDEidOE/ZuK23idILiB2wKNzscRMn0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/df7DdS/btszzDEidOE/ZuK23idILiB2wKNzscRMn0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/df7DdS/btszzDEidOE/ZuK23idILiB2wKNzscRMn0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fdf7DdS%2FbtszzDEidOE%2FZuK23idILiB2wKNzscRMn0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1282&quot; height=&quot;857&quot; data-filename=&quot;37.png&quot; data-origin-width=&quot;1282&quot; data-origin-height=&quot;857&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;38.png&quot; data-origin-width=&quot;1282&quot; data-origin-height=&quot;857&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/d8yIgT/btszCprs35t/07wKvSMIA0qJjxasThkUCk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/d8yIgT/btszCprs35t/07wKvSMIA0qJjxasThkUCk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/d8yIgT/btszCprs35t/07wKvSMIA0qJjxasThkUCk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fd8yIgT%2FbtszCprs35t%2F07wKvSMIA0qJjxasThkUCk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1282&quot; height=&quot;857&quot; data-filename=&quot;38.png&quot; data-origin-width=&quot;1282&quot; data-origin-height=&quot;857&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;39.png&quot; data-origin-width=&quot;1282&quot; data-origin-height=&quot;857&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/6EpiA/btszC1XZGm1/jl4HsYHKhLnTBJBa4oJgkk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/6EpiA/btszC1XZGm1/jl4HsYHKhLnTBJBa4oJgkk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/6EpiA/btszC1XZGm1/jl4HsYHKhLnTBJBa4oJgkk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F6EpiA%2FbtszC1XZGm1%2Fjl4HsYHKhLnTBJBa4oJgkk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1282&quot; height=&quot;857&quot; data-filename=&quot;39.png&quot; data-origin-width=&quot;1282&quot; data-origin-height=&quot;857&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;rarr; 위에서 입력한 계정 정보를 그대로 입력해 줍니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;40.png&quot; data-origin-width=&quot;1282&quot; data-origin-height=&quot;857&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/9REFG/btszCs2ONZe/BR2DALyuWyoGlZUCPVBrtK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/9REFG/btszCs2ONZe/BR2DALyuWyoGlZUCPVBrtK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/9REFG/btszCs2ONZe/BR2DALyuWyoGlZUCPVBrtK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F9REFG%2FbtszCs2ONZe%2FBR2DALyuWyoGlZUCPVBrtK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1282&quot; height=&quot;857&quot; data-filename=&quot;40.png&quot; data-origin-width=&quot;1282&quot; data-origin-height=&quot;857&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;rarr; 설치 진행되는 모습&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;41.png&quot; data-origin-width=&quot;1282&quot; data-origin-height=&quot;857&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/9erg6/btszzUlsykA/5YKrrvkBOoQZ2VE8fKktX1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/9erg6/btszzUlsykA/5YKrrvkBOoQZ2VE8fKktX1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/9erg6/btszzUlsykA/5YKrrvkBOoQZ2VE8fKktX1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F9erg6%2FbtszzUlsykA%2F5YKrrvkBOoQZ2VE8fKktX1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1282&quot; height=&quot;857&quot; data-filename=&quot;41.png&quot; data-origin-width=&quot;1282&quot; data-origin-height=&quot;857&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;42.png&quot; data-origin-width=&quot;1282&quot; data-origin-height=&quot;857&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/xE4fo/btszCFARIhA/iCR0aRgaKtKKkqqOxoZafK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/xE4fo/btszCFARIhA/iCR0aRgaKtKKkqqOxoZafK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/xE4fo/btszCFARIhA/iCR0aRgaKtKKkqqOxoZafK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FxE4fo%2FbtszCFARIhA%2FiCR0aRgaKtKKkqqOxoZafK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1282&quot; height=&quot;857&quot; data-filename=&quot;42.png&quot; data-origin-width=&quot;1282&quot; data-origin-height=&quot;857&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;rarr;&amp;nbsp; 아래는 구글 혹은 마이크로 소프트 계정이 있을 경우 등록하는 절차인데요, 일단은 Skip 할게요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;43.png&quot; data-origin-width=&quot;1282&quot; data-origin-height=&quot;857&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dDz0WE/btszCuTQJON/oZWyekWpKdtLxxEkhPTVyK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dDz0WE/btszCuTQJON/oZWyekWpKdtLxxEkhPTVyK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dDz0WE/btszCuTQJON/oZWyekWpKdtLxxEkhPTVyK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdDz0WE%2FbtszCuTQJON%2FoZWyekWpKdtLxxEkhPTVyK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1282&quot; height=&quot;857&quot; data-filename=&quot;43.png&quot; data-origin-width=&quot;1282&quot; data-origin-height=&quot;857&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;44.png&quot; data-origin-width=&quot;1282&quot; data-origin-height=&quot;857&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dIGurT/btszCtm5YaC/mS9HVXUrUpxUEgylD45z7K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dIGurT/btszCtm5YaC/mS9HVXUrUpxUEgylD45z7K/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dIGurT/btszCtm5YaC/mS9HVXUrUpxUEgylD45z7K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdIGurT%2FbtszCtm5YaC%2FmS9HVXUrUpxUEgylD45z7K%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1282&quot; height=&quot;857&quot; data-filename=&quot;44.png&quot; data-origin-width=&quot;1282&quot; data-origin-height=&quot;857&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;rarr; 일차적으로 설치 완료 되었으며, 우분투 버전의 업그레이드가 존재할 경우 아래와 같은 창이 뜨는데 업데이트를 해주세요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;45.png&quot; data-origin-width=&quot;1282&quot; data-origin-height=&quot;857&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bwBM37/btszChAu0HE/dVuMYFM7aQkvahr9mmWIq1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bwBM37/btszChAu0HE/dVuMYFM7aQkvahr9mmWIq1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bwBM37/btszChAu0HE/dVuMYFM7aQkvahr9mmWIq1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbwBM37%2FbtszChAu0HE%2FdVuMYFM7aQkvahr9mmWIq1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1282&quot; height=&quot;857&quot; data-filename=&quot;45.png&quot; data-origin-width=&quot;1282&quot; data-origin-height=&quot;857&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;46.png&quot; data-origin-width=&quot;1282&quot; data-origin-height=&quot;857&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/tZSTj/btszCs9yMlL/facDv7X1oX3SZIbO6gxlC1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/tZSTj/btszCs9yMlL/facDv7X1oX3SZIbO6gxlC1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/tZSTj/btszCs9yMlL/facDv7X1oX3SZIbO6gxlC1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FtZSTj%2FbtszCs9yMlL%2FfacDv7X1oX3SZIbO6gxlC1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1282&quot; height=&quot;857&quot; data-filename=&quot;46.png&quot; data-origin-width=&quot;1282&quot; data-origin-height=&quot;857&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;47.png&quot; data-origin-width=&quot;1282&quot; data-origin-height=&quot;857&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/81llB/btszCpZnHJs/TFQBdUHs4HGsnmzkEMahm1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/81llB/btszCpZnHJs/TFQBdUHs4HGsnmzkEMahm1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/81llB/btszCpZnHJs/TFQBdUHs4HGsnmzkEMahm1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F81llB%2FbtszCpZnHJs%2FTFQBdUHs4HGsnmzkEMahm1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1282&quot; height=&quot;857&quot; data-filename=&quot;47.png&quot; data-origin-width=&quot;1282&quot; data-origin-height=&quot;857&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;48.png&quot; data-origin-width=&quot;1282&quot; data-origin-height=&quot;857&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bSkhV7/btszzXWM8qx/IE8wuH6EiqJrjicBkXE7l0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bSkhV7/btszzXWM8qx/IE8wuH6EiqJrjicBkXE7l0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bSkhV7/btszzXWM8qx/IE8wuH6EiqJrjicBkXE7l0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbSkhV7%2FbtszzXWM8qx%2FIE8wuH6EiqJrjicBkXE7l0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1282&quot; height=&quot;857&quot; data-filename=&quot;48.png&quot; data-origin-width=&quot;1282&quot; data-origin-height=&quot;857&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;rarr; 그리고 마지막으로 필요한 소프트웨어가 있을 경우 설치하라는 창이 뜨고 설치가 마무리 되었습니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;49.png&quot; data-origin-width=&quot;1282&quot; data-origin-height=&quot;857&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/z4sSG/btszChAu0Bi/zbCkFOem6Afz07XkjwZRLK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/z4sSG/btszChAu0Bi/zbCkFOem6Afz07XkjwZRLK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/z4sSG/btszChAu0Bi/zbCkFOem6Afz07XkjwZRLK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fz4sSG%2FbtszChAu0Bi%2FzbCkFOem6Afz07XkjwZRLK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1282&quot; height=&quot;857&quot; data-filename=&quot;49.png&quot; data-origin-width=&quot;1282&quot; data-origin-height=&quot;857&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;50.png&quot; data-origin-width=&quot;1282&quot; data-origin-height=&quot;857&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/Q9Hag/btszCKa4TE8/kXK5RehqbZNJmahp6QtPM0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Q9Hag/btszCKa4TE8/kXK5RehqbZNJmahp6QtPM0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Q9Hag/btszCKa4TE8/kXK5RehqbZNJmahp6QtPM0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FQ9Hag%2FbtszCKa4TE8%2FkXK5RehqbZNJmahp6QtPM0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1282&quot; height=&quot;857&quot; data-filename=&quot;50.png&quot; data-origin-width=&quot;1282&quot; data-origin-height=&quot;857&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #000000; text-align: start;&quot;&gt;다음 시간에는 우분투에서 한글 설정 및 사용에 대해 다루어 볼게요.&lt;br /&gt;감사합니다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>라즈베리파이/리눅스(Linux)</category>
      <category>ubuntu install</category>
      <category>VMware에 우분투 설치</category>
      <category>우분투 설치</category>
      <category>윈도에 가상머신으로 우분투Ubuntu설치하기</category>
      <author>엑소더스팩토리</author>
      <guid isPermaLink="true">https://rasino.tistory.com/375</guid>
      <comments>https://rasino.tistory.com/375#entry375comment</comments>
      <pubDate>Thu, 2 Nov 2023 15:00:43 +0900</pubDate>
    </item>
    <item>
      <title>【 우분투#1 】윈도에 VMware 가상 머신 설치 (Ubuntu 우분투 설치준비)</title>
      <link>https://rasino.tistory.com/374</link>
      <description>&lt;p data-ke-size=&quot;size18&quot;&gt;윈도 OS 상에서 리눅스 혹은 또 다른 운영체제를 돌리기 위해서는 기존 OS를 살려두고 논리적으로 분할된 하드디스크의 일정한 공간을 할당받아 멀티 OS 구동을 지원해 주는 소프트웨어가 필요합니다.&amp;nbsp;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;대표적으로 VMware(브이엠웨어)와 Virture-Box(버추얼 박스)가 있는데요,&amp;nbsp; 버추얼 박스는 오라클이 개발한 오픈 소스 가상화 소프트웨어이고 따라서 무료로 이용할 수 있습니다.&amp;nbsp;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;VMware는 가상화 전문 소프트웨어 기업에서 제공하는 툴로 &lt;span style=&quot;background-color: #ffffff; color: #000000; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;VMware vSphere, VMware Workstation, VMware Fusion, VMware Horizon 등의 제품이 있고,&amp;nbsp; 우리가 주로 사용하는 제품은 VMware Workstation입니다.&amp;nbsp;&amp;nbsp;&lt;br /&gt;그리고 Workstation 버전은 Pro 버전과 Player 버전으로 나뉘어 있는데, Pro 버전은 30일간만 무료사용가능한 트라이얼 버전이고, Player 버전은 무료로 계속 사용할 수 있는 버전이기 때문에&amp;nbsp; VMware Workstation Player 버전을 다운로드하여 사용하면 됩니다.&amp;nbsp; 이 버전은 비상업적인 용도에 한해서 개인이 사용하는 것은 무료로 이용할 수 있습니다.&amp;nbsp;&lt;br /&gt;따라서 VMware Workstation 가상머신을 설치하고 여기에 Ubuntu를 설치해 보도록 할게요.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #000000; text-align: start;&quot;&gt;우선, &lt;br /&gt;&amp;rarr; ① 구글에서 &lt;span style=&quot;color: #ee2323;&quot;&gt;&lt;b&gt;&quot;&lt;span style=&quot;color: #006dd7;&quot;&gt; VMware workstation player download&lt;/span&gt; &quot;&lt;/b&gt;&lt;/span&gt;로 검색합니다.&amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp; &amp;nbsp;그리고 아래 보이는 링크를 클릭해 주세요.&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;00.png&quot; data-origin-width=&quot;1095&quot; data-origin-height=&quot;459&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/NTqtE/btszyT0KbWW/wbVUa9eE55JETwZ00nKKn1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/NTqtE/btszyT0KbWW/wbVUa9eE55JETwZ00nKKn1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/NTqtE/btszyT0KbWW/wbVUa9eE55JETwZ00nKKn1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FNTqtE%2FbtszyT0KbWW%2FwbVUa9eE55JETwZ00nKKn1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1095&quot; height=&quot;459&quot; data-filename=&quot;00.png&quot; data-origin-width=&quot;1095&quot; data-origin-height=&quot;459&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #000000; text-align: start;&quot;&gt;사이트 링크 :&amp;nbsp; &lt;a href=&quot;https://www.vmware.com/kr/products/workstation-player/workstation-player-evaluation.html&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://www.vmware.com/kr/products/workstation-player/workstation-player-evaluation.html&lt;/a&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1698827638528&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;product&quot; data-og-title=&quot;Download VMware Workstation Player | VMware&quot; data-og-description=&quot;Download VMware Workstation Player for free today to run a single virtual machine on a Windows or Linux PC, and experience the multi-functional capabilities.&quot; data-og-host=&quot;www.vmware.com&quot; data-og-source-url=&quot;https://www.vmware.com/kr/products/workstation-player/workstation-player-evaluation.html&quot; data-og-url=&quot;https://www.vmware.com/products/workstation-player/workstation-player-evaluation.html&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/f3CRl/hyUnNLzqpL/ECcHPhrqZeTmqUHIV6KuUk/img.png?width=400&amp;amp;height=400&amp;amp;face=0_0_400_400,https://scrap.kakaocdn.net/dn/PJvT4/hyUnJJafG6/KbLK7hVThQ0UIwd90nXUT1/img.png?width=400&amp;amp;height=400&amp;amp;face=0_0_400_400&quot;&gt;&lt;a href=&quot;https://www.vmware.com/kr/products/workstation-player/workstation-player-evaluation.html&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://www.vmware.com/kr/products/workstation-player/workstation-player-evaluation.html&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/f3CRl/hyUnNLzqpL/ECcHPhrqZeTmqUHIV6KuUk/img.png?width=400&amp;amp;height=400&amp;amp;face=0_0_400_400,https://scrap.kakaocdn.net/dn/PJvT4/hyUnJJafG6/KbLK7hVThQ0UIwd90nXUT1/img.png?width=400&amp;amp;height=400&amp;amp;face=0_0_400_400');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;Download VMware Workstation Player | VMware&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;Download VMware Workstation Player for free today to run a single virtual machine on a Windows or Linux PC, and experience the multi-functional capabilities.&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;www.vmware.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #000000; text-align: start;&quot;&gt;&amp;rarr;&lt;span&gt;&amp;nbsp; ②&amp;nbsp; VMware download 사이트가 나오면 화면을 아래로 스크롤해보면 무료로 설치할 수 있는 버전이 아래 이미지처럼 나타나며, 클릭하면 탐색창 DOWNLOAD 폴더로 다운로드가 시작됩니다.&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;01.png&quot; data-origin-width=&quot;1337&quot; data-origin-height=&quot;909&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bUgyI6/btszyJ5bkom/dd5zXlMuHyTUr2EwQh9R50/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bUgyI6/btszyJ5bkom/dd5zXlMuHyTUr2EwQh9R50/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bUgyI6/btszyJ5bkom/dd5zXlMuHyTUr2EwQh9R50/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbUgyI6%2FbtszyJ5bkom%2Fdd5zXlMuHyTUr2EwQh9R50%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1337&quot; height=&quot;909&quot; data-filename=&quot;01.png&quot; data-origin-width=&quot;1337&quot; data-origin-height=&quot;909&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;그럼, 탐색창을 띄우고 다운로드 폴더로 가서 VMware player 설치 파일을 실행시켜 주세요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;01-1.png&quot; data-origin-width=&quot;311&quot; data-origin-height=&quot;299&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dn14hL/btszyFB32B9/kxVz8Nkky0ihEerkTtBIOk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dn14hL/btszyFB32B9/kxVz8Nkky0ihEerkTtBIOk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dn14hL/btszyFB32B9/kxVz8Nkky0ihEerkTtBIOk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fdn14hL%2FbtszyFB32B9%2FkxVz8Nkky0ihEerkTtBIOk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;311&quot; height=&quot;299&quot; data-filename=&quot;01-1.png&quot; data-origin-width=&quot;311&quot; data-origin-height=&quot;299&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;아래 이미지가 보이면 Next를 클릭!&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;02.png&quot; data-origin-width=&quot;495&quot; data-origin-height=&quot;392&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/baqd7G/btszA1X6iHG/YtoKoytRkyTCktYjOE7pa1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/baqd7G/btszA1X6iHG/YtoKoytRkyTCktYjOE7pa1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/baqd7G/btszA1X6iHG/YtoKoytRkyTCktYjOE7pa1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbaqd7G%2FbtszA1X6iHG%2FYtoKoytRkyTCktYjOE7pa1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;495&quot; height=&quot;392&quot; data-filename=&quot;02.png&quot; data-origin-width=&quot;495&quot; data-origin-height=&quot;392&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;I accept에 체크를 하고&amp;nbsp; Next를 클릭!&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;03.png&quot; data-origin-width=&quot;495&quot; data-origin-height=&quot;392&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/4tJUf/btszCMslzhC/rAa0kHzY3CbY2nEY7Uphg1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/4tJUf/btszCMslzhC/rAa0kHzY3CbY2nEY7Uphg1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/4tJUf/btszCMslzhC/rAa0kHzY3CbY2nEY7Uphg1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F4tJUf%2FbtszCMslzhC%2FrAa0kHzY3CbY2nEY7Uphg1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;495&quot; height=&quot;392&quot; data-filename=&quot;03.png&quot; data-origin-width=&quot;495&quot; data-origin-height=&quot;392&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;아래와 같이 체크 하고 다시 Next 클릭!&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;04.png&quot; data-origin-width=&quot;495&quot; data-origin-height=&quot;392&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bmAOzd/btszAYgdJMz/nU15KvXjBeKZ7zQW71kQ51/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bmAOzd/btszAYgdJMz/nU15KvXjBeKZ7zQW71kQ51/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bmAOzd/btszAYgdJMz/nU15KvXjBeKZ7zQW71kQ51/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbmAOzd%2FbtszAYgdJMz%2FnU15KvXjBeKZ7zQW71kQ51%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;495&quot; height=&quot;392&quot; data-filename=&quot;04.png&quot; data-origin-width=&quot;495&quot; data-origin-height=&quot;392&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;아래와 같이 체크 하고 다시 Next 클릭!&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;05.png&quot; data-origin-width=&quot;495&quot; data-origin-height=&quot;392&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dptekK/btszzWwaovY/75ly4mg47QnSuZcIdznXkK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dptekK/btszzWwaovY/75ly4mg47QnSuZcIdznXkK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dptekK/btszzWwaovY/75ly4mg47QnSuZcIdznXkK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdptekK%2FbtszzWwaovY%2F75ly4mg47QnSuZcIdznXkK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;495&quot; height=&quot;392&quot; data-filename=&quot;05.png&quot; data-origin-width=&quot;495&quot; data-origin-height=&quot;392&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #000000; text-align: start;&quot;&gt;&lt;span&gt; 아래와 같이 체크 하고 다시 Next 클릭! &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;06.png&quot; data-origin-width=&quot;495&quot; data-origin-height=&quot;392&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bC2yt2/btszDAk5c0y/uBAJDdUVkh7kpn9pKuOme0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bC2yt2/btszDAk5c0y/uBAJDdUVkh7kpn9pKuOme0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bC2yt2/btszDAk5c0y/uBAJDdUVkh7kpn9pKuOme0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbC2yt2%2FbtszDAk5c0y%2FuBAJDdUVkh7kpn9pKuOme0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;495&quot; height=&quot;392&quot; data-filename=&quot;06.png&quot; data-origin-width=&quot;495&quot; data-origin-height=&quot;392&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #000000; text-align: start;&quot;&gt;&lt;span&gt;Install 버튼을 클릭하면 아래처럼 설치가 진행됩니다.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;07.png&quot; data-origin-width=&quot;495&quot; data-origin-height=&quot;392&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/PXvga/btszyLPHgJE/IFF1BsZklBzg6KyvS5GG1k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/PXvga/btszyLPHgJE/IFF1BsZklBzg6KyvS5GG1k/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/PXvga/btszyLPHgJE/IFF1BsZklBzg6KyvS5GG1k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FPXvga%2FbtszyLPHgJE%2FIFF1BsZklBzg6KyvS5GG1k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;495&quot; height=&quot;392&quot; data-filename=&quot;07.png&quot; data-origin-width=&quot;495&quot; data-origin-height=&quot;392&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;마지막으로 Finish 선택하면 기본적으로 설치가 완료되는데요,&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;08.png&quot; data-origin-width=&quot;495&quot; data-origin-height=&quot;392&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/6d5Xc/btszCLtDi6W/c8lvyIzJpwXoEkBv1u2KRk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/6d5Xc/btszCLtDi6W/c8lvyIzJpwXoEkBv1u2KRk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/6d5Xc/btszCLtDi6W/c8lvyIzJpwXoEkBv1u2KRk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F6d5Xc%2FbtszCLtDi6W%2Fc8lvyIzJpwXoEkBv1u2KRk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;495&quot; height=&quot;392&quot; data-filename=&quot;08.png&quot; data-origin-width=&quot;495&quot; data-origin-height=&quot;392&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;바탕화면 또는 시작메뉴에 있는 VMware 아이콘을 클릭해서 실행합니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;13.png&quot; data-origin-width=&quot;88&quot; data-origin-height=&quot;111&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/4WLi0/btszA0E5Rbh/K0zWu1DtwglC5XBDZOZnck/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/4WLi0/btszA0E5Rbh/K0zWu1DtwglC5XBDZOZnck/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/4WLi0/btszA0E5Rbh/K0zWu1DtwglC5XBDZOZnck/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F4WLi0%2FbtszA0E5Rbh%2FK0zWu1DtwglC5XBDZOZnck%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;88&quot; height=&quot;111&quot; data-filename=&quot;13.png&quot; data-origin-width=&quot;88&quot; data-origin-height=&quot;111&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;그리고 아래 이미지를 참고하여 계속 진행해 주세요&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;14.png&quot; data-origin-width=&quot;320&quot; data-origin-height=&quot;303&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/nRIcf/btszzULXTuj/O3lkKKlKj3gD461MVscmIK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/nRIcf/btszzULXTuj/O3lkKKlKj3gD461MVscmIK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/nRIcf/btszzULXTuj/O3lkKKlKj3gD461MVscmIK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FnRIcf%2FbtszzULXTuj%2FO3lkKKlKj3gD461MVscmIK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;320&quot; height=&quot;303&quot; data-filename=&quot;14.png&quot; data-origin-width=&quot;320&quot; data-origin-height=&quot;303&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;15.png&quot; data-origin-width=&quot;320&quot; data-origin-height=&quot;303&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cA29XZ/btszCrhTPKs/4a73LRkXW6M7PPMfjS4ve1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cA29XZ/btszCrhTPKs/4a73LRkXW6M7PPMfjS4ve1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cA29XZ/btszCrhTPKs/4a73LRkXW6M7PPMfjS4ve1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcA29XZ%2FbtszCrhTPKs%2F4a73LRkXW6M7PPMfjS4ve1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;320&quot; height=&quot;303&quot; data-filename=&quot;15.png&quot; data-origin-width=&quot;320&quot; data-origin-height=&quot;303&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;16.png&quot; data-origin-width=&quot;736&quot; data-origin-height=&quot;605&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/6NMq0/btszC5MbQse/zsnY6P6H9snsN91EIoBOj1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/6NMq0/btszC5MbQse/zsnY6P6H9snsN91EIoBOj1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/6NMq0/btszC5MbQse/zsnY6P6H9snsN91EIoBOj1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F6NMq0%2FbtszC5MbQse%2FzsnY6P6H9snsN91EIoBOj1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;736&quot; height=&quot;605&quot; data-filename=&quot;16.png&quot; data-origin-width=&quot;736&quot; data-origin-height=&quot;605&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;자,&amp;nbsp; 여기까지 설치하면 기본적으로 현재시점으로 다운로드하여서 설치되는 VMware Workstation Player 17 버전의 설치가 끝납니다.&amp;nbsp; 이렇게만 설치하고 그대로 사용해도 좋지만,&amp;nbsp; &amp;nbsp;설치 후 바로 아래처럼 17.5 버전에 대한 업데이트를 할 수 있다는 메시지를 띄워주는데요, 보통의 경우 여러 가지 개선사항이 있을 수 있기 때문에 업그레이드를 해볼게요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;17.png&quot; data-origin-width=&quot;1463&quot; data-origin-height=&quot;696&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/clEHkc/btszyI6twl6/hUIU1YGD77cHqUE2bCqW70/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/clEHkc/btszyI6twl6/hUIU1YGD77cHqUE2bCqW70/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/clEHkc/btszyI6twl6/hUIU1YGD77cHqUE2bCqW70/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FclEHkc%2FbtszyI6twl6%2FhUIU1YGD77cHqUE2bCqW70%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1463&quot; height=&quot;696&quot; data-filename=&quot;17.png&quot; data-origin-width=&quot;1463&quot; data-origin-height=&quot;696&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;여기서 바로 Download and Install 버튼을 클릭해도 좋지만, 중간에 재부팅을 해야 제대로 진행 되기에,&amp;nbsp; 지금 시점에 재부팅한 번 하는 것도 좋습니다.&amp;nbsp; &amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;18.png&quot; data-origin-width=&quot;761&quot; data-origin-height=&quot;643&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bvJVH3/btszyJEnNDh/lha0k58ufo1aX2nCYnPJr0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bvJVH3/btszyJEnNDh/lha0k58ufo1aX2nCYnPJr0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bvJVH3/btszyJEnNDh/lha0k58ufo1aX2nCYnPJr0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbvJVH3%2FbtszyJEnNDh%2Flha0k58ufo1aX2nCYnPJr0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;761&quot; height=&quot;643&quot; data-filename=&quot;18.png&quot; data-origin-width=&quot;761&quot; data-origin-height=&quot;643&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp; 만약 재부팅없이 바로 진행하면 아래처럼 재부팅해야 한다는 메시지를 띄우게 됩니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;19.png&quot; data-origin-width=&quot;1207&quot; data-origin-height=&quot;673&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/9azbO/btszCtNxvom/HkgNdJHmBUt5dAjPWcORQk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/9azbO/btszCtNxvom/HkgNdJHmBUt5dAjPWcORQk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/9azbO/btszCtNxvom/HkgNdJHmBUt5dAjPWcORQk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F9azbO%2FbtszCtNxvom%2FHkgNdJHmBUt5dAjPWcORQk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1207&quot; height=&quot;673&quot; data-filename=&quot;19.png&quot; data-origin-width=&quot;1207&quot; data-origin-height=&quot;673&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;그래서,&amp;nbsp; 재부팅하거나 하여 다시 VMware 아이콘을 실행시키고 있으면, 아래처럼 다시 업데이트 메시지가 뜨는데, 다시&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;Download and Install 버튼을 클릭합니다.&amp;nbsp;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;20.png&quot; data-origin-width=&quot;1087&quot; data-origin-height=&quot;691&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dlBhRe/btszCiFuWya/GSI8K12893257KaVoqCnb1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dlBhRe/btszCiFuWya/GSI8K12893257KaVoqCnb1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dlBhRe/btszCiFuWya/GSI8K12893257KaVoqCnb1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdlBhRe%2FbtszCiFuWya%2FGSI8K12893257KaVoqCnb1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1087&quot; height=&quot;691&quot; data-filename=&quot;20.png&quot; data-origin-width=&quot;1087&quot; data-origin-height=&quot;691&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;그리고 업데이트용 설치파일이 모두 다운로드되고 나면 아래처럼, 지금 실행되고 있는 17 Player 프로그램을 닫아야 설치업데이트)을 진행할 수 있다는 메시지를 띄우기 때문에,&amp;nbsp; 배경에 깔린 프로그램을 닫아줍니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;21.png&quot; data-origin-width=&quot;1233&quot; data-origin-height=&quot;753&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/rmlZJ/btszCh7GaVi/KbQ3xVUet6KDAKwNivZiU0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/rmlZJ/btszCh7GaVi/KbQ3xVUet6KDAKwNivZiU0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/rmlZJ/btszCh7GaVi/KbQ3xVUet6KDAKwNivZiU0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FrmlZJ%2FbtszCh7GaVi%2FKbQ3xVUet6KDAKwNivZiU0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1233&quot; height=&quot;753&quot; data-filename=&quot;21.png&quot; data-origin-width=&quot;1233&quot; data-origin-height=&quot;753&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;그러면, 처음 설치할 때와 같은 화면들이 동일하게 이어지니,&amp;nbsp; 위에 설명드린 이미지를 참고해서 설치를 완료해 보세요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;22.png&quot; data-origin-width=&quot;495&quot; data-origin-height=&quot;392&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/8zbjb/btszyH7EVt9/yf3aokQ64DCQ8xvNuS4ec0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/8zbjb/btszyH7EVt9/yf3aokQ64DCQ8xvNuS4ec0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/8zbjb/btszyH7EVt9/yf3aokQ64DCQ8xvNuS4ec0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F8zbjb%2FbtszyH7EVt9%2Fyf3aokQ64DCQ8xvNuS4ec0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;495&quot; height=&quot;392&quot; data-filename=&quot;22.png&quot; data-origin-width=&quot;495&quot; data-origin-height=&quot;392&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;23.png&quot; data-origin-width=&quot;495&quot; data-origin-height=&quot;392&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bzI5hk/btszy5f7iTc/H8xxP9963rObe8RdZvxqIK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bzI5hk/btszy5f7iTc/H8xxP9963rObe8RdZvxqIK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bzI5hk/btszy5f7iTc/H8xxP9963rObe8RdZvxqIK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbzI5hk%2Fbtszy5f7iTc%2FH8xxP9963rObe8RdZvxqIK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;495&quot; height=&quot;392&quot; data-filename=&quot;23.png&quot; data-origin-width=&quot;495&quot; data-origin-height=&quot;392&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;이렇게 17.5 버전으로 업그레이드가 완료되고 다시 실행 시키면 아래처럼 가상툴을 본격적으로 사용할 수 있게 되며,&amp;nbsp; 다음 게시글에 우분투 최신버전을 설치해 보도록 하겠습니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;16.png&quot; data-origin-width=&quot;736&quot; data-origin-height=&quot;605&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/6NMq0/btszC5MbQse/zsnY6P6H9snsN91EIoBOj1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/6NMq0/btszC5MbQse/zsnY6P6H9snsN91EIoBOj1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/6NMq0/btszC5MbQse/zsnY6P6H9snsN91EIoBOj1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F6NMq0%2FbtszC5MbQse%2FzsnY6P6H9snsN91EIoBOj1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;736&quot; height=&quot;605&quot; data-filename=&quot;16.png&quot; data-origin-width=&quot;736&quot; data-origin-height=&quot;605&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;※&amp;nbsp; 영상을 보며 설치 따라하기 (아래 유튜브 영상 클릭!)&lt;/p&gt;
&lt;figure data-ke-type=&quot;video&quot; data-ke-style=&quot;alignCenter&quot; data-video-host=&quot;youtube&quot; data-video-url=&quot;https://www.youtube.com/watch?v=ejo88AzgK9Y&quot; data-video-thumbnail=&quot;https://scrap.kakaocdn.net/dn/gcgFD/hyUrxbWkCV/2kaotXe7nzYjPzhnkAmCW0/img.jpg?width=1280&amp;amp;height=720&amp;amp;face=0_0_1280_720&quot; data-video-width=&quot;860&quot; data-video-height=&quot;484&quot; data-video-origin-width=&quot;860&quot; data-video-origin-height=&quot;484&quot; data-ke-mobilestyle=&quot;widthContent&quot; data-original-url=&quot;&quot; data-video-title=&quot;&quot;&gt;&lt;iframe src=&quot;https://www.youtube.com/embed/ejo88AzgK9Y&quot; width=&quot;860&quot; height=&quot;484&quot; frameborder=&quot;&quot; allowfullscreen=&quot;true&quot;&gt;&lt;/iframe&gt;
&lt;figcaption style=&quot;display: none;&quot;&gt;&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;figure data-ke-type=&quot;video&quot; data-ke-style=&quot;alignCenter&quot; data-video-host=&quot;kakaotv&quot; data-video-url=&quot;https://tv.kakao.com/v/442366868&quot; data-video-thumbnail=&quot;https://scrap.kakaocdn.net/dn/bini6l/hyUu0jeBtZ/kPrMrGU19mGDI0oKTShMDK/img.jpg?width=1920&amp;amp;height=1080&amp;amp;face=0_0_1920_1080,https://scrap.kakaocdn.net/dn/b3GzBb/hyUuWA8LoX/9lkfYmcnwSXrKOba95cbOK/img.jpg?width=1920&amp;amp;height=1080&amp;amp;face=0_0_1920_1080&quot; data-video-width=&quot;860&quot; data-video-height=&quot;484&quot; data-video-origin-width=&quot;860&quot; data-video-origin-height=&quot;484&quot; data-ke-mobilestyle=&quot;widthContent&quot; data-video-play-service=&quot;daum_tistory&quot; data-original-url=&quot;&quot; data-video-title=&quot;&quot;&gt;&lt;iframe src=&quot;https://play-tv.kakao.com/embed/player/cliplink/442366868?service=daum_tistory&quot; width=&quot;860&quot; height=&quot;484&quot; frameborder=&quot;0&quot; allowfullscreen=&quot;true&quot;&gt;&lt;/iframe&gt;
&lt;figcaption style=&quot;display: none;&quot;&gt;&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;또는 아래 티스토리 영상 클릭!&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;</description>
      <category>라즈베리파이/리눅스(Linux)</category>
      <category>VMware 브이엠웨어 설치 방법</category>
      <category>멀티 OS 설치하기</category>
      <category>운영체제 OS 가상머신 설치하기</category>
      <category>윈도에서 다른 OS 설치하기</category>
      <author>엑소더스팩토리</author>
      <guid isPermaLink="true">https://rasino.tistory.com/374</guid>
      <comments>https://rasino.tistory.com/374#entry374comment</comments>
      <pubDate>Wed, 1 Nov 2023 17:32:32 +0900</pubDate>
    </item>
    <item>
      <title>【 아두이노Nano33#4】NANO33IoT BLE 저전력 블루투스 사용설명서 #2 (BLE로 도어락 솔레노이드 제어)</title>
      <link>https://rasino.tistory.com/372</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Nano33ioT-BLE-기초-2편-1.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1080&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bJMwS2/btsy3PYN6Ls/57m26eu1bmPNc8hZ7pHkN0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bJMwS2/btsy3PYN6Ls/57m26eu1bmPNc8hZ7pHkN0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bJMwS2/btsy3PYN6Ls/57m26eu1bmPNc8hZ7pHkN0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbJMwS2%2Fbtsy3PYN6Ls%2F57m26eu1bmPNc8hZ7pHkN0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1920&quot; height=&quot;1080&quot; data-filename=&quot;Nano33ioT-BLE-기초-2편-1.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1080&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;3회에 걸쳐 Nano33 ioT 보드의 BLE 저전력 블루투스를 사용하는 다양한 방법에 대해 다루고 있습니다.&amp;nbsp; 아두이노 나노33 보드시리즈는 콤팩트하면서 사용법이 아두이노 우노(나노)와 거의 동일하여 쉽게 접근가능하고 여기에 더해 WiFi기능과 저전력 블루투스 기능을 활용할 수 있는 매우 장점이 큰 보드입니다. 다만 유사한 기능을 제공하는 ESP32 보드에 비해 단가가 조금 나가는 단점이 있지만 아두이노 정품 보드의 정통성?을 이어받아 안정적이고 불량률이 거의 없다는 점이 장점인 보드입니다.&amp;nbsp; 기본적인 스펙과 사용법은 아래, 이전 게시글을 참고하시면 상세하게 파악할 수 있으니 참고해 보세요.&lt;/p&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;【 Nano33 IoT 선수학습 】&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;1.&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;a style=&quot;color: #0070d1;&quot; href=&quot;https://rasino.tistory.com/301&quot;&gt;【 아두이노Nano33#1】 NANO 33 IoT 처음사용 설명서&lt;/a&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;2.&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;a style=&quot;color: #0070d1;&quot; href=&quot;https://rasino.tistory.com/302&quot;&gt;【 아두이노Nano33#1-2】 NANO 33 IoT 처음사용 설명서 #1-2 (LSM6DS3 센서 테스트)&lt;/a&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;(자이로센서 등등)&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;3.&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;a style=&quot;color: #0070d1;&quot; href=&quot;https://rasino.tistory.com/310&quot;&gt;【 아두이노Nano33#2】 NANO 33 IoT 처음사용 설명서 2편 WiFi 활용하기&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;4. &lt;a href=&quot;https://rasino.tistory.com/369&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;【 아두이노Nano33#3】 NANO 33 IoT BLE 저전력 블루투스 사용설명서 #1 (BLE로 LED &amp;amp; 서보모터 제어하기)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;1편에서는 BLE와 UUID가 무엇인지? 통신하는 방식에 대해 알아보았고BLE를 이용해서 LED와 서보모터를 간단히 제어해 보았습니다.&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;이번 2편에서는 BLE 통신으로 릴레이 모듈을 이용한 도어 솔레노이드를 제어해 보겠습니다.&lt;br /&gt;아울러 사실감을 주기 위해 미니어처 도어를 3D프린팅 하여 보여드리려고 합니다.&lt;br /&gt;다음 3편에서는 스마트폰으로 제어해 볼 수 있도록 앱인벤터를 활용하는 것까지 다루어 보겠습니다.&lt;br /&gt;사전 준비로 Nano33 ioT 보드를 사용하기 위한 환경 설정과 예시 코드는 1편을 참고해 주세요.&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;h3 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;【 학습 목표 】&lt;/b&gt;&lt;/h3&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #5733b1;&quot;&gt;&amp;lt;1편&amp;gt;&amp;nbsp; Nano33 기본 환경설정과 BLE 페어링 후 스위치로 LED On/Off 제어하기&lt;/span&gt;&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; ① BLE(UUID)에 대한 이해와 nano33 BLE 사용을 위한 기본 환경 설정(보드&amp;amp;라이브러리 설치)&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; ② Nano33 BLE&amp;nbsp; 스캔과 페어링&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; ③ Nano33 스위치회로와 LED회로 제작 후 블루투스(BLE)로 제어하기&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; ④ 서보모터 스위치로 제어하기&lt;/p&gt;
&lt;h4 style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;&lt;b&gt;&amp;lt;2 편&amp;gt; 블루투스로 도어(Door 문)&amp;nbsp; 잠금장치(솔레노이드) 열고 닫기&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;b&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; ① 주요 부품 소개 ( 솔레노이드 / 솔레노이드 잠금걸쇠 / 릴레이 )&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; ② 도어 미니어처 제작 (3D 모델링과 3D 프린팅)&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; ③ 블루투스(BLE)로 도어 열고 닫기&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;/h4&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #5733b1;&quot;&gt;&amp;lt;3 편&amp;gt; 앱 인벤터(App Inventor) 만들고 스마트폰으로 도어 열고 닫기&lt;/span&gt;&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; ① nRF Connect 앱 활용해 보기 (LED 기본 제어)&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; ② 블루투스 스캔 및 연결과 같은 기본 앱 기능 만들고 LED 제어해 보기&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; ③ 앱 안정성 높이고 연결하려는 BLE장치 바로 연결시키기&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; ④ LED 제어와 Door 제어 결합된 앱 만들기&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size20&quot;&gt;&amp;lt; Nano33 ioT 스펙과 기본 정보 &amp;gt;&lt;/h4&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;Nano33 보드 시리즈 스펙 정보&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;나노보드 분류(Rasino).png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1080&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/UpPQy/btsy2plfMrs/DbVXyQc1KjsLgPwqXki1VK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/UpPQy/btsy2plfMrs/DbVXyQc1KjsLgPwqXki1VK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/UpPQy/btsy2plfMrs/DbVXyQc1KjsLgPwqXki1VK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FUpPQy%2Fbtsy2plfMrs%2FDbVXyQc1KjsLgPwqXki1VK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1920&quot; height=&quot;1080&quot; data-filename=&quot;나노보드 분류(Rasino).png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1080&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;Nano33 시리즈 핀 배열&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Nano-33-IOT-board_Pinout_1.jpg&quot; data-origin-width=&quot;877&quot; data-origin-height=&quot;553&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bA1IBV/btsy04uyQ1J/GOBMYiZV8pYKWRreDK2iHK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bA1IBV/btsy04uyQ1J/GOBMYiZV8pYKWRreDK2iHK/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bA1IBV/btsy04uyQ1J/GOBMYiZV8pYKWRreDK2iHK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbA1IBV%2Fbtsy04uyQ1J%2FGOBMYiZV8pYKWRreDK2iHK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;877&quot; height=&quot;553&quot; data-filename=&quot;Nano-33-IOT-board_Pinout_1.jpg&quot; data-origin-width=&quot;877&quot; data-origin-height=&quot;553&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;color: #5733b1;&quot;&gt;&lt;b&gt;&amp;lt;2편&amp;gt;&amp;nbsp; Nano33 ioT 블루투스(BLE)로 도어록 솔레노이드 제어하기&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size20&quot;&gt;【 실습 준비 】&lt;/h4&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;이번 실습을 위해 필요한 준비물입니다. 아래와 같은 재료를 준비하면 실습을 진행할 수 있습니다.&lt;br /&gt;스위치가 연결된 보드는 실습 1)의 재료와 연결이 같습니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Nano33-BLE--2편-실습준비물.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1080&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/6L2G5/btsyWgJnugK/iPEFyv6BWZKWBkxakdeoik/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/6L2G5/btsyWgJnugK/iPEFyv6BWZKWBkxakdeoik/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/6L2G5/btsyWgJnugK/iPEFyv6BWZKWBkxakdeoik/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F6L2G5%2FbtsyWgJnugK%2FiPEFyv6BWZKWBkxakdeoik%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1920&quot; height=&quot;1080&quot; data-filename=&quot;Nano33-BLE--2편-실습준비물.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1080&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;-&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt;Nano33 ioT 보드&lt;/b&gt;&lt;/span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;X&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;b&gt;2개&lt;/b&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;이상&lt;br /&gt;-&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt;브레드 보드&lt;/b&gt;&lt;/span&gt;(400핀 또는 840핀) X&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;b&gt;2개&lt;/b&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;이상&lt;br /&gt;-&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt;LED&lt;/b&gt;&lt;/span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;X&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;b&gt;1개&lt;/b&gt;&lt;br /&gt;-&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt;저항 220옴&lt;/b&gt;&lt;/span&gt;(150Ω~470Ω 가능)&amp;nbsp; X&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;b&gt;1개&lt;br /&gt;&lt;/b&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;-&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt;저항 10K옴&lt;/b&gt;&lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;(4.7KΩ~10KΩ 가능)&amp;nbsp; X&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;1개&lt;/b&gt;&lt;br /&gt;-&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt;푸시 버튼&lt;/b&gt;&lt;/span&gt;(종류 모양 상관없음) X&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;b&gt;1개&lt;/b&gt;&amp;nbsp;&lt;br /&gt;-&lt;span&gt; &lt;/span&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt;도어록 솔레노이드 &amp;amp; 걸쇠 &lt;/b&gt;&lt;/span&gt;(모델명 SM1054, 12V, 0.6A&amp;nbsp; / 또는 6V SM1054S 원형헤드) X&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;b&gt;1개&lt;/b&gt;&lt;br /&gt;-&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt;점퍼선&lt;/b&gt;&lt;/span&gt;(연결선) 또는&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt;PCB헤더&lt;/b&gt;&lt;/span&gt;&lt;span&gt; &lt;/span&gt;X&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;b&gt;한 묶음&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;① 주요 부품 소개 ( 도어록용 솔레노이드 2종 및 걸쇠 /&amp;nbsp; 릴레이 / USB 다중 커넥터 &amp;amp; 5V 전원공급기 )&lt;/b&gt;&lt;/span&gt;&lt;/h4&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&amp;lt; 솔레노이드(도어록) 제품 규격 및 사이즈&amp;nbsp; &amp;gt;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;락커 솔레노이드.jpg&quot; data-origin-width=&quot;800&quot; data-origin-height=&quot;800&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/AuhWg/btsyVYuRtES/AUiPAOsFuq08ideOmDbTb1/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/AuhWg/btsyVYuRtES/AUiPAOsFuq08ideOmDbTb1/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/AuhWg/btsyVYuRtES/AUiPAOsFuq08ideOmDbTb1/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FAuhWg%2FbtsyVYuRtES%2FAUiPAOsFuq08ideOmDbTb1%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;400&quot; height=&quot;400&quot; data-filename=&quot;락커 솔레노이드.jpg&quot; data-origin-width=&quot;800&quot; data-origin-height=&quot;800&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;도어락 제품 사이즈.png&quot; data-origin-width=&quot;907&quot; data-origin-height=&quot;683&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cynTWm/btsyTWkjIem/Ky9ONlBxzEMLVmJA20sqBk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cynTWm/btsyTWkjIem/Ky9ONlBxzEMLVmJA20sqBk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cynTWm/btsyTWkjIem/Ky9ONlBxzEMLVmJA20sqBk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcynTWm%2FbtsyTWkjIem%2FKy9ONlBxzEMLVmJA20sqBk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;907&quot; height=&quot;683&quot; data-filename=&quot;도어락 제품 사이즈.png&quot; data-origin-width=&quot;907&quot; data-origin-height=&quot;683&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;또는 아래와 같은 제품도 사용해 볼 만합니다.&amp;nbsp; 작동전압은 6V이며, 0.57A 전류를 소모합니다.&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;도어락-솔레노이드-6V.png&quot; data-origin-width=&quot;857&quot; data-origin-height=&quot;791&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cp0CDb/btsy4sOYWVN/PLBF4kWBAdwO4QPjb5GXm0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cp0CDb/btsy4sOYWVN/PLBF4kWBAdwO4QPjb5GXm0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cp0CDb/btsy4sOYWVN/PLBF4kWBAdwO4QPjb5GXm0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fcp0CDb%2Fbtsy4sOYWVN%2FPLBF4kWBAdwO4QPjb5GXm0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;400&quot; height=&quot;369&quot; data-filename=&quot;도어락-솔레노이드-6V.png&quot; data-origin-width=&quot;857&quot; data-origin-height=&quot;791&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;도어락 제품 사이즈(6V 제품).png&quot; data-origin-width=&quot;783&quot; data-origin-height=&quot;373&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/xa86j/btsyT1lCSBG/QYnKqTiKsc8V4WkognR0lK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/xa86j/btsyT1lCSBG/QYnKqTiKsc8V4WkognR0lK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/xa86j/btsyT1lCSBG/QYnKqTiKsc8V4WkognR0lK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fxa86j%2FbtsyT1lCSBG%2FQYnKqTiKsc8V4WkognR0lK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;783&quot; height=&quot;373&quot; data-filename=&quot;도어락 제품 사이즈(6V 제품).png&quot; data-origin-width=&quot;783&quot; data-origin-height=&quot;373&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;h4 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;&amp;nbsp;&amp;lt; 도어록용 걸쇠 &amp;gt;&lt;/b&gt;&lt;/span&gt;&lt;/h4&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;도어락-솔레노이드-걸쇠.png&quot; data-origin-width=&quot;371&quot; data-origin-height=&quot;407&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bfrMW5/btsyT4bvWJH/1KeYh54xffuRkVz3fNWHV0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bfrMW5/btsyT4bvWJH/1KeYh54xffuRkVz3fNWHV0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bfrMW5/btsyT4bvWJH/1KeYh54xffuRkVz3fNWHV0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbfrMW5%2FbtsyT4bvWJH%2F1KeYh54xffuRkVz3fNWHV0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;371&quot; height=&quot;407&quot; data-filename=&quot;도어락-솔레노이드-걸쇠.png&quot; data-origin-width=&quot;371&quot; data-origin-height=&quot;407&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;h4 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;&amp;nbsp;&amp;lt; 릴레이 &amp;gt;&lt;/b&gt;&lt;/span&gt;&lt;/h4&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;릴레이.png&quot; data-origin-width=&quot;717&quot; data-origin-height=&quot;598&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dcrehy/btsy2oUcGVA/07yPxmUKts38kRbCJWo5Ok/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dcrehy/btsy2oUcGVA/07yPxmUKts38kRbCJWo5Ok/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dcrehy/btsy2oUcGVA/07yPxmUKts38kRbCJWo5Ok/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fdcrehy%2Fbtsy2oUcGVA%2F07yPxmUKts38kRbCJWo5Ok%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;717&quot; height=&quot;598&quot; data-filename=&quot;릴레이.png&quot; data-origin-width=&quot;717&quot; data-origin-height=&quot;598&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;( ※ 5V 출력이 지원되는 아두이노 우노/나노의 경우는 직접제어가 가능하지만 Nano33ioT 보드는 보드에 있는 특정핀의 납땜 등의 조치를 하지 않는 이상 3.3V의 출력만 사용할 수 있기 때문에 그 상태에서는 보드에서 릴레이 직접제어는 보드 손상을 초래할 수 있어 삼가야 합니다.)&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;실습에 사용된 릴레이는 5V입력 전원으로 동작되고 교류전원 250V 10A까지 제어되는 모듈입니다.&lt;/p&gt;
&lt;p style=&quot;clear: none; float: none;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: 13pt;&quot;&gt;※&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 13pt; font-family: '맑은 고딕';&quot;&gt;릴레이 사용법&amp;nbsp;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 13pt; font-family: '맑은 고딕';&quot;&gt;&amp;nbsp;- 릴레이는 코일에 전류를 흘려 코일의 유도 작용에 의해 접점을 On / Off 해주는 스위치입니다.&lt;/span&gt;&lt;span style=&quot;font-size: 13pt; font-family: '맑은 고딕';&quot;&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;- 이를 이용하면, 낮은 전압(예, 5V)으로 220V의 전원을 끊거나 연결시킬 수 있습니다.&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 13pt; font-family: '맑은 고딕';&quot;&gt;&amp;nbsp;- 좌측 IN에 HIGH(또는 LOW) 신호가 가해지면 Com단자와 NO 단자가 연결되어 스위치 형태로 작동됩니다.&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 13pt; font-family: '맑은 고딕';&quot;&gt;&amp;nbsp;-&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #7030a0; font-family: '한컴 백제 M'; font-size: 18.6667px; text-align: center;&quot;&gt;NC (Normal Close : 평상시 연결되어 있음)&lt;/span&gt;&lt;span style=&quot;color: #7030a0; font-family: '한컴 백제 M'; font-size: 18.6667px; text-align: center;&quot;&gt;&amp;nbsp; &amp;nbsp;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;color: #7030a0; font-family: '한컴 백제 M'; font-size: 18.6667px; text-align: center;&quot;&gt;&amp;nbsp;-&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: #7030a0; font-family: '한컴 백제 M'; font-size: 18.6667px; text-align: center;&quot;&gt;NO (Normal Open : 평상시 열려 있음, 연결 끊어짐)&lt;/span&gt;&lt;span style=&quot;color: #7030a0; font-family: '한컴 백제 M'; font-size: 18.6667px; text-align: center;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;margin-top: 0pt; margin-bottom: 0pt; margin-left: 0in; direction: ltr; unicode-bidi: embed;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;text-align: center; font-size: 18.6667px; text-indent: -36.48px;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;text-align: center; font-size: 14pt; font-family: '한컴 백제 M'; color: #7030a0; font-weight: bold;&quot;&gt;&amp;nbsp;-&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;text-align: center; font-size: 14pt; font-family: '한컴 백제 M'; color: #7030a0;&quot;&gt;NC단자와 Com 단자가 디폴트로 연결되어 있고, 릴레이가 동작이 되면 이 연결이 끊어지고,&lt;br /&gt;&amp;nbsp; &amp;nbsp; Com단자가 NO단자와 연결이 됩니다. 이 부분을 전기제품이나 콘센트의 한쪽 부분의 연결을 끊어&amp;nbsp;&lt;br /&gt;&amp;nbsp; &amp;nbsp; 스위치 형태로 구성할 수 있습니다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;※ 릴레이는 작동 방법에 따라 두 가지 종류가 있습니다.&amp;nbsp; &amp;nbsp;신호(Signal) 라인 In으로 High 신호가 입력되면 작동(Trigger)되는 High Level Trigger 타입이 있고,&amp;nbsp; &amp;nbsp;Low 신호가 입력되면 작동되는 Low Level Trigger 타입이 있습니다.&amp;nbsp; &lt;br /&gt;보통 High Level Trigger 타입을 사용하면 좀 더 직관적으로 편하게 사용할 수 있습니다.&amp;nbsp; &amp;nbsp;이 번 실습에도 High Level Trigger 타입의 릴레이를 사용하고 있습니다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;통신을 위해서는 송수신 회로가 필요한데,&amp;nbsp; BLE통신에서는 중앙회로(Central-버튼 회로)와 주변회로(Peripheral-릴레이 솔레노이드 회로)로 부르며,&amp;nbsp; 버튼이 들어간 중앙회로는 지난 1편의 회로와 동일하기 때문에 이번 편에서는 솔레노이드 회로(Peripheral) 제작만 설명드리겠습니다.&amp;nbsp; 1편의 내용을 보고 버튼회로도 함께 준비해 주세요.&lt;br /&gt;우선, 버튼회로 도면을 보여드리면 아래와 같습니다.&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;01-SW-회로(lbl2).png&quot; data-origin-width=&quot;1057&quot; data-origin-height=&quot;976&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/4Ga3o/btsyX0M8xyg/RZPnqbsXMisAmwdEJ4NiFK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/4Ga3o/btsyX0M8xyg/RZPnqbsXMisAmwdEJ4NiFK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/4Ga3o/btsyX0M8xyg/RZPnqbsXMisAmwdEJ4NiFK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F4Ga3o%2FbtsyX0M8xyg%2FRZPnqbsXMisAmwdEJ4NiFK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1057&quot; height=&quot;976&quot; data-filename=&quot;01-SW-회로(lbl2).png&quot; data-origin-width=&quot;1057&quot; data-origin-height=&quot;976&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;&lt;br /&gt;아래가, 솔레노이드가 연결된 릴레이회로 도면입니다.&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;03-Relay-솔레노이드-도어-회로-lbl.png&quot; data-origin-width=&quot;1886&quot; data-origin-height=&quot;1157&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/MjXdx/btsyULbFxne/wvv6IY0HLTBF7QMpyTK7q0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/MjXdx/btsyULbFxne/wvv6IY0HLTBF7QMpyTK7q0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/MjXdx/btsyULbFxne/wvv6IY0HLTBF7QMpyTK7q0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FMjXdx%2FbtsyULbFxne%2Fwvv6IY0HLTBF7QMpyTK7q0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1886&quot; height=&quot;1157&quot; data-filename=&quot;03-Relay-솔레노이드-도어-회로-lbl.png&quot; data-origin-width=&quot;1886&quot; data-origin-height=&quot;1157&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;이번 실습에서는 어느 정도 크기가 있는 솔레노이드는 12V 정도를 사용하는데요.&amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;이 것을 아두이노 보드 출력으로 직접 제어하기는 어렵기 때문에 릴레이라는 모듈을 사용합니다.&amp;nbsp;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;이번 실습에 사용될 솔레노이드는 DC12V 정격입력이지만, 구하기 쉬운 9V건전지와 7.4V 리튬폴리머 배터리를 사용해 볼게요.&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;솔레노이드에 다이오드를 연결해 놓았는데, 코일로 구성된 부품은 작동 시 역기전력이 발생하는데요.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;이로부터 회로를 보호하기 위한 부품으로 되도록 연결해 주는 것이 좋습니다.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;03.png&quot; data-origin-width=&quot;1074&quot; data-origin-height=&quot;927&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bvMb7Z/btsy46E2XdP/XCYMKm1NqhE3JAgNkmwBx1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bvMb7Z/btsy46E2XdP/XCYMKm1NqhE3JAgNkmwBx1/img.png&quot; data-alt=&quot;비교적 구하기 쉬운 9V 4각 건전지로 솔레노이드 동작을 위한 전원 연결한 모습&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bvMb7Z/btsy46E2XdP/XCYMKm1NqhE3JAgNkmwBx1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbvMb7Z%2Fbtsy46E2XdP%2FXCYMKm1NqhE3JAgNkmwBx1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1074&quot; height=&quot;927&quot; data-filename=&quot;03.png&quot; data-origin-width=&quot;1074&quot; data-origin-height=&quot;927&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;비교적 구하기 쉬운 9V 4각 건전지로 솔레노이드 동작을 위한 전원 연결한 모습&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;04.png&quot; data-origin-width=&quot;1138&quot; data-origin-height=&quot;811&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/OXD25/btsy3hUJUVs/pwSOWLo20qx1gMGe8ZLDG0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/OXD25/btsy3hUJUVs/pwSOWLo20qx1gMGe8ZLDG0/img.png&quot; data-alt=&quot;RC카 등에 많이 사용되는 7.2V 리튬폴리머 배터리로 솔레노이드를 동작시키는 모습&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/OXD25/btsy3hUJUVs/pwSOWLo20qx1gMGe8ZLDG0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FOXD25%2Fbtsy3hUJUVs%2FpwSOWLo20qx1gMGe8ZLDG0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1138&quot; height=&quot;811&quot; data-filename=&quot;04.png&quot; data-origin-width=&quot;1138&quot; data-origin-height=&quot;811&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;RC카 등에 많이 사용되는 7.2V 리튬폴리머 배터리로 솔레노이드를 동작시키는 모습&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;br /&gt;이번 회로에서는 전원이 3가지나 들어가는데요(위 그림 참조), 아두이노 3.3v 출력 단자로 릴레이 전원을 대체하려고 한다면 Nano보드가 손상될 수 있으니 주의해 주세요!&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;그리고 종류가 다른 전원들을 하나의 회로에 사용하고자 할 때는 GND(-)는 모두 연결해 주어야 합니다.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #000000; font-size: 1.12em; letter-spacing: 0px;&quot;&gt;[ 동작을 위한 아두이노 코드입니다. ]&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #000000; text-align: start;&quot;&gt;버튼회로 코드는 아두이노 IDE의&amp;nbsp; ArduinoBLE》Central 》LedControl 예제를 기본으로 해서 수정 사용합니다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;lt; 버튼회로 (중앙장치 Central) 코드 &amp;gt;&lt;/p&gt;
&lt;div style=&quot;background-color: #1f1f1f; color: #cccccc;&quot;&gt;
&lt;div&gt;&lt;span style=&quot;color: #6a9955;&quot;&gt;/* &amp;nbsp;Relay Control Central (버튼이 있는 회로) Client */&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style=&quot;color: #c586c0;&quot;&gt;#include&lt;/span&gt;&lt;span style=&quot;color: #569cd6;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #ce9178;&quot;&gt;&amp;lt;ArduinoBLE.h&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style=&quot;color: #6a9955;&quot;&gt;// variables for button&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #569cd6;&quot;&gt;const&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #569cd6;&quot;&gt;int&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;buttonPin&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #d4d4d4;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #b5cea8;&quot;&gt;2&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #569cd6;&quot;&gt;int&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;oldButtonState&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #d4d4d4;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; LOW;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style=&quot;color: #569cd6;&quot;&gt;void&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;setup&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;() {&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;Serial&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;begin&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #b5cea8;&quot;&gt;9600&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;);&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style=&quot;color: #6a9955;&quot;&gt;// 아래 코드는 시리얼 포트가 준비될 때까지 무한 대기하게 됩니다.&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #6a9955;&quot;&gt;// 따라서 시리얼모니터 사용 없이 동작시키고자 한다면 아랫부분을 반드시 주석 처리해 주세요 &lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #6a9955;&quot;&gt;// &amp;nbsp;while (!Serial); &amp;nbsp; &amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #6a9955;&quot;&gt;// configure the button pin as input&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;pinMode&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;buttonPin&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;, INPUT);&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #6a9955;&quot;&gt;// initialize the Bluetooth&amp;reg; Low Energy hardware&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;BLE&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;begin&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;();&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;Serial&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;println&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ce9178;&quot;&gt;&quot;Bluetooth&amp;reg; Low Energy Central - RELAY control&quot;&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;);&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #6a9955;&quot;&gt;// start scanning for peripherals&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;BLE&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;scanForUuid&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ce9178;&quot;&gt;&quot;19b10000-e8f2-537e-4f6c-d104768a1214&quot;&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;);&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;}&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style=&quot;color: #569cd6;&quot;&gt;void&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;loop&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;() {&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #6a9955;&quot;&gt;// check if a peripheral has been discovered&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; BLEDevice &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;peripheral&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #d4d4d4;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;BLE&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;available&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;();&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #c586c0;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; (&lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;peripheral&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;) {&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #6a9955;&quot;&gt;// discovered a peripheral, print out address, local name, and advertised service&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;Serial&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;print&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ce9178;&quot;&gt;&quot;Found &quot;&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;);&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;Serial&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;print&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;peripheral&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;address&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;());&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;Serial&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;print&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ce9178;&quot;&gt;&quot; '&quot;&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;);&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;Serial&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;print&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;peripheral&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;localName&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;());&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;Serial&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;print&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ce9178;&quot;&gt;&quot;' &quot;&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;);&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;Serial&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;print&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;peripheral&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;advertisedServiceUuid&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;());&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;Serial&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;println&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;();&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #c586c0;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; (&lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;peripheral&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;localName&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;() &lt;/span&gt;&lt;span style=&quot;color: #d4d4d4;&quot;&gt;!=&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #ce9178;&quot;&gt;&quot;RELAY&quot;&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;) {&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #c586c0;&quot;&gt;return&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; }&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #6a9955;&quot;&gt;// stop scanning&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;BLE&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;stopScan&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;();&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;controlRelay&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;peripheral&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;);&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #6a9955;&quot;&gt;// peripheral disconnected, start scanning again&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;BLE&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;scanForUuid&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ce9178;&quot;&gt;&quot;19b10000-e8f2-537e-4f6c-d104768a1214&quot;&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;);&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; }&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;}&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style=&quot;color: #569cd6;&quot;&gt;void&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;controlRelay&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;(BLEDevice &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;peripheral&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;) {&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #6a9955;&quot;&gt;// connect to the peripheral&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;Serial&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;println&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ce9178;&quot;&gt;&quot;Connecting ...&quot;&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;);&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #c586c0;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; (&lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;peripheral&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;connect&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;()) {&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;Serial&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;println&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ce9178;&quot;&gt;&quot;Connected&quot;&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;);&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; } &lt;/span&gt;&lt;span style=&quot;color: #c586c0;&quot;&gt;else&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; {&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;Serial&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;println&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ce9178;&quot;&gt;&quot;Failed to connect!&quot;&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;);&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #c586c0;&quot;&gt;return&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; }&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #6a9955;&quot;&gt;// discover peripheral attributes&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;Serial&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;println&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ce9178;&quot;&gt;&quot;Discovering attributes ...&quot;&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;);&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #c586c0;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; (&lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;peripheral&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;discoverAttributes&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;()) {&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;Serial&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;println&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ce9178;&quot;&gt;&quot;Attributes discovered&quot;&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;);&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; } &lt;/span&gt;&lt;span style=&quot;color: #c586c0;&quot;&gt;else&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; {&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;Serial&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;println&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ce9178;&quot;&gt;&quot;Attribute discovery failed!&quot;&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;);&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;peripheral&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;disconnect&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;();&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #c586c0;&quot;&gt;return&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; }&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #6a9955;&quot;&gt;// retrieve the Relay characteristic&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; BLECharacteristic &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;relayCharacteristic&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #d4d4d4;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;peripheral&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;characteristic&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ce9178;&quot;&gt;&quot;19b10001-e8f2-537e-4f6c-d104768a1214&quot;&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;);&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #c586c0;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; (&lt;/span&gt;&lt;span style=&quot;color: #d4d4d4;&quot;&gt;!&lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;relayCharacteristic&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;) {&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;Serial&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;println&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ce9178;&quot;&gt;&quot;Peripheral does not have RELAY characteristic!&quot;&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;);&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;peripheral&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;disconnect&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;();&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #c586c0;&quot;&gt;return&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; } &lt;/span&gt;&lt;span style=&quot;color: #c586c0;&quot;&gt;else&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #c586c0;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; (&lt;/span&gt;&lt;span style=&quot;color: #d4d4d4;&quot;&gt;!&lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;relayCharacteristic&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;canWrite&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;()) {&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;Serial&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;println&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ce9178;&quot;&gt;&quot;Peripheral does not have a writable RELAY characteristic!&quot;&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;);&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;peripheral&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;disconnect&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;();&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #c586c0;&quot;&gt;return&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; }&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #c586c0;&quot;&gt;while&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; (&lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;peripheral&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;connected&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;()) {&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #6a9955;&quot;&gt;// while the peripheral is connected&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #6a9955;&quot;&gt;// read the button pin&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #569cd6;&quot;&gt;int&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;buttonState&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #d4d4d4;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;digitalRead&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;buttonPin&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;);&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #c586c0;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; (&lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;oldButtonState&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #d4d4d4;&quot;&gt;!=&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;buttonState&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;) {&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #6a9955;&quot;&gt;// button changed&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;oldButtonState&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #d4d4d4;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;buttonState&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #c586c0;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; (&lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;buttonState&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;) {&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;Serial&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;println&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ce9178;&quot;&gt;&quot;button pressed&quot;&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;);&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #6a9955;&quot;&gt;// button is pressed, write 0x01 to turn the LED on&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;relayCharacteristic&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;writeValue&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;((byte)&lt;/span&gt;&lt;span style=&quot;color: #b5cea8;&quot;&gt;0x01&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;);&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; } &lt;/span&gt;&lt;span style=&quot;color: #c586c0;&quot;&gt;else&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; {&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;Serial&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;println&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ce9178;&quot;&gt;&quot;button released&quot;&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;);&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #6a9955;&quot;&gt;// button is released, write 0x00 to turn the LED off&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;relayCharacteristic&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;writeValue&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;((byte)&lt;/span&gt;&lt;span style=&quot;color: #b5cea8;&quot;&gt;0x00&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;);&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; }&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; }&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; }&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;Serial&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;println&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ce9178;&quot;&gt;&quot;Peripheral disconnected&quot;&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;);&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;}&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #000000; text-align: start;&quot;&gt;릴레이회로 코드는 1편에서 사용하였던 ArduinoBLE》Peripheral 》LED 예제를 사용하면 됩니다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;lt; 릴레이회로 (주변장치 Peripheral) 코드 &amp;gt;&lt;/p&gt;
&lt;div style=&quot;background-color: #1f1f1f; color: #cccccc;&quot;&gt;
&lt;div&gt;&lt;span style=&quot;color: #6a9955;&quot;&gt;/* &amp;nbsp;Relay Peripheral (Relay가 연결된 회로) &amp;nbsp;Server */&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style=&quot;color: #c586c0;&quot;&gt;#include&lt;/span&gt;&lt;span style=&quot;color: #569cd6;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #ce9178;&quot;&gt;&amp;lt;ArduinoBLE.h&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;BLEService &lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;relayService&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ce9178;&quot;&gt;&quot;19B10000-E8F2-537E-4F6C-D104768A1214&quot;&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;);&lt;/span&gt;&lt;span style=&quot;color: #6a9955;&quot;&gt; // Bluetooth&amp;reg; Low Energy RELAY Service&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style=&quot;color: #6a9955;&quot;&gt;// Bluetooth&amp;reg; Low Energy RELAY Switch Characteristic - custom 128-bit UUID, read and writable by central&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;BLEByteCharacteristic &lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;switchCharacteristic&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ce9178;&quot;&gt;&quot;19B10001-E8F2-537E-4F6C-D104768A1214&quot;&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;, BLERead &lt;/span&gt;&lt;span style=&quot;color: #d4d4d4;&quot;&gt;|&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; BLEWrite);&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style=&quot;color: #569cd6;&quot;&gt;const&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #569cd6;&quot;&gt;int&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;relayPin&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #d4d4d4;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #b5cea8;&quot;&gt;2&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;;&lt;/span&gt;&lt;span style=&quot;color: #6a9955;&quot;&gt; // pin to use for the Relay&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style=&quot;color: #569cd6;&quot;&gt;void&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;setup&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;() {&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;Serial&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;begin&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #b5cea8;&quot;&gt;9600&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;);&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style=&quot;color: #6a9955;&quot;&gt;// 아래 코드는 시리얼 포트가 준비될 때까지 무한 대기하게 됩니다.&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #6a9955;&quot;&gt;// 따라서 시리얼모니터 사용 없이 동작시키고자 한다면 아랫부분을 반드시 주석 처리해 주세요 &lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #6a9955;&quot;&gt;// &amp;nbsp;while (!Serial); &amp;nbsp; &amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #6a9955;&quot;&gt;// set RELAY pin to output mode&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;pinMode&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;relayPin&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;, OUTPUT);&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #6a9955;&quot;&gt;// begin initialization&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #c586c0;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; (&lt;/span&gt;&lt;span style=&quot;color: #d4d4d4;&quot;&gt;!&lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;BLE&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;begin&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;()) {&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;Serial&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;println&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ce9178;&quot;&gt;&quot;starting Bluetooth&amp;reg; Low Energy module failed!&quot;&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;);&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #c586c0;&quot;&gt;while&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; (&lt;/span&gt;&lt;span style=&quot;color: #b5cea8;&quot;&gt;1&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;);&lt;/span&gt;&lt;span style=&quot;color: #6a9955;&quot;&gt; &amp;nbsp; &amp;nbsp; // BLE 서비스가 시작될 때까지 무한 루프&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; }&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #6a9955;&quot;&gt;// set advertised local name and service UUID:&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;BLE&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;setLocalName&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ce9178;&quot;&gt;&quot;RELAY&quot;&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;);&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;BLE&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;setAdvertisedService&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;relayService&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;);&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #6a9955;&quot;&gt;// add the characteristic to the service&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;relayService&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;addCharacteristic&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;switchCharacteristic&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;);&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #6a9955;&quot;&gt;// add service&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;BLE&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;addService&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;relayService&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;);&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #6a9955;&quot;&gt;// set the initial value for the characeristic:&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;switchCharacteristic&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;writeValue&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #b5cea8;&quot;&gt;0&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;);&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #6a9955;&quot;&gt;// start advertising&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;BLE&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;advertise&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;();&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;Serial&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;println&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ce9178;&quot;&gt;&quot;BLE RELAY Peripheral&quot;&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;);&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;}&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style=&quot;color: #569cd6;&quot;&gt;void&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;loop&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;() {&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #6a9955;&quot;&gt;// listen for Bluetooth&amp;reg; Low Energy peripherals to connect:&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; BLEDevice &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;central&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #d4d4d4;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;BLE&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;central&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;();&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #6a9955;&quot;&gt;// if a central is connected to peripheral:&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #c586c0;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; (&lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;central&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;) {&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;Serial&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;print&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ce9178;&quot;&gt;&quot;Connected to central: &quot;&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;);&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #6a9955;&quot;&gt;// print the central's MAC address:&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;Serial&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;println&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;central&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;address&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;());&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #6a9955;&quot;&gt;// while the central is still connected to peripheral:&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #c586c0;&quot;&gt;while&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; (&lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;central&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;connected&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;()) {&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #6a9955;&quot;&gt;// if the remote device wrote to the characteristic,&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #6a9955;&quot;&gt;// use the value to control the RELAY:&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #c586c0;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; (&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;switchCharacteristic&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;written&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;()) {&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #c586c0;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; (&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;switchCharacteristic&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;value&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;()) {&lt;/span&gt;&lt;span style=&quot;color: #6a9955;&quot;&gt; &amp;nbsp; // any value other than 0&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;Serial&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;println&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ce9178;&quot;&gt;&quot;Relay on&quot;&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;);&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;digitalWrite&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;relayPin&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;, HIGH);&lt;/span&gt;&lt;span style=&quot;color: #6a9955;&quot;&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; // will turn the LED on&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; } &lt;/span&gt;&lt;span style=&quot;color: #c586c0;&quot;&gt;else&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; {&lt;/span&gt;&lt;span style=&quot;color: #6a9955;&quot;&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// a 0 value&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;Serial&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;println&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;F&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ce9178;&quot;&gt;&quot;Relay off&quot;&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;));&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;digitalWrite&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;relayPin&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;, LOW);&lt;/span&gt;&lt;span style=&quot;color: #6a9955;&quot;&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// will turn the LED off&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; }&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; }&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #6a9955;&quot;&gt;// when the central disconnects, print it out:&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;Serial&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;print&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;F&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ce9178;&quot;&gt;&quot;Disconnected from central: &quot;&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;));&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;Serial&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;println&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;central&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;address&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;());&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; }&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;}&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;br /&gt;&amp;lt; 코드 다운로드 &amp;gt;&lt;br /&gt;위 두 가지 코드를 압축하였으니 다운로드하여 사용해 보세요.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;fileblock&quot; data-ke-align=&quot;alignCenter&quot;&gt;&lt;a href=&quot;https://blog.kakaocdn.net/dn/cZZGML/btsy457epEW/Ya2pNt1id7arDwpjUO2HBK/03.%20Relay.zip?attach=1&amp;amp;knm=tfile.zip&quot; class=&quot;&quot;&gt;
    &lt;div class=&quot;image&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;desc&quot;&gt;&lt;div class=&quot;filename&quot;&gt;&lt;span class=&quot;name&quot;&gt;03. Relay.zip&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;size&quot;&gt;0.00MB&lt;/div&gt;
&lt;/div&gt;
  &lt;/a&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #456771;&quot;&gt;&lt;b&gt;코드 내용을 살펴보면 릴레이가 연결된 핀 번호를 정확하게 적어주어야 합니다.&amp;nbsp;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;그리고 사용할 서비스 UUID와 특성 UUID를 예시에 있는 것 말고 다른 번호로 변경하고 싶다면 아래 UUID 생성 사이트를 이용하세요 uuidgenerator.net&amp;nbsp; 또는 &lt;a style=&quot;color: #456771;&quot; href=&quot;http://www.uuidtools.com&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;http://www.uuidtools.com&lt;/a&gt; 사이트를 이용하면 됩니다.&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #456771;&quot;&gt;물론, 기본 예제에 제시된 UUID를 그대로 사용해도 됩니다&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #456771;&quot;&gt;setLocalName을 &amp;ldquo;RELAY&amp;rdquo;로 하였는데요,&amp;nbsp; 중요한 것은 버튼회로(Central)의 setLocalName과 일치시켜야 합니다.&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #456771;&quot;&gt;즉, 연결하고자 하는 회로별로 로컬 네임을 설정해 주면 되는데요,&amp;nbsp; 서로&amp;nbsp;로컬&amp;nbsp;네임이&amp;nbsp;일치하는&amp;nbsp;기기끼리&amp;nbsp;페어링&amp;nbsp;되도록&amp;nbsp;코딩되어&amp;nbsp;있습니다&amp;nbsp;(UUID&amp;nbsp;포함)&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #456771;&quot;&gt;Central 코드도 서비스 이름과 로컬네임만 RERAY로 변경해 놓았습니다.&amp;nbsp;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;lt; 도어 미니어처 제작 &amp;gt;&lt;/span&gt;&lt;/b&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;이번 실습에서는 좀 더 사실감을 주기 위해 3D 프린터로 미니 도어를 만들어 보았습니다 도어 모델링에 사용한 툴은 Fusion360입니다&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;05.png&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;988&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bLdAiy/btsyUK4ZJw3/O3BJOlKAwn9D8oVApscQJK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bLdAiy/btsyUK4ZJw3/O3BJOlKAwn9D8oVApscQJK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bLdAiy/btsyUK4ZJw3/O3BJOlKAwn9D8oVApscQJK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbLdAiy%2FbtsyUK4ZJw3%2FO3BJOlKAwn9D8oVApscQJK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1200&quot; height=&quot;988&quot; data-filename=&quot;05.png&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;988&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #000000;&quot;&gt;사이즈는&amp;nbsp;&lt;span style=&quot;color: #ee2323;&quot;&gt;문&lt;/span&gt;&amp;nbsp;(&amp;nbsp;가로&amp;nbsp;160mm&amp;nbsp;X&amp;nbsp;높이&amp;nbsp;185mm&amp;nbsp;),&amp;nbsp;&lt;span style=&quot;color: #ee2323;&quot;&gt;바닥&lt;/span&gt;&amp;nbsp;(&amp;nbsp;160mm&amp;nbsp;x&amp;nbsp;130mm&amp;nbsp;),&amp;nbsp;&lt;span style=&quot;color: #ee2323;&quot;&gt;두께&lt;/span&gt;&amp;nbsp;5mm입니다&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;그리고&amp;nbsp;문에&amp;nbsp;사용할&amp;nbsp;경첩을&amp;nbsp;따로&amp;nbsp;설계했습니다&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;06.png&quot; data-origin-width=&quot;769&quot; data-origin-height=&quot;588&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/K5jMi/btsy5cSHIjU/5E5wH59Z3kJLYGpG6ktqvk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/K5jMi/btsy5cSHIjU/5E5wH59Z3kJLYGpG6ktqvk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/K5jMi/btsy5cSHIjU/5E5wH59Z3kJLYGpG6ktqvk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FK5jMi%2Fbtsy5cSHIjU%2F5E5wH59Z3kJLYGpG6ktqvk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;769&quot; height=&quot;588&quot; data-filename=&quot;06.png&quot; data-origin-width=&quot;769&quot; data-origin-height=&quot;588&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;경첩의&amp;nbsp;홀&lt;/b&gt;은&amp;nbsp;&lt;span style=&quot;color: #ee2323;&quot;&gt;&lt;b&gt;&amp;nbsp;M3&amp;nbsp;x&amp;nbsp;8mm&lt;/b&gt;&lt;/span&gt;&amp;nbsp;나사를&amp;nbsp;기준으로&amp;nbsp;제작했습니다&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;문의&amp;nbsp;&lt;b&gt;솔레노이드&amp;nbsp;고정과&amp;nbsp;걸쇠&amp;nbsp;고정&amp;nbsp;홈&lt;/b&gt;은&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #ee2323;&quot;&gt;&lt;b&gt;M2&amp;nbsp;x&amp;nbsp;5mm&amp;nbsp;&lt;/b&gt;&lt;/span&gt;나사를&amp;nbsp;기준으로&amp;nbsp;제작했습니다&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;07.png&quot; data-origin-width=&quot;1160&quot; data-origin-height=&quot;801&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bNh5Lu/btsy6hGkJZC/QUSBRq0KE22zPybvDcn7b0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bNh5Lu/btsy6hGkJZC/QUSBRq0KE22zPybvDcn7b0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bNh5Lu/btsy6hGkJZC/QUSBRq0KE22zPybvDcn7b0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbNh5Lu%2Fbtsy6hGkJZC%2FQUSBRq0KE22zPybvDcn7b0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1160&quot; height=&quot;801&quot; data-filename=&quot;07.png&quot; data-origin-width=&quot;1160&quot; data-origin-height=&quot;801&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;경첩을 문위에 맞대어 보면 아래와 같습니다.&amp;nbsp; 치수가 정확하게 일치하도록 제작했습니다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;08.png&quot; data-origin-width=&quot;250&quot; data-origin-height=&quot;491&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/m2HWQ/btsy3OSFOTG/t0ytg3gIOKqrNv6JHfJGK0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/m2HWQ/btsy3OSFOTG/t0ytg3gIOKqrNv6JHfJGK0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/m2HWQ/btsy3OSFOTG/t0ytg3gIOKqrNv6JHfJGK0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fm2HWQ%2Fbtsy3OSFOTG%2Ft0ytg3gIOKqrNv6JHfJGK0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;250&quot; height=&quot;491&quot; data-filename=&quot;08.png&quot; data-origin-width=&quot;250&quot; data-origin-height=&quot;491&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;nbsp;출력은 문과 경첩 각각 따로 하도록 하였습니다.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;※&amp;nbsp;만약&amp;nbsp;출력한다면&amp;nbsp;슬라이서&amp;nbsp;프로그램에서&amp;nbsp;내부채움(Infill)은&amp;nbsp;70%&amp;nbsp;이상&amp;nbsp;권해드립니다 (출력물을&amp;nbsp;떨어뜨렸을&amp;nbsp;때&amp;nbsp;쉽게&amp;nbsp;부서지지&amp;nbsp;않도록)&lt;br /&gt;슬라이서 프로그램으로 슬라이싱 할 수 있는 STL파일(도어와 경첩)을 아래 압축하여 올려드립니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;fileblock&quot; data-ke-align=&quot;alignCenter&quot;&gt;&lt;a href=&quot;https://blog.kakaocdn.net/dn/bQqYga/btsy4i6OPGN/mdNYS0jKjma7riK4p5kDo0/%EB%8F%84%EC%96%B4%EC%99%80%20%EA%B2%BD%EC%B2%A9%20STL%20%ED%8C%8C%EC%9D%BC.zip?attach=1&amp;amp;knm=tfile.zip&quot; class=&quot;&quot;&gt;
    &lt;div class=&quot;image&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;desc&quot;&gt;&lt;div class=&quot;filename&quot;&gt;&lt;span class=&quot;name&quot;&gt;도어와 경첩 STL 파일.zip&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;size&quot;&gt;0.10MB&lt;/div&gt;
&lt;/div&gt;
  &lt;/a&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;미니어처 모형은 아래처럼 잘 출력되었습니다.&amp;nbsp;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;09.png&quot; data-origin-width=&quot;1068&quot; data-origin-height=&quot;881&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/DgOeV/btsy39hXFfx/PfKVtY3BZiYsaiVmgJKdiK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/DgOeV/btsy39hXFfx/PfKVtY3BZiYsaiVmgJKdiK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/DgOeV/btsy39hXFfx/PfKVtY3BZiYsaiVmgJKdiK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FDgOeV%2Fbtsy39hXFfx%2FPfKVtY3BZiYsaiVmgJKdiK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1068&quot; height=&quot;881&quot; data-filename=&quot;09.png&quot; data-origin-width=&quot;1068&quot; data-origin-height=&quot;881&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;그리고 여기에 솔레노이드와 걸쇠 그리고 경첩까지 달아 놓은 모습입니다.&amp;nbsp;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;10.png&quot; data-origin-width=&quot;758&quot; data-origin-height=&quot;796&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/tguLs/btsyUKcOqoc/ax6oP4nrh0FxPaFuPqhcH1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/tguLs/btsyUKcOqoc/ax6oP4nrh0FxPaFuPqhcH1/img.png&quot; data-alt=&quot;도어 미니어처에 솔레노이드와 걸쇠를 달아 놓은 모습입니다&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/tguLs/btsyUKcOqoc/ax6oP4nrh0FxPaFuPqhcH1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FtguLs%2FbtsyUKcOqoc%2Fax6oP4nrh0FxPaFuPqhcH1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;758&quot; height=&quot;796&quot; data-filename=&quot;10.png&quot; data-origin-width=&quot;758&quot; data-origin-height=&quot;796&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;도어 미니어처에 솔레노이드와 걸쇠를 달아 놓은 모습입니다&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;11.png&quot; data-origin-width=&quot;824&quot; data-origin-height=&quot;696&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/EdSwh/btsy3gBwSW7/acYilcELsQ4uc9DvBKRf30/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/EdSwh/btsy3gBwSW7/acYilcELsQ4uc9DvBKRf30/img.png&quot; data-alt=&quot;도어 미니어처에 경첩을 달아 놓은 모습입니다&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/EdSwh/btsy3gBwSW7/acYilcELsQ4uc9DvBKRf30/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FEdSwh%2Fbtsy3gBwSW7%2FacYilcELsQ4uc9DvBKRf30%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;824&quot; height=&quot;696&quot; data-filename=&quot;11.png&quot; data-origin-width=&quot;824&quot; data-origin-height=&quot;696&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;도어 미니어처에 경첩을 달아 놓은 모습입니다&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;&amp;lt; 솔레노이드 &amp;gt;&lt;/b&gt;&lt;br /&gt;&lt;/span&gt;&lt;/h4&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;12.png&quot; data-origin-width=&quot;578&quot; data-origin-height=&quot;747&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cJAwe3/btsyViHw36j/E4GkD1NNXfklrxv4TLtvX0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cJAwe3/btsyViHw36j/E4GkD1NNXfklrxv4TLtvX0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cJAwe3/btsyViHw36j/E4GkD1NNXfklrxv4TLtvX0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcJAwe3%2FbtsyViHw36j%2FE4GkD1NNXfklrxv4TLtvX0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;578&quot; height=&quot;747&quot; data-filename=&quot;12.png&quot; data-origin-width=&quot;578&quot; data-origin-height=&quot;747&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;솔레노이드도 크기와 작동 전압 범위에 따라 몇 가지 종류가 있습니다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;작동 방식은 전선에 직류 전기를 넣으면 코일에 발생된 자기장에 의해 쇠뭉치가 전진하고,&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;입력 전기가 없으면 자기장이 소멸되어 스프링에 의해 원위치로 돌아오는 원리로 작동됩니다.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;실습에 사용된 도어형 솔레노이드도 위 사진의 아래쪽에 있는 솔레노이드에 케이스를 씌운 형태입니다&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;nbsp;&amp;lt; 다중 전원 공급기 &amp;gt;&lt;/span&gt;&lt;/b&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;이번&amp;nbsp;실습에서&amp;nbsp;5V전원을&amp;nbsp;많이&amp;nbsp;사용하기&amp;nbsp;때문에&amp;nbsp;USB&amp;nbsp;다중&amp;nbsp;전원공급기를&amp;nbsp;만들어&amp;nbsp;보았습니다&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;실습에 반드시 필요한 것은 아니기 때문에 참고용으로 봐주세요.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;P007.jpg&quot; data-origin-width=&quot;4000&quot; data-origin-height=&quot;2252&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b43Vna/btsy04OQ7s0/H3bsZhnh9lQSWqUFnUnl21/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b43Vna/btsy04OQ7s0/H3bsZhnh9lQSWqUFnUnl21/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b43Vna/btsy04OQ7s0/H3bsZhnh9lQSWqUFnUnl21/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb43Vna%2Fbtsy04OQ7s0%2FH3bsZhnh9lQSWqUFnUnl21%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;4000&quot; height=&quot;2252&quot; data-filename=&quot;P007.jpg&quot; data-origin-width=&quot;4000&quot; data-origin-height=&quot;2252&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;접지선이 있고 두께가 비교적 굵은(16A) 전원 케이블을 잘라 연결해 주었습니다.&amp;nbsp;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;13.png&quot; data-origin-width=&quot;1476&quot; data-origin-height=&quot;704&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/XZpv2/btsyWfX5Ijs/8u2Y5aiKGDWdF6wxKk0OA0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/XZpv2/btsyWfX5Ijs/8u2Y5aiKGDWdF6wxKk0OA0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/XZpv2/btsyWfX5Ijs/8u2Y5aiKGDWdF6wxKk0OA0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FXZpv2%2FbtsyWfX5Ijs%2F8u2Y5aiKGDWdF6wxKk0OA0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1476&quot; height=&quot;704&quot; data-filename=&quot;13.png&quot; data-origin-width=&quot;1476&quot; data-origin-height=&quot;704&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;nbsp;규격은 전원코드에 표시되어 있으니 확인해 보고 비교적 여유 있는 전원코드를 사용하면 좋습니다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;아래 노란 원으로 표시된 부분을 연결할 때는 선을 잡아당겼을 때 쉽게 풀리지 않도록 단단히 고정해야 하며&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;합선되지 않도록 주의해야 합니다 그리고 감전될 수 있기 때문에&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;보호 케이스를 씌어 주거나 추가 조치를 해주는 것이 좋습니다.&amp;nbsp;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;14.png&quot; data-origin-width=&quot;377&quot; data-origin-height=&quot;480&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cdUdCk/btsyT4bztZU/RkeD33F25ATkXCrNWTmeXK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cdUdCk/btsyT4bztZU/RkeD33F25ATkXCrNWTmeXK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cdUdCk/btsyT4bztZU/RkeD33F25ATkXCrNWTmeXK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcdUdCk%2FbtsyT4bztZU%2FRkeD33F25ATkXCrNWTmeXK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;377&quot; height=&quot;480&quot; data-filename=&quot;14.png&quot; data-origin-width=&quot;377&quot; data-origin-height=&quot;480&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;파워는 소형의 5V-5A 출력의 파워를 사용했습니다.&amp;nbsp; 나노보드 4개 및 릴레이전원 공급 등 이 실습에는 충분히 사용하고도 남는 용량입니다.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;Nano 보드를 한 번에 많이 연결하기 위해 USB A-Femail 타입의 커넥터를 연결된 상태로 사용했고요.&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;P004.jpg&quot; data-origin-width=&quot;4000&quot; data-origin-height=&quot;2252&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bvZQzu/btsy6g8vdeU/jj0VhI6v0klJTnlUkx92W0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bvZQzu/btsy6g8vdeU/jj0VhI6v0klJTnlUkx92W0/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bvZQzu/btsy6g8vdeU/jj0VhI6v0klJTnlUkx92W0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbvZQzu%2Fbtsy6g8vdeU%2Fjj0VhI6v0klJTnlUkx92W0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;4000&quot; height=&quot;2252&quot; data-filename=&quot;P004.jpg&quot; data-origin-width=&quot;4000&quot; data-origin-height=&quot;2252&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;커넥터에는&amp;nbsp;데이터&amp;nbsp;연결은&amp;nbsp;필요 없으니&amp;nbsp;양&amp;nbsp;끝에&amp;nbsp;있는&amp;nbsp;+단자와&amp;nbsp;-단자만&amp;nbsp;서로&amp;nbsp;연결해&amp;nbsp;주면&amp;nbsp;됩니다&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;그리고&amp;nbsp;바닥면이&amp;nbsp;합선이&amp;nbsp;되지&amp;nbsp;않도록&amp;nbsp;캡톤(내열) 테이프로&amp;nbsp;감싸주었습니다&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;P006.jpg&quot; data-origin-width=&quot;4000&quot; data-origin-height=&quot;2252&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/Ogxe8/btsy5cSIcIi/Jc7EKQd8lMMGpE9D7cPACK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Ogxe8/btsy5cSIcIi/Jc7EKQd8lMMGpE9D7cPACK/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Ogxe8/btsy5cSIcIi/Jc7EKQd8lMMGpE9D7cPACK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FOgxe8%2Fbtsy5cSIcIi%2FJc7EKQd8lMMGpE9D7cPACK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;4000&quot; height=&quot;2252&quot; data-filename=&quot;P006.jpg&quot; data-origin-width=&quot;4000&quot; data-origin-height=&quot;2252&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;추가로&amp;nbsp;스위치를&amp;nbsp;달아&amp;nbsp;개별로&amp;nbsp;켜고&amp;nbsp;끌&amp;nbsp;수&amp;nbsp;있도록&amp;nbsp;하였습니다&amp;nbsp;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;15.png&quot; data-origin-width=&quot;564&quot; data-origin-height=&quot;307&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/REvEP/btsy3998o7v/4Cgk5BSEfiotHPHEK7Vr7K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/REvEP/btsy3998o7v/4Cgk5BSEfiotHPHEK7Vr7K/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/REvEP/btsy3998o7v/4Cgk5BSEfiotHPHEK7Vr7K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FREvEP%2Fbtsy3998o7v%2F4Cgk5BSEfiotHPHEK7Vr7K%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;564&quot; height=&quot;307&quot; data-filename=&quot;15.png&quot; data-origin-width=&quot;564&quot; data-origin-height=&quot;307&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;그럼, 버튼회로와 릴레이 회로를 준비해 연결해 보세요.&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;16.png&quot; data-origin-width=&quot;1128&quot; data-origin-height=&quot;920&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bSQeaS/btsyXY9CmwU/N18ZOm7mIfrfkL2yYLdsf1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bSQeaS/btsyXY9CmwU/N18ZOm7mIfrfkL2yYLdsf1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bSQeaS/btsyXY9CmwU/N18ZOm7mIfrfkL2yYLdsf1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbSQeaS%2FbtsyXY9CmwU%2FN18ZOm7mIfrfkL2yYLdsf1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1128&quot; height=&quot;920&quot; data-filename=&quot;16.png&quot; data-origin-width=&quot;1128&quot; data-origin-height=&quot;920&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;릴레이에&amp;nbsp;5V를&amp;nbsp;공급하기&amp;nbsp;위해&amp;nbsp;마이크로&amp;nbsp;USB&amp;nbsp;케이블&amp;nbsp;커넥터를&amp;nbsp;연결해&amp;nbsp;보았습니다&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;※ 항상 + , - 극성에 주의해서 연결해 주세요. (보드 및 부품 손상 방지)&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;이 실습에서 솔레노이드용 전원으로 9V 건전지가 사용하기 제일 간편하지만, &lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;용량도 적고 출력 전류가 낮은 타입이어서 실물 제작에 적용하기에는 적합하지 않으니 참고하세요.&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;17.png&quot; data-origin-width=&quot;1354&quot; data-origin-height=&quot;894&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cnpbVH/btsyWgbDxgV/WIYWawF4tuaHml3Zzq1J9K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cnpbVH/btsyWgbDxgV/WIYWawF4tuaHml3Zzq1J9K/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cnpbVH/btsyWgbDxgV/WIYWawF4tuaHml3Zzq1J9K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcnpbVH%2FbtsyWgbDxgV%2FWIYWawF4tuaHml3Zzq1J9K%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1354&quot; height=&quot;894&quot; data-filename=&quot;17.png&quot; data-origin-width=&quot;1354&quot; data-origin-height=&quot;894&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;그리고 동작을 시켜보면,&amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;잘 작동하는 것을 알 수 있습니다.&amp;nbsp; &amp;nbsp;그럼, 다른 전원도 테스트해 볼게요 현재 솔레노이드가 12V 용이지만 작동되는 힘은 약해도 9V건전지와 7.2V 리튬배터리도 역시 잘 작동하는 것을 볼 수 있습니다.&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;18.png&quot; data-origin-width=&quot;1605&quot; data-origin-height=&quot;915&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bwMxtQ/btsy44mWDjG/3sKYMfjgMkhbQ5XzDk7hq1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bwMxtQ/btsy44mWDjG/3sKYMfjgMkhbQ5XzDk7hq1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bwMxtQ/btsy44mWDjG/3sKYMfjgMkhbQ5XzDk7hq1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbwMxtQ%2Fbtsy44mWDjG%2F3sKYMfjgMkhbQ5XzDk7hq1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1605&quot; height=&quot;915&quot; data-filename=&quot;18.png&quot; data-origin-width=&quot;1605&quot; data-origin-height=&quot;915&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt; 그럼, 1편에서 사용했던 LED회로와 서보회로를 모두 연결해 볼게요.&amp;nbsp; 아래는 개별로 스위치를 켜고 끄면서 작동을 원하는 장치끼리 페어링 하여 제어해 본 것이고요,&amp;nbsp; 이렇게 하기 위해서는 버튼(중앙장치) 회로의 코드에 있는 SetLocalName=&quot;&amp;nbsp; &amp;nbsp; &quot; 이름을 연결하려고 하는 각각의 이름,&amp;nbsp; 예를 들어 &quot;LED&quot; , &quot;SERVO&quot; ,&amp;nbsp; &quot;RELAY&quot; 등으로 수정하여 매번 업로드해주어야 페어링 됩니다.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;19.png&quot; data-origin-width=&quot;1550&quot; data-origin-height=&quot;944&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dtqiaE/btsyUKYggpk/PHzkfOrPqcPlV5TvIeWRIK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dtqiaE/btsyUKYggpk/PHzkfOrPqcPlV5TvIeWRIK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dtqiaE/btsyUKYggpk/PHzkfOrPqcPlV5TvIeWRIK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdtqiaE%2FbtsyUKYggpk%2FPHzkfOrPqcPlV5TvIeWRIK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1550&quot; height=&quot;944&quot; data-filename=&quot;19.png&quot; data-origin-width=&quot;1550&quot; data-origin-height=&quot;944&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;그리고 여기서부터는 번갈아 가며 3가지 주변회로에 페어링 될 수 있도록&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;코드 속의 LocalName을 &amp;ldquo;MULTI&amp;rdquo;로 통일하였으니 참고하세요.&amp;nbsp; 즉 모든 코드의 SetLocalName=&quot;MULTI&quot;로 통일하였습니다.&amp;nbsp; 그렇지 않으면 번갈아가며 페어링 하기 위해서는 매번 중앙장치의 코드의 SetLocalName을 바꾸어 업로드해야 하기 때문이죠.&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt; 우선 버튼 회로부터 전원을 ON 합니다.&amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;다음, LED 회로를 ON 하고 버튼을 눌러보면 빠르게 페어링 되어 LED가 제어되는 것을 볼 수 있고,&amp;nbsp; 그다음,&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt; LED회로는 OFF 하고 서보회로를 ON 하여 페어링 시켜보면 &lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;릴레이 회로도 페어링 되어 잘 &lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;작동하는 것을 볼 수 있습니다.&amp;nbsp;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;nbsp;학습용으로 활용할 수 있도록 네 가지 회로를 아크릴판에 올려봤습니다.&amp;nbsp;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;20.png&quot; data-origin-width=&quot;1642&quot; data-origin-height=&quot;905&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/QyNDw/btsyVjzD7kH/cJthNl6bV5tnr8olJUbsbk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/QyNDw/btsyVjzD7kH/cJthNl6bV5tnr8olJUbsbk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/QyNDw/btsyVjzD7kH/cJthNl6bV5tnr8olJUbsbk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FQyNDw%2FbtsyVjzD7kH%2FcJthNl6bV5tnr8olJUbsbk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1642&quot; height=&quot;905&quot; data-filename=&quot;20.png&quot; data-origin-width=&quot;1642&quot; data-origin-height=&quot;905&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;스위치를 개별로 작동시켜 원하는 장치 간 페어링을 시켜 작동시킬 수도 있고,&amp;nbsp; &lt;br /&gt;전원을 모두 ON 하고 랜덤으로 페어링 하여 작동시켜 볼 수도 있습니다.&amp;nbsp; &amp;nbsp;그래서&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;기존 페어링을 끊으려고 하려면,&amp;nbsp; 보드에 있는 리셋 버튼을 눌러주면 됩니다.&amp;nbsp; 해당 보드가 리셋되는 사이 랜덤으로 주변에 있는 다른 보드와 다시 페어링 됩니다.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt;다음 3편에서는 앱인벤터를 활용하여 (BLE방식으로) 스마트폰으로 작동시켜 볼게요.&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #ef6f53;&quot;&gt;&lt;b&gt;감사합니다.&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;아래 유튜브 영상도 함께 참고하면 보다 수월하게 내용을 파악하실 수 있습니다. (아래 영상 클릭)&lt;/p&gt;
&lt;figure data-ke-type=&quot;video&quot; data-ke-style=&quot;alignCenter&quot; data-video-host=&quot;youtube&quot; data-video-url=&quot;https://www.youtube.com/watch?v=Oi1DFrkCTeE&quot; data-video-thumbnail=&quot;https://scrap.kakaocdn.net/dn/ef8vCR/hyUkmfBCY0/od25cUAzKcy0fjQ0CpU7Vk/img.jpg?width=1280&amp;amp;height=720&amp;amp;face=0_0_1280_720&quot; data-video-width=&quot;860&quot; data-video-height=&quot;484&quot; data-video-origin-width=&quot;860&quot; data-video-origin-height=&quot;484&quot; data-ke-mobilestyle=&quot;widthContent&quot; data-original-url=&quot;&quot; data-video-title=&quot;&quot;&gt;&lt;iframe src=&quot;https://www.youtube.com/embed/Oi1DFrkCTeE&quot; width=&quot;860&quot; height=&quot;484&quot; frameborder=&quot;&quot; allowfullscreen=&quot;true&quot;&gt;&lt;/iframe&gt;
&lt;figcaption style=&quot;display: none;&quot;&gt;&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>아두이노/5. 아두이노-프렌즈</category>
      <author>엑소더스팩토리</author>
      <guid isPermaLink="true">https://rasino.tistory.com/372</guid>
      <comments>https://rasino.tistory.com/372#entry372comment</comments>
      <pubDate>Tue, 24 Oct 2023 08:00:35 +0900</pubDate>
    </item>
    <item>
      <title>【VScode 환경설정】 VScode 코드 한글깨짐 방지 또 다른 방법</title>
      <link>https://rasino.tistory.com/371</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;VScode에서 C &amp;amp; C++ 코드 실행 시 한글 깨지는 현상을 해결하는 방법에 대한 기본적인 VScode 설정은 아래를 먼저 참고해 보세요.&amp;nbsp; &amp;nbsp; 그리고&amp;nbsp; 그 방법 이 외에 코드를 작성할 때 방지하는 코드 라인을 작성하는 방법에 대해 소개하려 해요.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div style=&quot;background-color: #1f1f1f; color: #cccccc;&quot;&gt;
&lt;div&gt;&lt;span style=&quot;color: #c586c0;&quot;&gt;#include&lt;/span&gt;&lt;span style=&quot;color: #569cd6;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #ce9178;&quot;&gt;&amp;lt;windows.h&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #c586c0;&quot;&gt;#pragma&lt;/span&gt;&lt;span style=&quot;color: #569cd6;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;execution_character_set&lt;/span&gt;&lt;span style=&quot;color: #569cd6;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ce9178;&quot;&gt;&quot;utf-8&quot;&lt;/span&gt;&lt;span style=&quot;color: #569cd6;&quot;&gt;)&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;SetConsoleOutputCP&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #b5cea8;&quot;&gt;65001&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;);&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위,&amp;nbsp; 3개의 라인을 추가하면 되는데요,&amp;nbsp; 아래 예시 코드를 참고해 보세요.&lt;/p&gt;
&lt;div style=&quot;background-color: #1f1f1f; color: #cccccc;&quot;&gt;
&lt;div&gt;&lt;span style=&quot;color: #c586c0;&quot;&gt;#include&lt;/span&gt;&lt;span style=&quot;color: #569cd6;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #ce9178;&quot;&gt;&amp;lt;iostream&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #c586c0;&quot;&gt;#include&lt;/span&gt;&lt;span style=&quot;color: #569cd6;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #ce9178;&quot;&gt;&amp;lt;windows.h&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #c586c0;&quot;&gt;using&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #569cd6;&quot;&gt;namespace&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #4ec9b0;&quot;&gt;std&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #c586c0;&quot;&gt;#pragma&lt;/span&gt;&lt;span style=&quot;color: #569cd6;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;execution_character_set&lt;/span&gt;&lt;span style=&quot;color: #569cd6;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ce9178;&quot;&gt;&quot;utf-8&quot;&lt;/span&gt;&lt;span style=&quot;color: #569cd6;&quot;&gt;)&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #569cd6;&quot;&gt;int&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;main&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;(){&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;SetConsoleOutputCP&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #b5cea8;&quot;&gt;65001&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;);&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #569cd6;&quot;&gt;int&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;a&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #569cd6;&quot;&gt;int&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;b&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #569cd6;&quot;&gt;int&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;c&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;cin&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;&amp;gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;a&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;cin&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;&amp;gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;b&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;cout&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;&amp;lt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #ce9178;&quot;&gt;&quot;입력 a: &quot;&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;&amp;lt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;a&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;&amp;lt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;endl&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;cout&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;&amp;lt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #ce9178;&quot;&gt;&quot;입력 b: &quot;&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;&amp;lt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;b&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;&amp;lt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;endl&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;cout&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;&amp;lt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #ce9178;&quot;&gt;&quot;결과 c: &quot;&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;&amp;lt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;a&lt;/span&gt;&lt;span style=&quot;color: #d4d4d4;&quot;&gt;+&lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;b&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;&amp;lt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;endl&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #c586c0;&quot;&gt;return&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #b5cea8;&quot;&gt;0&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;}&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 결과를 실행해 보면,&amp;nbsp; 아래처럼 한글 깨짐 없이 잘 출력되는 것을 볼 수 있습니다.&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;03.png&quot; data-origin-width=&quot;704&quot; data-origin-height=&quot;286&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dxgwG0/btsx1YC3Av6/FzrDYskyUWwbqrPxWkhxF0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dxgwG0/btsx1YC3Av6/FzrDYskyUWwbqrPxWkhxF0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dxgwG0/btsx1YC3Av6/FzrDYskyUWwbqrPxWkhxF0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdxgwG0%2Fbtsx1YC3Av6%2FFzrDYskyUWwbqrPxWkhxF0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;704&quot; height=&quot;286&quot; data-filename=&quot;03.png&quot; data-origin-width=&quot;704&quot; data-origin-height=&quot;286&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;.&amp;nbsp; &lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;&lt;/span&gt;&lt;/p&gt;</description>
      <category>Language/C &amp;amp; C++</category>
      <category>VScode c c++ 코드 작성 시 한글 깨지는 현상 해결</category>
      <category>VScode c++ cpp 한글 깨지는 문제 방지 및 해결</category>
      <category>VScode 한글 깨짐 방지 코드</category>
      <author>엑소더스팩토리</author>
      <guid isPermaLink="true">https://rasino.tistory.com/371</guid>
      <comments>https://rasino.tistory.com/371#entry371comment</comments>
      <pubDate>Thu, 12 Oct 2023 11:13:29 +0900</pubDate>
    </item>
    <item>
      <title>【 아두이노Nano33#3】NANO33IoT BLE 저전력 블루투스 사용설명서 #1 (BLE로 LED&amp;amp;서보모터 제어)</title>
      <link>https://rasino.tistory.com/369</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Nano33ioT-BLE-기초-1편.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1080&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/plDVM/btsyXYWEGuQ/eUjdGEWUbk74jRCcCfRKzk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/plDVM/btsyXYWEGuQ/eUjdGEWUbk74jRCcCfRKzk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/plDVM/btsyXYWEGuQ/eUjdGEWUbk74jRCcCfRKzk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FplDVM%2FbtsyXYWEGuQ%2FeUjdGEWUbk74jRCcCfRKzk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1920&quot; height=&quot;1080&quot; data-filename=&quot;Nano33ioT-BLE-기초-1편.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1080&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;3회에 걸쳐 Nano33 ioT 보드의 BLE 저전력 블루투스를 사용하는 다양한 방법에 대해 다루고자 합니다.&amp;nbsp; 아두이노 나노33 보드시리즈는 콤팩트하면서 사용법이 아두이노 우노(나노)와 유사하여 쉽게 접근가능하고 여기에 더해 WiFi기능과 저전력 블루투스 기능을 활용할 수 있는 매우 장점이 큰 보드입니다. 다만 유사한 기능을 제공하는 ESP32 보드에 비해 단가가 조금 나가는 단점이 있지만 아두이노 정품 보드의 정통성?을 이어받아 안정적이고 불량률이 거의 없다는 점이 장점인 보드입니다.&amp;nbsp; 기본적인 스펙과 사용법은 아래, 이전 게시글을 참고하시면 상세하게 파악할 수 있으니 참고해 보세요.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;【 Nano33 IoT 선수학습 】&lt;/h3&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;1. &lt;a href=&quot;https://rasino.tistory.com/301&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;【 아두이노Nano33#1】 NANO 33 IoT 처음사용 설명서&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;2. &lt;a href=&quot;https://rasino.tistory.com/302&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;【 아두이노Nano33#1-2】 NANO 33 IoT 처음사용 설명서 #1-2 (LSM6DS3 센서 테스트)&lt;/a&gt; (자이로센서 등등)&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;3. &lt;a href=&quot;https://rasino.tistory.com/310&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;【 아두이노Nano33#2】 NANO 33 IoT 처음사용 설명서 2편 WiFi 활용하기&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;【 학습 목표 】&lt;/h3&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #5733b1;&quot;&gt;&lt;b&gt;&amp;lt;1편&amp;gt;&amp;nbsp; Nano33 기본 환경설정과 BLE 페어링 후 스위치로 LED On/Off 제어하기&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; ① BLE(UUID)에 대한 이해와 nano33 BLE 사용을 위한 기본 환경 설정(보드&amp;amp;라이브러리 설치)&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; ② Nano33 BLE&amp;nbsp; 스캔과 페어링&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; ③ Nano33 스위치회로와 LED회로 제작 후 블루투스(BLE)로 제어하기&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; ④ 서보모터 스위치로 제어하기&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #5733b1;&quot;&gt;&lt;b&gt;&amp;lt;2 편&amp;gt; 블루투스로 도어(Door 문)&amp;nbsp; 잠금장치(솔레노이드) 열고 닫기&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; ① 주요 부품 소개 ( 솔레노이드 / 솔레노이드 잠금걸쇠 / 릴레이 )&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; ② 도어 미니어처 제작 (3D 모델링과 3D 프린팅)&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; ③ 블루투스(BLE)로 도어 열고 닫기&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #5733b1;&quot;&gt;&lt;b&gt;&amp;lt;3 편&amp;gt; 앱 인벤터(App Inventor) 만들고 스마트폰으로 도어 열고 닫기&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; ① nRF Connect 앱 활용해 보기 (LED 기본 제어)&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; ② 블루투스 스캔 및 연결과 같은 기본 앱 기능 만들고 LED 제어해 보기&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; ③ 앱 안정성 높이고 연결하려는 BLE장치 바로 연결시키기&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; ④ LED 제어와 Door 제어 결합된 앱 만들기&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&amp;lt; Nano33 ioT 스펙과 기본 정보 &amp;gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Nano33 보드 시리즈 스펙 정보&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;나노보드 분류(Rasino).png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1080&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/0JyD0/btsviVhyciY/vkOlsPBTG3folfkFwRpk30/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/0JyD0/btsviVhyciY/vkOlsPBTG3folfkFwRpk30/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/0JyD0/btsviVhyciY/vkOlsPBTG3folfkFwRpk30/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F0JyD0%2FbtsviVhyciY%2FvkOlsPBTG3folfkFwRpk30%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1920&quot; height=&quot;1080&quot; data-filename=&quot;나노보드 분류(Rasino).png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1080&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Nano33 시리즈 핀 배열&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Nano-33-IOT-board_Pinout_1.jpg&quot; data-origin-width=&quot;877&quot; data-origin-height=&quot;553&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/c4QZoT/btsvb3N3zUj/zKMKaGWxEHtErzpIY5P9N1/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/c4QZoT/btsvb3N3zUj/zKMKaGWxEHtErzpIY5P9N1/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/c4QZoT/btsvb3N3zUj/zKMKaGWxEHtErzpIY5P9N1/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fc4QZoT%2Fbtsvb3N3zUj%2FzKMKaGWxEHtErzpIY5P9N1%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;877&quot; height=&quot;553&quot; data-filename=&quot;Nano-33-IOT-board_Pinout_1.jpg&quot; data-origin-width=&quot;877&quot; data-origin-height=&quot;553&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;color: #5733b1;&quot;&gt;&lt;b&gt;&amp;lt;1편&amp;gt;&amp;nbsp; Nano33 기본 환경설정과 BLE 페어링 후 스위치로 LED On/Off 제어하고 서보모터까지 하기&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;br /&gt;&lt;b&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; ① BLE(UUID)에 대한 이해와 nano33 BLE 사용을 위한 기본 환경 설정(보드&amp;amp;라이브러리 설치)&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp; &amp;nbsp;- UUID란 ?&amp;nbsp;&lt;br /&gt;&amp;nbsp; UUID는 Universally Unique Identifier의 약자이며 범용의 고유 식별자를 의미합니다.&amp;nbsp; 네트워크 상에서 고유성이 보장되는&amp;nbsp; id를 만들기 위한 표준 규약으로서, 서로 모르는 많은 개체들을 식별하고 구별하기 위해서는 거의 중복되지 않는 각각의 고유한 이름이 필요한데요, 이를 구현하기 위해 128비트(16바이트) 길이의 값을 사용합니다.&amp;nbsp;&lt;br /&gt;128비트의 길이는 2진으로 표현하면 대략 아래 예시와 같습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #000000; text-align: start;&quot;&gt;1110110100 0101001001 0101010010 1010101011 1110101001 1010101010 1110101010 1010101001 0101010101 0101010101 1010010011 1110101110 01110101&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;128비트는 경우의 수(가지 수)가 2의 128승 이므로,&amp;nbsp; 이를 굳이 계산해보면, &lt;span style=&quot;background-color: #ffffff; color: #616161; text-align: start;&quot;&gt;340,282,366,920,938,463,463,374,607,431,768,211,456&amp;nbsp; 라는 어마 어마한 가지 수가 나오기 때문에, 실제적으로 겹치지 않는 ID를 가질 수 있다고 할 수 있습니다.&amp;nbsp; 더군다나,&amp;nbsp; 범위가 제한적인 WiFi 혹은 BLE 블루투스 네트워크에서는 현실적으로 겹칠 수 없는 고유 ID를 가질 수 있다고 할 수 있습니다.&amp;nbsp;&lt;br /&gt;( 비트 단위의 가지 수 이해를 돕기 위해, 또 다른 예시를 들자면,&amp;nbsp; 인터넷 IP부족으로 인해 32비트의 IPv4를 대신하여 128비트의 주소 길이를 가진 IPv6가 나왔습니다.&amp;nbsp; &lt;br /&gt;&amp;nbsp;○ IPv4는&amp;nbsp; &amp;nbsp;8비트씩 4부분으로 10진수로 표시 &amp;rarr;&amp;nbsp; &amp;nbsp;220.123.103.253&amp;nbsp; (약 43억 개)&lt;br /&gt;&lt;span style=&quot;background-color: #ffffff; color: #616161; text-align: start;&quot;&gt;&amp;nbsp;○ IPv6는 16비트씩 8부분으로 16진수로 표시 &amp;rarr;&amp;nbsp; &amp;nbsp;2201:0123:1adc:ffff:253d:a3d2:bc34:67da&amp;nbsp; (43억X&lt;span style=&quot;background-color: #ffffff; color: #616161; text-align: start;&quot;&gt;43억X&lt;/span&gt;&lt;span style=&quot;background-color: #ffffff; color: #616161; text-align: start;&quot;&gt;43억X&lt;/span&gt;&lt;span style=&quot;background-color: #ffffff; color: #616161; text-align: start;&quot;&gt;43억 개)&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&amp;nbsp; 따라서 IPv6의 주소 범위는 0000:0000:0000:0000:0000:0000:0000:0000&lt;span style=&quot;background-color: #ffffff; color: #161616; text-align: start;&quot;&gt;에서&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff&amp;nbsp; 이기 때문에 거의 무한대의 주소 개수를 사용할 수 있다고 할 수 있습니다)&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #616161; text-align: start;&quot;&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;그럼, 다시 UUID로 넘어와서,&amp;nbsp; 그런데, 128비트나 되는 수를 2진수로 표현하면 너무 많은 자리 수를 차지하기에 &lt;/span&gt;이를 16진수로 표현하게 되는데요,&amp;nbsp; 4비트가 각각 16진 한 자리를 차지하므로,&amp;nbsp; 자리수로는 32자리가 되고 아래처럼 4개의 '-' 구분자를 넣어 표시하게 됩니다.&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;19B10000&lt;span style=&quot;color: #006dd7;&quot;&gt;-&lt;/span&gt;E8F2&lt;span style=&quot;color: #006dd7;&quot;&gt;-&lt;/span&gt;537E&lt;span style=&quot;color: #006dd7;&quot;&gt;-&lt;/span&gt;4F6C&lt;span style=&quot;color: #006dd7;&quot;&gt;-&lt;/span&gt;D104768A1214&amp;nbsp; &amp;nbsp; (8자리 - 4자리 - 4자리 - 4자리 - 12자리)&amp;nbsp;&lt;br /&gt;'-' 구분자까지 포함하면 전체 자리 수는 36자리로 표현됩니다.&lt;br /&gt;&lt;br /&gt;사실 UUID는 저전력 블루투스인 BLE 뿐 아니라, 데이터베이스, 시스템 인스턴스, JAVA5와 같은 코드에서 고유 식별자를 생성하기 위해 두루두루 사용되고 있습니다.&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;UUID의 코드 구성은 아래와 같습니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;time_based_uuid_example-f.png&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;480&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/IxOMx/btsvnhjuN9z/cEyoM3Zw7Zsf2KLSkeqaB1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/IxOMx/btsvnhjuN9z/cEyoM3Zw7Zsf2KLSkeqaB1/img.png&quot; data-alt=&quot;이미지 출처 :&amp;amp;amp;nbsp;https://www.techtarget.com/searchapparchitecture/definition/UUID-Universal-Unique-Identifier&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/IxOMx/btsvnhjuN9z/cEyoM3Zw7Zsf2KLSkeqaB1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FIxOMx%2FbtsvnhjuN9z%2FcEyoM3Zw7Zsf2KLSkeqaB1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1200&quot; height=&quot;480&quot; data-filename=&quot;time_based_uuid_example-f.png&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;480&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;이미지 출처 :&amp;amp;nbsp;https://www.techtarget.com/searchapparchitecture/definition/UUID-Universal-Unique-Identifier&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;UUID는 이런 규칙에 의해서 생성되기 때문에 동일한 UUID가 생성되어 충돌이 일어날 확률은 거의 0에 가깝다고 할 수 있습니다.&amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp;또한 UUID는 이런 규칙으로 생성시킬 수 있는 생성기(Generator)가 있으며,&amp;nbsp; 대표적으로 아래 두 가지 사이트에서 제공되는 것을 많이 이용합니다.&amp;nbsp;&lt;br /&gt;1.&amp;nbsp; 온라인 UUID 제너레이터 :&amp;nbsp; &amp;nbsp;&lt;a href=&quot;https://www.uuidgenerator.net/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://www.uuidgenerator.net/&lt;/a&gt; &amp;nbsp;&lt;br /&gt;2.&amp;nbsp; 온라인 UUID 툴 : &lt;a href=&quot;https://www.uuidtools.com/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://www.uuidtools.com/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;UUID 생성사이트.png&quot; data-origin-width=&quot;1179&quot; data-origin-height=&quot;787&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bjuYg6/btsvdoLduI7/Oxlb2OUgUWzjiDAAf3cRqk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bjuYg6/btsvdoLduI7/Oxlb2OUgUWzjiDAAf3cRqk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bjuYg6/btsvdoLduI7/Oxlb2OUgUWzjiDAAf3cRqk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbjuYg6%2FbtsvdoLduI7%2FOxlb2OUgUWzjiDAAf3cRqk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1179&quot; height=&quot;787&quot; data-filename=&quot;UUID 생성사이트.png&quot; data-origin-width=&quot;1179&quot; data-origin-height=&quot;787&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위 사이트를 보면, UUID는 생성 방법에 따라 버전 1에서부터 버전 5까지 있는데요, 버전 1 또는 버전 4를 대표적으로 많이 사용합니다.&amp;nbsp; 그래서 위 1 버전 또는 4 버전 둘 중 하나를 골라 생성 후 복사(copy)하여 사용하면 됩니다.&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;lt;BLE 란?&amp;gt; &lt;br /&gt;그럼 여기서 BLE에 대해 간략히 설명하자면,&amp;nbsp; BLE는&amp;nbsp; Bluetooth Low Energy의 약자로 기존 블루투스 통신의 약점인 소비전력을 크게 낮춘 블루투스 통신 방식이라 할 수 있습니다.&amp;nbsp; (Bluetooth LE로 표시하기도 함)&lt;br /&gt;스마트워치나, 헬스케어 디바이스, 스마트폰과 연동되는 이어폰 및 다양한 기기 등, 배터리를 사용해야 하는 무선기기 간 통신이 늘어남에 따라 배터리 소모를 줄여줄 수 있는 기존 블루투스(Bluetooth Classic)를 개량한 통신형태가 필요했고 이에 나타난 것이 BLE 통신이라고 할 수 있습니다.&amp;nbsp; 이런 과정에서 통신하고자 하는 기기간 식별을 위해 범용고유 ID식별 기술인 UUID 방식을 사용하고 있습니다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;BLE 통신이 기존 블루투스 클래식(Bluetooth Class)에 비해 저전력인 이유는 기존 연결 방식은 연속적인 데이터 스트림으로 인해 지속적으로 전력을 소모하게 되는 반면에,&amp;nbsp; &amp;nbsp;BLE는 동작 주기(duty cycle)가 수 밀리초(ms)로 가벼운 구동 방식을 취하며, 사용되지 않는 대부분 시간을 슬립 모드(sleep mode, 또는 절전모드)로 있어 전력 소모가 매우 적은 가장 큰 차이점이 있습니다.&amp;nbsp;&lt;br /&gt;&amp;nbsp;그리고 2MHz의 대역폭을 사용하고 1Mbps의 전송 속도를 지원하지만 동작 주기가 짧아 평균 전송 속도를 낮출 수 있어&amp;nbsp; 전력 효율을 향상할 수 있고 장치에 따라 배터리 교환 없이 1년 이상을 사용할 수도 있습니다.&amp;nbsp; 따라서 저전력 블루투스 기술을 활용하면 전력소비를 크게 줄일 수 있는 통신 디바이스 또는 시스템을 구성할 수 있습니다.&lt;br /&gt;&lt;br /&gt;기존 블루투스 클래식의 연결방식은 Master와 Slave의 방식으로 연결이 되는데요, Master가 Master 주변으로 주변에 있던 Salve에게 요청 신호를 넣고 슬레이브가 그에 응답한 뒤 페어링이 이루어지는 연결방식을 사용하고 있습니다.&amp;nbsp;&lt;br /&gt;&lt;br /&gt;BLE 통신에서는 Central이라고 하는 Observer 역할의 중앙장치와 Peripheral이라고 하는 주변장치로 구분하여 통신하는데요,&amp;nbsp;&lt;br /&gt;주변장치(Peripheral)가 주변에 일정간격으로 Advertise(일종의 라디오처럼 브로드캐스팅)하고 Central(옵저버-observer)이 스캔을 하여 페어링을 하게 되는 구조를 갖고 있습니다.&amp;nbsp;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;BLE 연결.png&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;872&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/djsj3y/btsvkqvhUJs/7XF889wIH2ai2zAfGNTQrK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/djsj3y/btsvkqvhUJs/7XF889wIH2ai2zAfGNTQrK/img.png&quot; data-alt=&quot;이미지 출처 : Microchip&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/djsj3y/btsvkqvhUJs/7XF889wIH2ai2zAfGNTQrK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fdjsj3y%2FbtsvkqvhUJs%2F7XF889wIH2ai2zAfGNTQrK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1280&quot; height=&quot;872&quot; data-filename=&quot;BLE 연결.png&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;872&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;이미지 출처 : Microchip&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;BLE 연결2.png&quot; data-origin-width=&quot;808&quot; data-origin-height=&quot;392&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/Rwn5P/btsvkRMMeDv/8WkhpgLKSigKh0skEktjWK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Rwn5P/btsvkRMMeDv/8WkhpgLKSigKh0skEktjWK/img.png&quot; data-alt=&quot;이미지 출처 : Microchip&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Rwn5P/btsvkRMMeDv/8WkhpgLKSigKh0skEktjWK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FRwn5P%2FbtsvkRMMeDv%2F8WkhpgLKSigKh0skEktjWK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;808&quot; height=&quot;392&quot; data-filename=&quot;BLE 연결2.png&quot; data-origin-width=&quot;808&quot; data-origin-height=&quot;392&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;이미지 출처 : Microchip&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Master 와 Slave.png&quot; data-origin-width=&quot;639&quot; data-origin-height=&quot;234&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bxMf8Y/btsvna5RNdi/y9LmRyYXEM3Om2ZoHlcbDK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bxMf8Y/btsvna5RNdi/y9LmRyYXEM3Om2ZoHlcbDK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bxMf8Y/btsvna5RNdi/y9LmRyYXEM3Om2ZoHlcbDK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbxMf8Y%2Fbtsvna5RNdi%2Fy9LmRyYXEM3Om2ZoHlcbDK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;639&quot; height=&quot;234&quot; data-filename=&quot;Master 와 Slave.png&quot; data-origin-width=&quot;639&quot; data-origin-height=&quot;234&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;03 BLE 통신 절차.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1080&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/c0OuPB/btsvqAwrnuk/q2Kw0Nrcbr0uAyKoky5amk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/c0OuPB/btsvqAwrnuk/q2Kw0Nrcbr0uAyKoky5amk/img.png&quot; data-alt=&quot;이미지 출처 : Microchip&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/c0OuPB/btsvqAwrnuk/q2Kw0Nrcbr0uAyKoky5amk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fc0OuPB%2FbtsvqAwrnuk%2Fq2Kw0Nrcbr0uAyKoky5amk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1920&quot; height=&quot;1080&quot; data-filename=&quot;03 BLE 통신 절차.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1080&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;이미지 출처 : Microchip&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;정리하자면,&amp;nbsp; &lt;br /&gt;주변장치인 Advertiser (Broadcaster)는 Advertising Packet을 자신 주변으로 주기적으로 보내는 장치이며,&lt;br /&gt;중앙장치인 Observer는&amp;nbsp; Advertiser가 보내고 있는 Advertising Packet을 듣기 위해 주기적으로 Scanning 하게 됩니다.&amp;nbsp;&lt;br /&gt;그러다 연결하고자 하는 프로파일(Profile-서비스 묶음) 정보가 일치하게 되면 연결신호를 주고받고 승낙되면서 페어링 하게 됩니다.&amp;nbsp; &amp;nbsp;이 과정에서 서비스 이름 및 특성(CHARACTERISTIC)과 UUID가 일치하는지 확인하게 됩니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;프로파일 UUID.png&quot; data-origin-width=&quot;750&quot; data-origin-height=&quot;421&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cY1m1l/btsvjhL782G/87s2EkK1KnTukCTUFKJ4k1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cY1m1l/btsvjhL782G/87s2EkK1KnTukCTUFKJ4k1/img.png&quot; data-alt=&quot;이미지 출처 : Random nerd tutorials lab&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cY1m1l/btsvjhL782G/87s2EkK1KnTukCTUFKJ4k1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcY1m1l%2FbtsvjhL782G%2F87s2EkK1KnTukCTUFKJ4k1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;750&quot; height=&quot;421&quot; data-filename=&quot;프로파일 UUID.png&quot; data-origin-width=&quot;750&quot; data-origin-height=&quot;421&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;이미지 출처 : Random nerd tutorials lab&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;【 실습 준비 】&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이번 실습을 위해 필요한 준비물입니다. 아래와 같은 재료를 준비하면 실습을 진행할 수 있습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;실습준비물1편-재료-lbl.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1080&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/Ly3Id/btsyQpTnM8d/kzbiYUAVJg97juLBbM3B8K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Ly3Id/btsyQpTnM8d/kzbiYUAVJg97juLBbM3B8K/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Ly3Id/btsyQpTnM8d/kzbiYUAVJg97juLBbM3B8K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FLy3Id%2FbtsyQpTnM8d%2FkzbiYUAVJg97juLBbM3B8K%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1920&quot; height=&quot;1080&quot; data-filename=&quot;실습준비물1편-재료-lbl.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1080&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;- &lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt;Nano33 ioT 보드&lt;/b&gt;&lt;/span&gt; X &lt;b&gt;2개&lt;/b&gt; 이상&lt;br /&gt;- &lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt;브레드 보드&lt;/b&gt;&lt;/span&gt;(400핀 또는 840핀) X &lt;b&gt;2개&lt;/b&gt; 이상&lt;br /&gt;- &lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt;LED&lt;/b&gt;&lt;/span&gt; X &lt;b&gt;1개&lt;/b&gt;&lt;br /&gt;- &lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt;저항 220옴&lt;/b&gt;&lt;/span&gt;(150Ω~470Ω 가능)&amp;nbsp; X &lt;b&gt;1개&lt;br /&gt;&lt;/b&gt; &lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;-&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt;저항 10K옴&lt;/b&gt;&lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;(4.7KΩ~10KΩ 가능)&amp;nbsp; X&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;1개&lt;/b&gt; &lt;br /&gt;- &lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt;푸시 버튼&lt;/b&gt;&lt;/span&gt;(종류 모양 상관없음) X &lt;b&gt;1개&lt;/b&gt;&amp;nbsp;&lt;br /&gt;- &lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt;서보모터&lt;/b&gt;&lt;/span&gt;(SG90 또는 MG90) X &lt;b&gt;1개&lt;/b&gt;&lt;br /&gt;- &lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt;점퍼선&lt;/b&gt;&lt;/span&gt;(연결선) 또는 &lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt;PCB헤더&lt;/b&gt;&lt;/span&gt; 3핀 이상 X &lt;b&gt;한 묶음&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;&amp;nbsp; ① BLE(UUID)에 대한 이해와 nano33 BLE 사용을 위한 기본 환경 설정(보드&amp;amp;라이브러리 설치) &lt;/b&gt;&lt;/span&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그럼, 이제 Arduino nano 33 ioT 모듈과 BLE를 사용기 위한 기본적인 환경설정을 해볼게요.&amp;nbsp;&lt;br /&gt;&lt;br /&gt;우선, 아두이노 IDE에서 nano33 ioT 보드를 인식하기 위해서는 보드 관련 라이브러리를 설치해야 하는데요, 아래처럼 &quot;보드라이브러리&quot;에서(그냥 라이브러리 관리자가 아님에 주의!)&amp;nbsp; &quot;nano 33&quot;으로 검색한 후 아래 분홍색 점선 박스의 보드 라이브러리를 설치해 주세요. ( 좀 더 상세한 사용법은 이 글 맨 위에 있는 &quot;[선수학습] Nano 33 ioT 처음사용설명서&quot; 게시글 링크를 참고해 주세요)&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;001 보드매니저에서 nano 33 관련 파일 설치.png&quot; data-origin-width=&quot;786&quot; data-origin-height=&quot;443&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/drttMC/btsvnak4XBC/k49ZjcMb6osv0ztNMY90k1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/drttMC/btsvnak4XBC/k49ZjcMb6osv0ztNMY90k1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/drttMC/btsvnak4XBC/k49ZjcMb6osv0ztNMY90k1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdrttMC%2Fbtsvnak4XBC%2Fk49ZjcMb6osv0ztNMY90k1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;786&quot; height=&quot;443&quot; data-filename=&quot;001 보드매니저에서 nano 33 관련 파일 설치.png&quot; data-origin-width=&quot;786&quot; data-origin-height=&quot;443&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;설치 후에는 아래처럼, 새로운 보드 그룹이 생겨나며 Arduino NANO 33 IoT를 선택할 수 있습니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;001-1.png&quot; data-origin-width=&quot;1217&quot; data-origin-height=&quot;745&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dYOP9M/btsvJO9r1rj/TWkfBHkeRlbVRL2YkbAtt0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dYOP9M/btsvJO9r1rj/TWkfBHkeRlbVRL2YkbAtt0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dYOP9M/btsvJO9r1rj/TWkfBHkeRlbVRL2YkbAtt0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdYOP9M%2FbtsvJO9r1rj%2FTWkfBHkeRlbVRL2YkbAtt0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1217&quot; height=&quot;745&quot; data-filename=&quot;001-1.png&quot; data-origin-width=&quot;1217&quot; data-origin-height=&quot;745&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다음, BLE 기능을 사용하기 위해서는 &quot;라이브러리 관리자&quot;에서 &quot;&lt;b&gt;arduino&lt;span style=&quot;color: #006dd7;&quot;&gt;ble&lt;/span&gt;&lt;/b&gt;&quot; 라이브러리를 설치해야 합니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;002 라이브러리관리에서 arduinoble 라이브러리 설치.png&quot; data-origin-width=&quot;786&quot; data-origin-height=&quot;443&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/UgkWE/btsvQbP9BTO/82jH0kMIV8QJ6fUPTCGuk0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/UgkWE/btsvQbP9BTO/82jH0kMIV8QJ6fUPTCGuk0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/UgkWE/btsvQbP9BTO/82jH0kMIV8QJ6fUPTCGuk0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FUgkWE%2FbtsvQbP9BTO%2F82jH0kMIV8QJ6fUPTCGuk0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;786&quot; height=&quot;443&quot; data-filename=&quot;002 라이브러리관리에서 arduinoble 라이브러리 설치.png&quot; data-origin-width=&quot;786&quot; data-origin-height=&quot;443&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; ② Nano33 BLE&amp;nbsp; 스캔과 페어링&lt;/b&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;arduinoble 라이브러리를 설치하게 되면, 관련 예제 파일들이 설치되는데요,&amp;nbsp; 예제 파일에는 BLE 라이브러리를 사용해서&amp;nbsp; 블루투스를 활용할 수 있는 내용으로 구성되어 있어 이를 응용해 볼 수 있습니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;002.png&quot; data-origin-width=&quot;797&quot; data-origin-height=&quot;832&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/tNvI3/btswbExYO4M/1fgGXk2kWcSbWIJhp5zKNk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/tNvI3/btswbExYO4M/1fgGXk2kWcSbWIJhp5zKNk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/tNvI3/btswbExYO4M/1fgGXk2kWcSbWIJhp5zKNk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FtNvI3%2FbtswbExYO4M%2F1fgGXk2kWcSbWIJhp5zKNk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;797&quot; height=&quot;832&quot; data-filename=&quot;002.png&quot; data-origin-width=&quot;797&quot; data-origin-height=&quot;832&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;스캔파일의 내용은 아래와 같습니다&lt;/p&gt;
&lt;pre id=&quot;code_1696912742631&quot; class=&quot;cpp&quot; data-ke-language=&quot;cpp&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;#include &amp;lt;ArduinoBLE.h&amp;gt;

void setup() {
  Serial.begin(9600);
  while (!Serial);

  // begin initialization
  if (!BLE.begin()) {
    Serial.println(&quot;starting Bluetooth&amp;reg; Low Energy module failed!&quot;);

    while (1);
  }

  Serial.println(&quot;Bluetooth&amp;reg; Low Energy Central scan&quot;);

  // start scanning for peripheral
  BLE.scan();
}

void loop() {
  // check if a peripheral has been discovered
  BLEDevice peripheral = BLE.available();

  if (peripheral) {
    // discovered a peripheral
    Serial.println(&quot;Discovered a peripheral&quot;);
    Serial.println(&quot;-----------------------&quot;);

    // print address
    Serial.print(&quot;Address: &quot;);
    Serial.println(peripheral.address());

    // print the local name, if present
    if (peripheral.hasLocalName()) {
      Serial.print(&quot;Local Name: &quot;);
      Serial.println(peripheral.localName());
    }

    // print the advertised service UUIDs, if present
    if (peripheral.hasAdvertisedServiceUuid()) {
      Serial.print(&quot;Service UUIDs: &quot;);
      for (int i = 0; i &amp;lt; peripheral.advertisedServiceUuidCount(); i++) {
        Serial.print(peripheral.advertisedServiceUuid(i));
        Serial.print(&quot; &quot;);
      }
      Serial.println();
    }

    // print the RSSI
    Serial.print(&quot;RSSI: &quot;);
    Serial.println(peripheral.rssi());

    Serial.println();
  }
}&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Scan 파일은 아두이노 IDE의 예제 항목에 있지만, 필요한 경우 아래를 다운로드하여 압축을 풀고 사용해 보세요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;fileblock&quot; data-ke-align=&quot;alignCenter&quot;&gt;&lt;a href=&quot;https://blog.kakaocdn.net/dn/ABAcM/btsxrjt1Emb/QBCWNa8NKXUbNH3zWKTK81/Scan.zip?attach=1&amp;amp;knm=tfile.zip&quot; class=&quot;&quot;&gt;
    &lt;div class=&quot;image&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;desc&quot;&gt;&lt;div class=&quot;filename&quot;&gt;&lt;span class=&quot;name&quot;&gt;Scan.zip&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;size&quot;&gt;0.00MB&lt;/div&gt;
&lt;/div&gt;
  &lt;/a&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;특별한 회로 조립 없이 나노 33 보드만 PC와 연결하여 , 코드를 업로드하고 시리얼모니터 창을 열어보면, Nano33 보드 주변으로 블루투스 신호가 잡히는 것을 볼 수 있습니다.&amp;nbsp;&lt;br /&gt;&lt;br /&gt;신호 중에는 일반 블루투스(클래식) 장치도 있고, UUID 서비스 이름과 UUID 고유번호가 보이는 BLE 장치도 검색된 것을 알 수 있습니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;06.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1080&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/VMvgu/btsx1RPBC6a/Vz9kh2PIduUjbkVDLIRNMK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/VMvgu/btsx1RPBC6a/Vz9kh2PIduUjbkVDLIRNMK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/VMvgu/btsx1RPBC6a/Vz9kh2PIduUjbkVDLIRNMK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FVMvgu%2Fbtsx1RPBC6a%2FVz9kh2PIduUjbkVDLIRNMK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1920&quot; height=&quot;1080&quot; data-filename=&quot;06.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1080&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;&amp;nbsp; &amp;nbsp; ③ Nano33 스위치회로와 LED회로 제작 후 블루투스(BLE)로 제어하기&lt;/b&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&amp;lt; 1. LED 회로(주변장치-Peripheral) &amp;gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;아래&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;연결도를 참고하여 주변장치(Peripheral)로 사용될 LED 회로를 준비해 주세요.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;01-LED-회로(lbl2).png&quot; data-origin-width=&quot;988&quot; data-origin-height=&quot;788&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/AXTBA/btsx160bE2T/IYStwcRRSGygtBYLEoYAF1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/AXTBA/btsx160bE2T/IYStwcRRSGygtBYLEoYAF1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/AXTBA/btsx160bE2T/IYStwcRRSGygtBYLEoYAF1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FAXTBA%2Fbtsx160bE2T%2FIYStwcRRSGygtBYLEoYAF1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;988&quot; height=&quot;788&quot; data-filename=&quot;01-LED-회로(lbl2).png&quot; data-origin-width=&quot;988&quot; data-origin-height=&quot;788&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;[ 코드 - LED 회로 ]&lt;/p&gt;
&lt;pre id=&quot;code_1696937149463&quot; class=&quot;cpp&quot; data-ke-language=&quot;cpp&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;./*  [ LED Peripheral (LED 회로)]  Server */

#include &amp;lt;ArduinoBLE.h&amp;gt;

BLEService ledService(&quot;19B10000-E8F2-537E-4F6C-D104768A1214&quot;); // Bluetooth&amp;reg; Low Energy LED Service

// Bluetooth&amp;reg; Low Energy LED Switch Characteristic - custom 128-bit UUID, read and writable by central
BLEByteCharacteristic switchCharacteristic(&quot;19B10001-E8F2-537E-4F6C-D104768A1214&quot;, BLERead | BLEWrite);

const int ledPin = LED_BUILTIN; // pin to use for the LED

void setup() {
  Serial.begin(9600);

// 아래 코드는 시리얼 포트가 준비될 때까지 무한 대기하게 됩니다.
// 따라서 시리얼모니터 사용 없이 동작시키고자 한다면 아랫부분을 반드시 주석 처리해 주세요 
  while (!Serial);    

  // set LED pin to output mode
  pinMode(ledPin, OUTPUT);

  // begin initialization
  if (!BLE.begin()) {
    Serial.println(&quot;starting Bluetooth&amp;reg; Low Energy module failed!&quot;);

    while (1);     // BLE 서비스가 시작될 때까지 무한 루프
  }

  // set advertised local name and service UUID:
  BLE.setLocalName(&quot;LED&quot;);
  BLE.setAdvertisedService(ledService);

  // add the characteristic to the service
  ledService.addCharacteristic(switchCharacteristic);

  // add service
  BLE.addService(ledService);

  // set the initial value for the characeristic:
  switchCharacteristic.writeValue(0);

  // start advertising
  BLE.advertise();

  Serial.println(&quot;BLE LED Peripheral&quot;);
}

void loop() {
  // listen for Bluetooth&amp;reg; Low Energy peripherals to connect:
  BLEDevice central = BLE.central();

  // if a central is connected to peripheral:
  if (central) {
    Serial.print(&quot;Connected to central: &quot;);
    // print the central's MAC address:
    Serial.println(central.address());

    // while the central is still connected to peripheral:
    while (central.connected()) {
      // if the remote device wrote to the characteristic,
      // use the value to control the LED:
      if (switchCharacteristic.written()) {
        if (switchCharacteristic.value()) {   // any value other than 0
          Serial.println(&quot;LED on&quot;);
          digitalWrite(ledPin, HIGH);         // will turn the LED on
        } else {                              // a 0 value
          Serial.println(F(&quot;LED off&quot;));
          digitalWrite(ledPin, LOW);          // will turn the LED off
        }
      }
    }

    // when the central disconnects, print it out:
    Serial.print(F(&quot;Disconnected from central: &quot;));
    Serial.println(central.address());
  }
}&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;(LED회로 코드 다운로드하기)&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;fileblock&quot; data-ke-align=&quot;alignCenter&quot;&gt;&lt;a href=&quot;https://blog.kakaocdn.net/dn/chrGWu/btsx0JZe5ie/KKYvcYlN0xYZFXC5woRAt1/LED_Prep_ok.zip?attach=1&amp;amp;knm=tfile.zip&quot; class=&quot;&quot;&gt;
    &lt;div class=&quot;image&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;desc&quot;&gt;&lt;div class=&quot;filename&quot;&gt;&lt;span class=&quot;name&quot;&gt;LED_Prep_ok.zip&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;size&quot;&gt;0.00MB&lt;/div&gt;
&lt;/div&gt;
  &lt;/a&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&amp;lt; 2. 스위치(S/W) 회로 (중앙장치-Central) &amp;gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래 연결도를 참고하여 중앙장치(Central)로 사용될 버튼 회로를 준비해 주세요.&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;01-SW-회로(lbl2).png&quot; data-origin-width=&quot;1057&quot; data-origin-height=&quot;976&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bTnETN/btsxrjU854X/N5KEv1pJSyi20Cjjfyzkuk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bTnETN/btsxrjU854X/N5KEv1pJSyi20Cjjfyzkuk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bTnETN/btsxrjU854X/N5KEv1pJSyi20Cjjfyzkuk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbTnETN%2FbtsxrjU854X%2FN5KEv1pJSyi20Cjjfyzkuk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1057&quot; height=&quot;976&quot; data-filename=&quot;01-SW-회로(lbl2).png&quot; data-origin-width=&quot;1057&quot; data-origin-height=&quot;976&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;[ 코드 - 스위치(S/W) 회로 ]&lt;/p&gt;
&lt;pre id=&quot;code_1696937238444&quot; class=&quot;cpp&quot; data-ke-language=&quot;cpp&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;/*  LED Control Central (버튼이 있는 회로) Client */

#include &amp;lt;ArduinoBLE.h&amp;gt;

// variables for button
const int buttonPin = 2;
int oldButtonState = LOW;

void setup() {
  Serial.begin(9600);

// 아래 코드는 시리얼 포트가 준비될 때까지 무한 대기하게 됩니다.
// 따라서 시리얼모니터 사용 없이 동작시키고자 한다면 아랫부분을 반드시 주석 처리해 주세요 
  while (!Serial);    

  // configure the button pin as input
  pinMode(buttonPin, INPUT);

  // initialize the Bluetooth&amp;reg; Low Energy hardware
  BLE.begin();

  Serial.println(&quot;Bluetooth&amp;reg; Low Energy Central - LED control&quot;);

  // start scanning for peripherals
  BLE.scanForUuid(&quot;19b10000-e8f2-537e-4f6c-d104768a1214&quot;);
}

void loop() {
  // check if a peripheral has been discovered
  BLEDevice peripheral = BLE.available();

  if (peripheral) {
    // discovered a peripheral, print out address, local name, and advertised service
    Serial.print(&quot;Found &quot;);
    Serial.print(peripheral.address());
    Serial.print(&quot; '&quot;);
    Serial.print(peripheral.localName());
    Serial.print(&quot;' &quot;);
    Serial.print(peripheral.advertisedServiceUuid());
    Serial.println();

    if (peripheral.localName() != &quot;LED&quot;) {
      return;
    }

    // stop scanning
    BLE.stopScan();

    controlLed(peripheral);

    // peripheral disconnected, start scanning again
    BLE.scanForUuid(&quot;19b10000-e8f2-537e-4f6c-d104768a1214&quot;);
  }
}

void controlLed(BLEDevice peripheral) {
  // connect to the peripheral
  Serial.println(&quot;Connecting ...&quot;);

  if (peripheral.connect()) {
    Serial.println(&quot;Connected&quot;);
  } else {
    Serial.println(&quot;Failed to connect!&quot;);
    return;
  }

  // discover peripheral attributes
  Serial.println(&quot;Discovering attributes ...&quot;);
  if (peripheral.discoverAttributes()) {
    Serial.println(&quot;Attributes discovered&quot;);
  } else {
    Serial.println(&quot;Attribute discovery failed!&quot;);
    peripheral.disconnect();
    return;
  }

  // retrieve the LED characteristic
  BLECharacteristic ledCharacteristic = peripheral.characteristic(&quot;19b10001-e8f2-537e-4f6c-d104768a1214&quot;);

  if (!ledCharacteristic) {
    Serial.println(&quot;Peripheral does not have LED characteristic!&quot;);
    peripheral.disconnect();
    return;
  } else if (!ledCharacteristic.canWrite()) {
    Serial.println(&quot;Peripheral does not have a writable LED characteristic!&quot;);
    peripheral.disconnect();
    return;
  }

  while (peripheral.connected()) {
    // while the peripheral is connected

    // read the button pin
    int buttonState = digitalRead(buttonPin);

    if (oldButtonState != buttonState) {
      // button changed
      oldButtonState = buttonState;

      if (buttonState) {
        Serial.println(&quot;button pressed&quot;);

        // button is pressed, write 0x01 to turn the LED on
        ledCharacteristic.writeValue((byte)0x01);
      } else {
        Serial.println(&quot;button released&quot;);

        // button is released, write 0x00 to turn the LED off
        ledCharacteristic.writeValue((byte)0x00);
      }
    }
  }

  Serial.println(&quot;Peripheral disconnected&quot;);
}&lt;/code&gt;&lt;/pre&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;(스위치 회로 코드 다운로드하기)&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;fileblock&quot; data-ke-align=&quot;alignCenter&quot;&gt;&lt;a href=&quot;https://blog.kakaocdn.net/dn/ctSz7q/btsxZy4oWRE/UWRhBKZQkx9ShpcAdIfEsk/LedControl_Cent.zip?attach=1&amp;amp;knm=tfile.zip&quot; class=&quot;&quot;&gt;
    &lt;div class=&quot;image&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;desc&quot;&gt;&lt;div class=&quot;filename&quot;&gt;&lt;span class=&quot;name&quot;&gt;LedControl_Cent.zip&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;size&quot;&gt;0.00MB&lt;/div&gt;
&lt;/div&gt;
  &lt;/a&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;아래는 두 회로를 실제로 조립한 모습입니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;07.png&quot; data-origin-width=&quot;535&quot; data-origin-height=&quot;814&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/m4pjb/btsxsou9QPL/grCcT9qlUbdOgC7gONqAk0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/m4pjb/btsxsou9QPL/grCcT9qlUbdOgC7gONqAk0/img.png&quot; data-alt=&quot;나노33 BLE 주변장치회로(LED)와 중앙장치회로(스위치)&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/m4pjb/btsxsou9QPL/grCcT9qlUbdOgC7gONqAk0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fm4pjb%2Fbtsxsou9QPL%2FgrCcT9qlUbdOgC7gONqAk0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;535&quot; height=&quot;814&quot; data-filename=&quot;07.png&quot; data-origin-width=&quot;535&quot; data-origin-height=&quot;814&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;나노33 BLE 주변장치회로(LED)와 중앙장치회로(스위치)&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;작업의 편의상 하나의 PC에 두 대의 아두이노를 연결하여 작업할 텐데요.&lt;/p&gt;
&lt;p&gt;&lt;img style=&quot;text-align: center; caret-color: transparent; letter-spacing: 0px;&quot; src=&quot;https://blog.kakaocdn.net/dn/bl6biN/btsxrZCk8kh/hmuv4CEOYpE6t59V1hXzI0/img.png&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;789&quot; data-origin-height=&quot;587&quot; data-filename=&quot;08.png&quot; /&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;장치관리자를 열어서 연결된 포트를 확인하면 편합니다. (포트 번호는 PC에 따라 Nano33 보드에 따라 기본적으로 랜덤으로 할당됩니다.&amp;nbsp; 다만 인식한 포트 번호에 마우스 우클릭 후 고급탭으로 들어가서 아래처럼 번호를 변경해 줄 수도 있습니다. )&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;09 시리얼 포트 선택 변경.png&quot; data-origin-width=&quot;903&quot; data-origin-height=&quot;980&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/lm1hi/btsxtWkQDFl/2lfHkSGdHfCDtsZIciDMs1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/lm1hi/btsxtWkQDFl/2lfHkSGdHfCDtsZIciDMs1/img.png&quot; data-alt=&quot;아두이노 보드 연결 포트 번호 변경하는 방법&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/lm1hi/btsxtWkQDFl/2lfHkSGdHfCDtsZIciDMs1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Flm1hi%2FbtsxtWkQDFl%2F2lfHkSGdHfCDtsZIciDMs1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;903&quot; height=&quot;980&quot; data-filename=&quot;09 시리얼 포트 선택 변경.png&quot; data-origin-width=&quot;903&quot; data-origin-height=&quot;980&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;아두이노 보드 연결 포트 번호 변경하는 방법&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고, 하나의 PC에 아두이노 두 대를 연결해서 시리얼 모니터 통신을 하려면, 아두이노 IDE 상에서 nano33 보드가 각각 포트를 다르게 인식하도록 해야 하는데요,&amp;nbsp; 만약, 코드&amp;nbsp;하나를&amp;nbsp;열고서&amp;nbsp;그&amp;nbsp;IDE에서&amp;nbsp;예제를&amp;nbsp;클릭하거나&amp;nbsp;열기로&amp;nbsp;불러오게&amp;nbsp;되면&lt;br /&gt;&amp;nbsp; 두 개의 아두이노가 같은 포트로 인식되어 시리얼 모니터를 이용한 통신이 안 됩니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;우선 첫 번째 예제로 Central 항목에 있는 &amp;ldquo;LedControl&amp;rdquo; 파일을 열어주세요.&amp;nbsp;&lt;br /&gt;앞서 설명한 대로 두 번째 예제 파일은 Arduino IDE 프로그램을 새로 실행시켜서 열어주세요.&lt;br /&gt;두 번째 파일은 새로 실행된 IDE의 예제에서 Peripheral 항목에 있는 &amp;ldquo;LED&amp;rdquo; 파일을 열어주세요.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이때 각각의 nano33이 인식되는 포트가 다르게 어디로 할당되는지 확인해 주세요.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;현재 LedControl 코드는 버튼 회로에 업로드해야 하기에 버튼이 있는 나노의 포트로 선택하세요.&lt;br /&gt;마찬가지로 LED 코드는 LED가 연결된 회로에 업로드하기 위해 LED가 있는 나노를 선택하세요.&lt;br /&gt;그리고 각각 코드를 업로드해줍니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;10.png&quot; data-origin-width=&quot;1551&quot; data-origin-height=&quot;999&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cgy9xa/btsx15U6Rzu/O2KD7NgQR2drmykKiRN5Xk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cgy9xa/btsx15U6Rzu/O2KD7NgQR2drmykKiRN5Xk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cgy9xa/btsx15U6Rzu/O2KD7NgQR2drmykKiRN5Xk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fcgy9xa%2Fbtsx15U6Rzu%2FO2KD7NgQR2drmykKiRN5Xk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1551&quot; height=&quot;999&quot; data-filename=&quot;10.png&quot; data-origin-width=&quot;1551&quot; data-origin-height=&quot;999&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;두 개의 나노보드의 포트를 하나의 PC에서 각각 다르게 인식시키는 확실한 방법은,&amp;nbsp; 해당 아두이노 코드를 각각 저장하고, 각각의 코드를 직접 더블 클릭해서 열면 됩니다.&amp;nbsp;&lt;br /&gt;&lt;br /&gt;일단, 코드를 업로드해보세요,&amp;nbsp; 그리고 바로 버튼을 눌러보세요.&amp;nbsp; &amp;nbsp;그럼,&amp;nbsp; 동작이 안 될 거예요.&amp;nbsp;&amp;nbsp;&lt;br /&gt;그리고 ' &lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;LedControl'&lt;span&gt; 코드와 'LED'코드의 IDE에서 시리얼모니터를 각각 열어보세요. 그럼, 서로 페어링 되는 내용이 표시되고,&amp;nbsp; 그런 다음 동작시켜 보면 아래처럼 동작이 잘 될 거예요.&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;11.png&quot; data-origin-width=&quot;1612&quot; data-origin-height=&quot;804&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/EcvWA/btsx0Jrhqco/JmQWoOweh2llVoB8SzkEv1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/EcvWA/btsx0Jrhqco/JmQWoOweh2llVoB8SzkEv1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/EcvWA/btsx0Jrhqco/JmQWoOweh2llVoB8SzkEv1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FEcvWA%2Fbtsx0Jrhqco%2FJmQWoOweh2llVoB8SzkEv1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1612&quot; height=&quot;804&quot; data-filename=&quot;11.png&quot; data-origin-width=&quot;1612&quot; data-origin-height=&quot;804&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;여기서 다시, 시리얼(모니터) 통신 없이 전원을 연결하여 테스트해보면, 페이링이 되지 않고 동작도 되지 않을 거예요.&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&amp;nbsp;그 이유는 LedControl&lt;span&gt; 코드와 LED 코드에 기본적으로 아두이노 IDE의 시리얼 모니터가 열려야 동작되도록 하는 코드가 들어 있어 그렇습니다.&amp;nbsp;&lt;br /&gt;아래 이미지에 보면,&amp;nbsp; &lt;span style=&quot;color: #953b34;&quot;&gt;&lt;b&gt;while ( &lt;span style=&quot;color: #8a3db6;&quot;&gt;!&lt;/span&gt;Serial );&amp;nbsp;&lt;/b&gt;&lt;/span&gt; 이라는 코드로 인해, 시리얼 모니터가 열리지 않을 경우 그다음라인으로 넘어가지 않도록 되어 있기 때문인데요,&amp;nbsp; &amp;nbsp;이 부분을 주석처리하게 되면,&amp;nbsp; &amp;nbsp;나노 33 보드들에 전원을 연결만 하게 되면 바로 페어링 되어 동작이 가능한 상태가 됩니다.&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;12.png&quot; data-origin-width=&quot;487&quot; data-origin-height=&quot;264&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/blJMcn/btsxvHIaz3d/Esh12Gi40XW0mAlzktbUT0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/blJMcn/btsxvHIaz3d/Esh12Gi40XW0mAlzktbUT0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/blJMcn/btsxvHIaz3d/Esh12Gi40XW0mAlzktbUT0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FblJMcn%2FbtsxvHIaz3d%2FEsh12Gi40XW0mAlzktbUT0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;487&quot; height=&quot;264&quot; data-filename=&quot;12.png&quot; data-origin-width=&quot;487&quot; data-origin-height=&quot;264&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;주석처리 &amp;rarr;&amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #456771;&quot;&gt;&lt;b&gt;//&lt;/b&gt;&lt;/span&gt; &lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: #953b34;&quot;&gt;&lt;b&gt;while (&amp;nbsp;&lt;span style=&quot;color: #8a3db6;&quot;&gt;!&lt;/span&gt;Serial );&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;이후 코드를 재업로드하고 테스트해 보면, 두 장치 모두 PC연결 없어도 페어링과 동작이 잘 됩니다.&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;&amp;nbsp;④ 서보모터 스위치로 제어하기&lt;/b&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그럼 이제 두 번째 실습으로 버튼으로 서보모터를 구동시켜 보도록 하겠습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래 보이는 연결도를 참고하여 두 번째 회로를 준비해 주세요.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;02-서보-회로(lbl).png&quot; data-origin-width=&quot;1587&quot; data-origin-height=&quot;1125&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bt1uGW/btsx3LV7Kxw/uMLtAg2gtOv1p3AYRxtAo1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bt1uGW/btsx3LV7Kxw/uMLtAg2gtOv1p3AYRxtAo1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bt1uGW/btsx3LV7Kxw/uMLtAg2gtOv1p3AYRxtAo1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbt1uGW%2Fbtsx3LV7Kxw%2FuMLtAg2gtOv1p3AYRxtAo1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1587&quot; height=&quot;1125&quot; data-filename=&quot;02-서보-회로(lbl).png&quot; data-origin-width=&quot;1587&quot; data-origin-height=&quot;1125&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;[ 코드 - 서보모터 Peripheral 회로용 코드 ]&lt;/p&gt;
&lt;pre id=&quot;code_1696937393118&quot; class=&quot;cpp&quot; data-ke-language=&quot;cpp&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;/*  Servo Peripheral (서보 회로)  Server */

#include &amp;lt;ArduinoBLE.h&amp;gt;
#include &amp;lt;Servo.h&amp;gt;    // 서보 라이브러리를 지정
#define servoPin 3    // 서보 모터핀을 지정
Servo myservo;          // 서보 라이브러리 객체를 선언
int pos=0;            // 현재 각도를 저장할 변수를 지정한다

BLEService myservoService(&quot;19B10000-E8F2-537E-4F6C-D104768A1214&quot;); // Bluetooth&amp;reg; Low Energy Servo Service

// Bluetooth&amp;reg; Low Energy LED Switch Characteristic - custom 128-bit UUID, read and writable by central
BLEByteCharacteristic switchCharacteristic(&quot;19B10001-E8F2-537E-4F6C-D104768A1214&quot;, BLERead | BLEWrite);

// const int ledPin = LED_BUILTIN; // pin to use for the LED

void setup() {
  Serial.begin(9600);
//  while (!Serial);    
  
  myservo.attach(servoPin);   // 서보모터 핀을 설정한다
//  pinMode(ledPin, OUTPUT);

  // begin initialization
  if (!BLE.begin()) {
    Serial.println(&quot;starting Bluetooth&amp;reg; Low Energy module failed!&quot;);
    while (1);     // BLE 서비스가 시작될 때까지 무한 루프
  }

  // set advertised local name and service UUID:
  BLE.setLocalName(&quot;SERVO&quot;);
  BLE.setAdvertisedService(myservoService);

  // add the characteristic to the service
  myservoService.addCharacteristic(switchCharacteristic);

  // add service
  BLE.addService(myservoService);

  // set the initial value for the characeristic:
  switchCharacteristic.writeValue(0);

  // start advertising
  BLE.advertise();

  Serial.println(&quot;BLE Servo Peripheral&quot;);
}

void loop() {
  // listen for Bluetooth&amp;reg; Low Energy peripherals to connect:
  BLEDevice central = BLE.central();

  // if a central is connected to peripheral:
  if (central) {
    Serial.print(&quot;Connected to central: &quot;);
    // print the central's MAC address:
    Serial.println(central.address());

    // while the central is still connected to peripheral:
    while (central.connected()) { 
      // if the remote device wrote to the characteristic,
      // use the value to control the LED:
      if (switchCharacteristic.written()) {
        if (switchCharacteristic.value()) {   // any value other than 0
          Serial.println(&quot;Servo turn on&quot;);
              myservo.write(180);   // 서보모터의 각도를 변경한다              
              delay(500); // 서보 모터의 각도가 변하는 것을 기다려 준다. 

              myservo.write(0);   // 서보모터의 각도를 변경한다              
              delay(500); // 서보 모터의 각도가 변하는 것을 기다려 준다.                  
        }
      }
          Serial.println(F(&quot;Servo turn off&quot;));
    }

    // when the central disconnects, print it out:
    Serial.print(F(&quot;Disconnected from central: &quot;));
    Serial.println(central.address());
  }
}&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;( 서보모터 회로용(Peripheral) 코드 다운로드 하기)&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;fileblock&quot; data-ke-align=&quot;alignCenter&quot;&gt;&lt;a href=&quot;https://blog.kakaocdn.net/dn/DC93I/btsxzYiQzWG/0v12bN62wtKYHpP1xOlafK/Servo_Prep.zip?attach=1&amp;amp;knm=tfile.zip&quot; class=&quot;&quot;&gt;
    &lt;div class=&quot;image&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;desc&quot;&gt;&lt;div class=&quot;filename&quot;&gt;&lt;span class=&quot;name&quot;&gt;Servo_Prep.zip&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;size&quot;&gt;0.00MB&lt;/div&gt;
&lt;/div&gt;
  &lt;/a&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이번 실습의 서보모터용 코드는 아두이노 코드는 ArduinoBLE 라이브러리를 사용한 예제 파일들을 베이스로 해서 서보모터 제어에 필요한 부분만 추가해 넣어주면 됩니다.&amp;nbsp; &lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;그리고 &lt;/span&gt;다른 부품이나 모듈을 사용한 응용실습을 하려 할 때도 이렇게 기존 예제 파일을 수정해서 작성하면 됩니다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;여기서,&amp;nbsp; 버튼 회로는 실습 1과 동일한 Central 항목에 있는 &amp;ldquo;LedControl&amp;rdquo; 파일을 그대로 사용합니다.&amp;nbsp;&lt;br /&gt;두 번째 서보회로 파일은 Peripheral 항목에 있는 &amp;ldquo;LED&amp;rdquo; 파일에서 서보모터 구동을 위한 코드를 추가해 주면 서보모터를 쉽게 제어할 수 있습니다.&amp;nbsp;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;13.png&quot; data-origin-width=&quot;1306&quot; data-origin-height=&quot;907&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bEy6IK/btsxUaW3aF3/3tL4pETBDVGCnLLfjEs0gk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bEy6IK/btsxUaW3aF3/3tL4pETBDVGCnLLfjEs0gk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bEy6IK/btsxUaW3aF3/3tL4pETBDVGCnLLfjEs0gk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbEy6IK%2FbtsxUaW3aF3%2F3tL4pETBDVGCnLLfjEs0gk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1306&quot; height=&quot;907&quot; data-filename=&quot;13.png&quot; data-origin-width=&quot;1306&quot; data-origin-height=&quot;907&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;서보모터 사용에 대한 관련 자료는 아래 링크를 참고해 보세요.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://rasino.tistory.com/140&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;【 아두이노 기초 】 #23 서보 모터 제어 1&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://rasino.tistory.com/146&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt; 【 아두이노 기초 】 #28 서보(Servo) 모터 제어 하기 1&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://rasino.tistory.com/147&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;【 아두이노 기초 】 #29 서보(Servo) 모터 제어 하기 2&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://rasino.tistory.com/148&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;【 아두이노 기초 】 #30 서보(Servo) 모터 제어 하기 응용&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;서보모터(SG90/MG90 모델)는 동작 전압이 4.8~6V인데,&amp;nbsp; 보통 5V 정도를 별도로 공급해 주는 것이 좋습니다.&amp;nbsp;&lt;br /&gt;영상에서는 임시로 나노보드의 3.3V 출력 단자로 연결하여 테스트해 본 것인데요.&amp;nbsp;&lt;br /&gt;만약 모터에 부하가 가해질 경우 나노보드가 손상될 수 있으니 꼭 별도의 전원으로 동작시켜주세요.&amp;nbsp;&lt;br /&gt;그리고,&amp;nbsp; 실습이 아니라 실제 응용을 하고자 한다면, SG90보다 안정성이 좀 더 좋은 MG90 서보를 사용하는 것을 권해드리고,&amp;nbsp; 동작 토크가 더 필요하다면 MG996R과 같은 하이토크 모델급 이상을 사용하는 것이 좋을 거예요.&amp;nbsp; &amp;nbsp;또한 작동 범위(각도)도&amp;nbsp; 90도, 180도 360도 등 다양하게 있으니 사용 목적에 맞는 서보모터를 선택하면 됩니다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 서보모터를 브레드보드에 연결하기 위해서는 이런 PCB헤더라고 하는 핀을 사용하거나, 가지고 있는 점퍼케이블로 양쪽을 연결해 주면 됩니다.&amp;nbsp;&amp;nbsp;&lt;br /&gt;그럼 통신포트를 확인하고 서보모터 회로에 코드를 업로드해 주세요.&amp;nbsp;&amp;nbsp;&lt;br /&gt;이제 버튼을 눌러보면 잘 동작하는 것을 볼 수 있습니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;14.png&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;775&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bGc0rk/btsx1WKCTFs/CTVXPajmTPpnOEehzSJfOK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bGc0rk/btsx1WKCTFs/CTVXPajmTPpnOEehzSJfOK/img.png&quot; data-alt=&quot;블루투스(BLE) 무선으로 서보모터 제어하기&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bGc0rk/btsx1WKCTFs/CTVXPajmTPpnOEehzSJfOK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbGc0rk%2Fbtsx1WKCTFs%2FCTVXPajmTPpnOEehzSJfOK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;548&quot; height=&quot;775&quot; data-filename=&quot;14.png&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;775&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;블루투스(BLE) 무선으로 서보모터 제어하기&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그럼 이제 아래처럼, PC 연결을 제외하고 외부 전원 연결로 동작이 잘 되는지 테스트해 보세요.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;15.png&quot; data-origin-width=&quot;952&quot; data-origin-height=&quot;827&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/NYF8q/btsxZzhVDHZ/v0fH5ktrgAzgPCqOTMKPIk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/NYF8q/btsxZzhVDHZ/v0fH5ktrgAzgPCqOTMKPIk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/NYF8q/btsxZzhVDHZ/v0fH5ktrgAzgPCqOTMKPIk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FNYF8q%2FbtsxZzhVDHZ%2Fv0fH5ktrgAzgPCqOTMKPIk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;952&quot; height=&quot;827&quot; data-filename=&quot;15.png&quot; data-origin-width=&quot;952&quot; data-origin-height=&quot;827&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그럼&amp;nbsp;여기서&amp;nbsp;서보모터에&amp;nbsp;별도의&amp;nbsp;전원을&amp;nbsp;연결해&amp;nbsp;볼게요&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이때 그라운드(GND)는 모두 동일하게 묶어주어야 합니다.&amp;nbsp;&lt;br /&gt;&lt;br /&gt;그럼 아주 활기 있게 움직이며, 이 때는 서보모터에 부하가 어느 정도 걸려도 잘 동작될 거예요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;16.png&quot; data-origin-width=&quot;980&quot; data-origin-height=&quot;950&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/AbLOP/btsxslZVnqr/0ZYLldGfbrfHSdyg0UTk10/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/AbLOP/btsxslZVnqr/0ZYLldGfbrfHSdyg0UTk10/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/AbLOP/btsxslZVnqr/0ZYLldGfbrfHSdyg0UTk10/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FAbLOP%2FbtsxslZVnqr%2F0ZYLldGfbrfHSdyg0UTk10%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;980&quot; height=&quot;950&quot; data-filename=&quot;16.png&quot; data-origin-width=&quot;980&quot; data-origin-height=&quot;950&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 아래 이미지처럼, 무선 전원으로 9V 배터리를 연결해서도 동작이 잘 되는 것을 볼 수 있습니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;17.png&quot; data-origin-width=&quot;1326&quot; data-origin-height=&quot;1042&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/vhb9v/btsx1RbAS1Z/HhiPigaKLHEPtUKsWaKqt0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/vhb9v/btsx1RbAS1Z/HhiPigaKLHEPtUKsWaKqt0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/vhb9v/btsx1RbAS1Z/HhiPigaKLHEPtUKsWaKqt0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fvhb9v%2Fbtsx1RbAS1Z%2FHhiPigaKLHEPtUKsWaKqt0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1326&quot; height=&quot;1042&quot; data-filename=&quot;17.png&quot; data-origin-width=&quot;1326&quot; data-origin-height=&quot;1042&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;실습 #1 BLE로 LED와 서보모터 제어는 여기까지고요,&amp;nbsp;&lt;br /&gt;다음 #2편 영상에서는 도어록 솔레노이드를 블루투스(BLE)로 제어해 보겠습니다.&amp;nbsp;&lt;br /&gt;&lt;br /&gt;마지막으로 아래 실습 강의 영상과 함께 학습하시면 내용이해에 도움이 될 것으로 생각됩니다.&amp;nbsp;&lt;br /&gt;감사합니다.&amp;nbsp;&amp;nbsp;&lt;br /&gt;&lt;a href=&quot;https://youtu.be/eePGckOYSZs&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://youtu.be/eePGckOYSZs&lt;/a&gt;&lt;/p&gt;
&lt;figure data-ke-type=&quot;video&quot; data-ke-style=&quot;alignCenter&quot; data-video-host=&quot;youtube&quot; data-video-url=&quot;https://www.youtube.com/watch?v=eePGckOYSZs&quot; data-video-thumbnail=&quot;https://scrap.kakaocdn.net/dn/dz0qml/hyT9x3WHd3/maziJK7tVAPCvrEq1vP0Vk/img.jpg?width=1280&amp;amp;height=720&amp;amp;face=0_0_1280_720&quot; data-video-width=&quot;860&quot; data-video-height=&quot;484&quot; data-video-origin-width=&quot;860&quot; data-video-origin-height=&quot;484&quot; data-ke-mobilestyle=&quot;widthContent&quot; data-original-url=&quot;&quot; data-video-title=&quot;&quot;&gt;&lt;iframe src=&quot;https://www.youtube.com/embed/eePGckOYSZs&quot; width=&quot;860&quot; height=&quot;484&quot; frameborder=&quot;&quot; allowfullscreen=&quot;true&quot;&gt;&lt;/iframe&gt;
&lt;figcaption style=&quot;display: none;&quot;&gt;&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>아두이노/5. 아두이노-프렌즈</category>
      <category>App Inventor로 도어 솔레노이드 BLE제어하기</category>
      <category>BLE로 LED 온오프on/off 제어하기</category>
      <category>BLE로 도어 솔레노이드solenoid 제어하기</category>
      <category>nano iot arduinoble 라이브러리 설치</category>
      <category>nano33 iot BLE 블루투스 사용법 활용하기</category>
      <category>nRF Connect app앱 사용하기</category>
      <category>도어 미니어처 3D프린팅하기</category>
      <category>아두이노 보드 시리얼포트 선택 변경하기</category>
      <category>앱인벤터로 nano33 iot BLE 장치 제어하기</category>
      <category>퓨전360 Fusion360 도어 3D 모델링하기</category>
      <author>엑소더스팩토리</author>
      <guid isPermaLink="true">https://rasino.tistory.com/369</guid>
      <comments>https://rasino.tistory.com/369#entry369comment</comments>
      <pubDate>Tue, 10 Oct 2023 20:17:09 +0900</pubDate>
    </item>
    <item>
      <title>【Linux-명령어】우분투(Ubuntu) deb 파일 설치하기(chrome 브라우저 설치)</title>
      <link>https://rasino.tistory.com/368</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;리눅스에서 사용하는 확장자가 .deb 파일은&amp;nbsp; 윈도에서의 실행파일인 .exe나 .msi의 install 파일과 같은 역할을 합니다. 조금 더 정확하게는 프로그램을 설치할 수 있는 패키지 파일이며 더블 클릭해 보면 어떤 패키지로 구성되어 있는지, 확인할 수 있습니다.&amp;nbsp; &amp;nbsp;아래, 예를 들어 우분투에서 크롬 브라우저를 설치하기 위해 아래와 같은 파일을 다운로드하였고, 이를 더블 클릭해 보면 패키지 내용을 확인할 수 있습니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;01.png&quot; data-origin-width=&quot;926&quot; data-origin-height=&quot;582&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/7RK8d/btsuG73zjkh/W0DlkeeKpTxqk3ihCIQLo0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/7RK8d/btsuG73zjkh/W0DlkeeKpTxqk3ihCIQLo0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/7RK8d/btsuG73zjkh/W0DlkeeKpTxqk3ihCIQLo0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F7RK8d%2FbtsuG73zjkh%2FW0DlkeeKpTxqk3ihCIQLo0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;926&quot; height=&quot;582&quot; data-filename=&quot;01.png&quot; data-origin-width=&quot;926&quot; data-origin-height=&quot;582&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위의 패키지(설치) 파일을 더블클릭하면 아래처럼 패키지 내용을 볼 수 있습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;02.png&quot; data-origin-width=&quot;625&quot; data-origin-height=&quot;551&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bZiXMQ/btsuAqWXAP8/7MMtCVVSAv83TvjVqD8bO1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bZiXMQ/btsuAqWXAP8/7MMtCVVSAv83TvjVqD8bO1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bZiXMQ/btsuAqWXAP8/7MMtCVVSAv83TvjVqD8bO1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbZiXMQ%2FbtsuAqWXAP8%2F7MMtCVVSAv83TvjVqD8bO1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;625&quot; height=&quot;551&quot; data-filename=&quot;02.png&quot; data-origin-width=&quot;625&quot; data-origin-height=&quot;551&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp; 확장자가 .deb 인 패키지(꾸러미) 파일은 데비안 파일과 관련 있으며,&amp;nbsp; 예시로 리눅스용 크롬 브라우저를 설치해 볼게요,&amp;nbsp; .deb 패키지 파일을 설치하는 명령어는 아래와 같습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;deb 파일&lt;/b&gt;&lt;/h2&gt;
&lt;pre id=&quot;code_1695130306068&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;dpkg -i &quot;패키지이름.deb&quot;&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;설치한 패키지 제거는 -r 옵션을 붙여서 제거할 수 있습니다.&lt;/p&gt;
&lt;pre id=&quot;code_1695130414678&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;dpkg -r &quot;패키지이름.deb&quot;&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래, 크롬 브라우저 패키지(.deb) 파일 설치를 dpkg -i 명령어와 옵션을 사용하여 설치해 보았습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;03.png&quot; data-origin-width=&quot;1188&quot; data-origin-height=&quot;571&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/czs3Xd/btsuAsHeqM2/SwwgZJdKfSInWE93JHowuk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/czs3Xd/btsuAsHeqM2/SwwgZJdKfSInWE93JHowuk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/czs3Xd/btsuAsHeqM2/SwwgZJdKfSInWE93JHowuk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fczs3Xd%2FbtsuAsHeqM2%2FSwwgZJdKfSInWE93JHowuk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1188&quot; height=&quot;571&quot; data-filename=&quot;03.png&quot; data-origin-width=&quot;1188&quot; data-origin-height=&quot;571&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위와 같이 설치가 진행되면 아래처럼 크롬 브라우저 아이콘을 볼 수 있습니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;04.png&quot; data-origin-width=&quot;275&quot; data-origin-height=&quot;578&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/Z8MS9/btsuQSRU4JF/BNghNRCZK6G5K3kczLH1U0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Z8MS9/btsuQSRU4JF/BNghNRCZK6G5K3kczLH1U0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Z8MS9/btsuQSRU4JF/BNghNRCZK6G5K3kczLH1U0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FZ8MS9%2FbtsuQSRU4JF%2FBNghNRCZK6G5K3kczLH1U0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;275&quot; height=&quot;578&quot; data-filename=&quot;04.png&quot; data-origin-width=&quot;275&quot; data-origin-height=&quot;578&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;감사합니다.&lt;/p&gt;</description>
      <category>라즈베리파이/리눅스(Linux)</category>
      <category>.deb 명령어 옵션 사용법</category>
      <category>.deb 설치 리눅스 명령어 우분투</category>
      <category>.deb 패키지 파일 설치하는 법</category>
      <category>ubuntu 에서 크롬 chrome 브라우저 설치하기</category>
      <category>리눅스에서 확장자 .deb 파일 인스톨 설치하는 방법</category>
      <category>우분투에서 크롬브라우저 설치</category>
      <author>엑소더스팩토리</author>
      <guid isPermaLink="true">https://rasino.tistory.com/368</guid>
      <comments>https://rasino.tistory.com/368#entry368comment</comments>
      <pubDate>Tue, 19 Sep 2023 22:43:00 +0900</pubDate>
    </item>
    <item>
      <title>PRIVACY_POLICY</title>
      <link>https://rasino.tistory.com/pages/PRIVACYPOLICY</link>
      <description>&lt;div style=&quot;background-color: #ffffff; color: #000000; text-align: start;&quot;&gt;
&lt;div style=&quot;text-align: var(--textalign,left);&quot;&gt;
&lt;h1 style=&quot;color: #000000;&quot;&gt;PRIVACY POLICY&lt;/h1&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: #ffffff; color: #000000; text-align: start;&quot;&gt;
&lt;h2 style=&quot;background-color: #636e72; color: #ffffff;&quot; data-ke-size=&quot;size26&quot;&gt;WHO WE ARE&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;Suggested text:&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/b&gt;Our website address is:&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;a href=&quot;https://vultr.seoul.kr.&quot;&gt;https://vultr.seoul.kr.&lt;/a&gt;&lt;/p&gt;
&lt;h2 style=&quot;background-color: #636e72; color: #ffffff;&quot; data-ke-size=&quot;size26&quot;&gt;COMMENTS&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;Suggested text:&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/b&gt;When visitors leave comments on the site we collect the data shown in the comments form, and also the visitor&amp;rsquo;s IP address and browser user agent string to help spam detection.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;An anonymized string created from your email address (also called a hash) may be provided to the Gravatar service to see if you are using it. The Gravatar service privacy policy is available here:&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;a href=&quot;https://automattic.com/privacy/.&quot;&gt;https://automattic.com/privacy/.&lt;/a&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;After approval of your comment, your profile picture is visible to the public in the context of your comment.&lt;/p&gt;
&lt;h2 style=&quot;background-color: #636e72; color: #ffffff;&quot; data-ke-size=&quot;size26&quot;&gt;MEDIA&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;Suggested text:&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/b&gt;If you upload images to the website, you should avoid uploading images with embedded location data (EXIF GPS) included. Visitors to the website can download and extract any location data from images on the website.&lt;/p&gt;
&lt;h2 style=&quot;background-color: #636e72; color: #ffffff;&quot; data-ke-size=&quot;size26&quot;&gt;COOKIES&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;Suggested text:&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/b&gt;If you leave a comment on our site you may opt-in to saving your name, email address and website in cookies. These are for your convenience so that you do not have to fill in your details again when you leave another comment. These cookies will last for one year.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;If you visit our login page, we will set a temporary cookie to determine if your browser accepts cookies. This cookie contains no personal data and is discarded when you close your browser.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;When you log in, we will also set up several cookies to save your login information and your screen display choices. Login cookies last for two days, and screen options cookies last for a year. If you select &amp;ldquo;Remember Me&amp;rdquo;, your login will persist for two weeks. If you log out of your account, the login cookies will be removed.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;If you edit or publish an article, an additional cookie will be saved in your browser. This cookie includes no personal data and simply indicates the post ID of the article you just edited. It expires after 1 day.&lt;/p&gt;
&lt;h2 style=&quot;background-color: #636e72; color: #ffffff;&quot; data-ke-size=&quot;size26&quot;&gt;EMBEDDED CONTENT FROM OTHER WEBSITES&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;Suggested text:&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/b&gt;Articles on this site may include embedded content (e.g. videos, images, articles, etc.). Embedded content from other websites behaves in the exact same way as if the visitor has visited the other website.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;These websites may collect data about you, use cookies, embed additional third-party tracking, and monitor your interaction with that embedded content, including tracking your interaction with the embedded content if you have an account and are logged in to that website.&lt;/p&gt;
&lt;h2 style=&quot;background-color: #636e72; color: #ffffff;&quot; data-ke-size=&quot;size26&quot;&gt;WHO WE SHARE YOUR DATA WITH&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;Suggested text:&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/b&gt;If you request a password reset, your IP address will be included in the reset email.&lt;/p&gt;
&lt;h2 style=&quot;background-color: #636e72; color: #ffffff;&quot; data-ke-size=&quot;size26&quot;&gt;HOW LONG WE RETAIN YOUR DATA&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;Suggested text:&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/b&gt;If you leave a comment, the comment and its metadata are retained indefinitely. This is so we can recognize and approve any follow-up comments automatically instead of holding them in a moderation queue.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;For users that register on our website (if any), we also store the personal information they provide in their user profile. All users can see, edit, or delete their personal information at any time (except they cannot change their username). Website administrators can also see and edit that information.&lt;/p&gt;
&lt;h2 style=&quot;background-color: #636e72; color: #ffffff;&quot; data-ke-size=&quot;size26&quot;&gt;WHAT RIGHTS YOU HAVE OVER YOUR DATA&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;Suggested text:&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/b&gt;If you have an account on this site, or have left comments, you can request to receive an exported file of the personal data we hold about you, including any data you have provided to us. You can also request that we erase any personal data we hold about you. This does not include any data we are obliged to keep for administrative, legal, or security purposes.&lt;/p&gt;
&lt;h2 style=&quot;background-color: #636e72; color: #ffffff;&quot; data-ke-size=&quot;size26&quot;&gt;WHERE YOUR DATA IS SENT&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;Suggested text:&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/b&gt;Visitor comments may be checked through an automated spam detection service.&lt;/p&gt;
&lt;/div&gt;</description>
      <author>엑소더스팩토리</author>
      <guid isPermaLink="true">https://rasino.tistory.com/pages/PRIVACYPOLICY</guid>
      <pubDate>Sun, 10 Sep 2023 12:18:09 +0900</pubDate>
    </item>
    <item>
      <title>2023년 제3회 '3D 프린터 운용 기능사' 실기 후기 및 &amp;quot;시험 준비 최종 체크리스트&amp;quot;</title>
      <link>https://rasino.tistory.com/365</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #ef6f53;&quot;&gt;※ 이하 내용은 글 작성 당시의 시험장 환경과 여러 가지 경험을 토대로 작성된 글입니다.&amp;nbsp; 따라서 향후 여러분이 보게 될 시험장 환경 또는 시기적으로 변경되거나 달라질 수 있는 부분이 있다는 점 참고해서 봐주세요.&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&amp;nbsp;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;이번 3회 시험 첫째 날&lt;b&gt;(23년 8월 14일)에&lt;/b&gt; 나온 과제는 과거 출제 된 12번 문제입니다. (치수 동일)&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;이제부터는 출제된 문제들이 많이 쌓였기 때문에 최근까지 출제된 문제들을 문제은행으로 놓고, 간간이 새로운 문제를 추가하는 식으로 출제될 것 같아요.&amp;nbsp; 3D프린터운용기능사 첫 시험부터 최근까지(23년 8월 기준) 총 24종의 문제가 출제되었는데요,&amp;nbsp; 올해 기능사 3회 첫날 시험에서는 ⑫번 문제(도면)가 출제되었습니다.&amp;nbsp; 따라서 기본적으로 지금까지 출제된 문제들을 최소한 한 번씩은 연습해야 하며,&amp;nbsp; 되도록이면 24종의 문제 전체를 2~3번 이상 연습해 보는 것이 좋습니다.&amp;nbsp; &amp;nbsp;그리고 사실 2~3번 이상 연습이 된 상태라면, 새로운 문제가 출제되더라도 처음엔 좀 당황하겠지만 충분히 풀어 갈 수 있을 것으로 생각됩니다.&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;01 12회차 문제 도면.png&quot; data-origin-width=&quot;591&quot; data-origin-height=&quot;832&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bjODuO/btsrwWXzXyU/1sHLq3nixF7hHtSCR7KLU1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bjODuO/btsrwWXzXyU/1sHLq3nixF7hHtSCR7KLU1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bjODuO/btsrwWXzXyU/1sHLq3nixF7hHtSCR7KLU1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbjODuO%2FbtsrwWXzXyU%2F1sHLq3nixF7hHtSCR7KLU1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;591&quot; height=&quot;832&quot; data-filename=&quot;01 12회차 문제 도면.png&quot; data-origin-width=&quot;591&quot; data-origin-height=&quot;832&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;[ 12번 도면 다운로드하기 ]&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;fileblock&quot; data-ke-align=&quot;alignCenter&quot;&gt;&lt;a href=&quot;https://blog.kakaocdn.net/dn/bxoKYY/btsrtgWHSAc/3xk10HKKkd5C8Lkq2o0lk1/01%2012%ED%9A%8C%EC%B0%A8%20%EB%AC%B8%EC%A0%9C%20%EB%8F%84%EB%A9%B4.png?attach=1&amp;amp;knm=img.png&quot; class=&quot;&quot;&gt;
    &lt;div class=&quot;image&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;desc&quot;&gt;&lt;div class=&quot;filename&quot;&gt;&lt;span class=&quot;name&quot;&gt;01 12회차 문제 도면.png&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;size&quot;&gt;0.08MB&lt;/div&gt;
&lt;/div&gt;
  &lt;/a&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;※ 이번 12번 문제의 경우, 모델링하는 데에는 크게 어렵지 않은 과제입니다.&amp;nbsp; 이 글 아래 부분에서 출력 시 주의해야 할 사항 및 시험관련된 팁들에 대해 좀 더 자세히 다루도록 하겠습니다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;[ &lt;span style=&quot;color: #0593d3;&quot;&gt;실기시험을 본 시험장 환경&lt;/span&gt; ]&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #6164c6;&quot;&gt;1.&lt;/span&gt; 시험장&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; : &lt;span style=&quot;color: #009a87;&quot;&gt;울산창조경제혁신센터&lt;/span&gt;(울산대학교내 위치)&amp;nbsp; &amp;nbsp;&lt;br /&gt;&lt;/b&gt;&lt;b&gt;&lt;span style=&quot;color: #6164c6;&quot;&gt;2.&lt;/span&gt; 모델링 툴&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;:&amp;nbsp;&lt;span style=&quot;color: #ef6f53;&quot;&gt; Fusion360 &lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;color: #ef6f53;&quot;&gt;&lt;span style=&quot;color: #456771;&quot;&gt;(구동 환경 : 약 15인치 크기의 노트북)&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;b&gt;&lt;span style=&quot;color: #6164c6;&quot;&gt;3.&lt;/span&gt; 슬라이서 툴&amp;nbsp; &amp;nbsp; &amp;nbsp;:&amp;nbsp; 큐라 &lt;span style=&quot;color: #ef6f53;&quot;&gt;Cura 15.04.6&lt;/span&gt;&amp;nbsp; 버전&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span style=&quot;color: #6164c6;&quot;&gt;4.&lt;/span&gt; 3D프린터 기종&amp;nbsp; :&amp;nbsp; &lt;span style=&quot;color: #ef6f53;&quot;&gt;GP200&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&amp;nbsp; &lt;span style=&quot;color: #456771;&quot;&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;※&lt;/span&gt; 개인적으로 자신이 사는 곳과 아주 멀지 않은 지역이라면 울산창조경제혁신센터 시험장을 강력 추천합니다!&amp;nbsp; &amp;nbsp;3D 프린팅 장비와 소프트웨어 사용 환경 등 모두 만족했으며,&amp;nbsp; 해당 시험장은 오랜 기간 3D 프린팅 실기시험을 치른 곳이어서 그런지, 시험을 진행하는 관리위원 및 감독관과 관계자 모두 시험 진행을 매끄럽게 잘 진행해 주었고, 수험자분들이 긴장해서 실수하지 않도록 세심한 설명으로 잘 유도해 주었으며, 작은 돌발사항 발생에도 불이익이 없도록 깔끔하게 잘 대처해 주었습니다.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #456771;&quot;&gt;&amp;nbsp;( 이곳 시험장 시설 특징 : GP200의 경우 타 모델에 비해 출력물이 배드에 안착이 잘 되었으며, 출력물 품질도 나쁘지 않았습니다.&amp;nbsp; 다만 제공되는 필라멘트 재질이 개인적으로 사용해 본 필라멘트보다 응착력? 이 강해 보이는 것 같은 재질 특성으로 인해 서포트를 많이 적용하게 되면 떼어내는데 조금 힘이 들 수 있을 것 같습니다.&amp;nbsp; 이곳의 좋은 점은 실기시험 일 직전에 장비사용에 대한 교육을 진행하기 때문에 원하는 사람은 사전에 신청해서 직접 시험장 장비 및 시설을 이용해 볼 수 있습니다.&amp;nbsp; &lt;/span&gt;&lt;br /&gt;&lt;/b&gt;&lt;span style=&quot;color: #456771;&quot;&gt;&lt;b&gt;&amp;nbsp;그리고 제일 좋았던 점은, 일반적으로 시험을 치러가면 기본적으로 Fusion(퓨전) 360은 자신의 아이디로 직접 로그인하게 되어 있는데요, 이때, 시험에 영향을 줄 수 있기 때문에 자신이 그간 작성해 놓았던 모든 모델링 파일들을 사전에 모두 삭제하고 가야 하는 불편함이 있지만, 여기서는 이미 로그인된 깨끗한 교육용 ID를 제공해 주기 때문에 전혀 불편함 없이 시험을 치를 수 있어서, 사는 곳과 거리가 좀 멀었지만 주저 없이 이곳을 선택하게 되었습니다 )&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;span style=&quot;color: #8a3db6;&quot;&gt;&lt;b&gt;기능사 3회 2023년 8월 게시된 전국 3D프린터 기능사 실기 시험장 시설 현황을 첨부하니, 참고해 보세요.&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;( 시설 현황은 시험장 사정에 따라 추후 변동성이 있기 때문에 해당회차 실기 시험 접수 직전에 게시되며 일정기간 지나면 시설 목록은 삭제될 수 있습니다.&amp;nbsp; 따라서 매우 큰 변화가 있는 것은 아니지만 &lt;u&gt;&lt;b&gt;시설현황은 향후 변동 될 수 있다는 점 인지하고 향후 큐넷에서 시험장 정보 재공지하는 것을 다시 확인해 주세요.&lt;/b&gt;&lt;/u&gt;&amp;nbsp; 출처 : Q-Net 공지사항 게시판 )&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;fileblock&quot; data-ke-align=&quot;alignCenter&quot;&gt;&lt;a href=&quot;https://blog.kakaocdn.net/dn/baMVcx/btsrr2YIjZG/FsaaXDXyNiyIkwdBBFmJx1/%EC%9E%91%EC%97%85%ED%98%95%20%EC%8B%9C%EC%84%A4%EA%B3%B5%EA%B0%9C%20%EC%A2%85%EB%AA%A9%20%EC%8B%9C%ED%97%98%EC%9E%A5%20%EC%8B%9C%EC%84%A4%ED%98%84%ED%99%A9_0716%20%283D%20%EB%93%B1%29.xlsx?attach=1&amp;amp;knm=tfile.xlsx&quot; class=&quot;&quot;&gt;
    &lt;div class=&quot;image&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;desc&quot;&gt;&lt;div class=&quot;filename&quot;&gt;&lt;span class=&quot;name&quot;&gt;작업형 시설공개 종목 시험장 시설현황_0716 (3D 등).xlsx&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;size&quot;&gt;0.06MB&lt;/div&gt;
&lt;/div&gt;
  &lt;/a&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;여기서 중요한 건, 필기 접수때도 마찬가지지만 실기 접수는 더더욱 자신이 연습한 모델링툴이 정해져 있고, 사용하고자 하는 슬라이서 툴 및 선호하는 3D 프린터 기종이 별도로 있기 때문에, 이런 조건들을 모두 만족하는 시험장에서 시험 볼 수 있도록 실기시험 접수 때 상당히 신경 써야 합니다.&amp;nbsp; 접수 기간은 며칠 여유가 있는 것은 사실이나 자신이 사는 지역과 되도록 가까운 지역으로 시험장을 선택하고자 한다면,&amp;nbsp; 그리고 자신이 원하는 장비와 소프트웨어가 갖춰진 시험장이 조기에 인원마감이 될 수 있기 때문에 접수 당일 오픈 시간(오전 10시) 전에 준비해서 바로 접수할 수 있도록 하는 것이 좋습니다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;시험 종목에 따라 예를들어, 전기기능사와 같은 종목은 특히나 눈치(?) 싸움도 치열하기 때문에,&amp;nbsp; 접수 시, 결제 방법도 신용카드 결제보다 더 빠르게 접수 처리되는 &quot;가상계좌 이체&quot; 방법을 선택하는 것을 추천하기도 합니다. (접수완료 기준은 결제 단계까지 간 것을 기준으로 함).&amp;nbsp; 신용카드 결제의 경우 수많은 접수자가 결제 시도 시 결제 시스템(서버)이 불안정할 수 있고, 따라서 결제지연이 되는 경우가 있다고 합니다.&lt;br /&gt;&lt;br /&gt;&amp;nbsp; 가상계좌 이체 방법은 금액 이체 시간 기준이 아니며 일단 선택되면 선접수완료 되며,&amp;nbsp; 실제 실기비용 이체는 접수 당일 오후 2시 전까지만 이체하면 됩니다. 만약, 오후 2시를 넘긴다면 접수 취소처리 되니 유의해 주세요.&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&lt;span style=&quot;color: #1a5490;&quot;&gt;&lt;b&gt;※ 한가지 추가 팁&lt;/b&gt;&lt;/span&gt;으로 접수일 직전에 접수를 위한 사전 정보 입력 서비스도 제공되니 꼭 이용해 보세요.&amp;nbsp; 실기 접수 관련된 입력사항(학력정보, 경력정보, 자격정보, 개인 PC지참 여부, 장애 여부 등)을 미리 입력해 놓으면 접수 당일 접수를 보다 빠르게 진행할 수 있습니다.&amp;nbsp; (아래는 사전입력정보 예시입니다)&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;사전입력정보 예시1.png&quot; data-origin-width=&quot;765&quot; data-origin-height=&quot;657&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ovBHS/btsrNxJG9BB/EULVdQIu4lbZMJtxozUkvk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ovBHS/btsrNxJG9BB/EULVdQIu4lbZMJtxozUkvk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ovBHS/btsrNxJG9BB/EULVdQIu4lbZMJtxozUkvk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FovBHS%2FbtsrNxJG9BB%2FEULVdQIu4lbZMJtxozUkvk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;765&quot; height=&quot;657&quot; data-filename=&quot;사전입력정보 예시1.png&quot; data-origin-width=&quot;765&quot; data-origin-height=&quot;657&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;사전입력정보 예시2.png&quot; data-origin-width=&quot;813&quot; data-origin-height=&quot;434&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dvHLBE/btsrDd6BZI8/Q9XyP3cLi6QHsYGTlekbg1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dvHLBE/btsrDd6BZI8/Q9XyP3cLi6QHsYGTlekbg1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dvHLBE/btsrDd6BZI8/Q9XyP3cLi6QHsYGTlekbg1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdvHLBE%2FbtsrDd6BZI8%2FQ9XyP3cLi6QHsYGTlekbg1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;813&quot; height=&quot;434&quot; data-filename=&quot;사전입력정보 예시2.png&quot; data-origin-width=&quot;813&quot; data-origin-height=&quot;434&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위에까지 선택하면 아래와 같은 서전정보 입력이 완료되며,&amp;nbsp; 추후 결제 당일 오전 10시가 되면 아래 &quot;결제정보&quot;란에 결제할 수 있는 버튼이 활성화됩니다.&amp;nbsp; &amp;nbsp;여기서 중요한 것은 큐넷 첫 페이지에 있는 원서접수하기 메뉴로 들어가면 안 되며, 반드시 큐넷 로그인 후, 아래 화면이 나오는 마이페이지로 바로 들어가야 합니다.&amp;nbsp; 그리고 접수 시작이 되는 오전 10시가 되자마자 리프레시를 눌러보면 약간의 대기 시간 후에 활성화된 결제버튼을 누르고 결제 진행하면 됩니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;사전입력정보 예시3-1.png&quot; data-origin-width=&quot;766&quot; data-origin-height=&quot;431&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/8e96s/btsrCRJhjBu/FXWpnk6LRLb57kL3esT6OK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/8e96s/btsrCRJhjBu/FXWpnk6LRLb57kL3esT6OK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/8e96s/btsrCRJhjBu/FXWpnk6LRLb57kL3esT6OK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F8e96s%2FbtsrCRJhjBu%2FFXWpnk6LRLb57kL3esT6OK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;766&quot; height=&quot;431&quot; data-filename=&quot;사전입력정보 예시3-1.png&quot; data-origin-width=&quot;766&quot; data-origin-height=&quot;431&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&amp;lt;수험자 지참물 &amp;gt;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;수험자 지참물.png&quot; data-origin-width=&quot;656&quot; data-origin-height=&quot;566&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/CvBmq/btsrxNzmR0A/H3huS8T0kQw47O9Ff7vGU1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/CvBmq/btsrxNzmR0A/H3huS8T0kQw47O9Ff7vGU1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/CvBmq/btsrxNzmR0A/H3huS8T0kQw47O9Ff7vGU1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FCvBmq%2FbtsrxNzmR0A%2FH3huS8T0kQw47O9Ff7vGU1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;656&quot; height=&quot;566&quot; data-filename=&quot;수험자 지참물.png&quot; data-origin-width=&quot;656&quot; data-origin-height=&quot;566&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;수험자 지참물은 반드시 사전에 꼼꼼하게 챙겨서 가야합니다.&lt;/b&gt;&amp;nbsp; 시험장에 따라, &lt;span style=&quot;color: #953b34;&quot;&gt;&lt;b&gt;특히 보호장갑이나 방진마스크 등 일부 지참물을 준비해 가지 않을 경우 감점처리 될 수 있습니다.&amp;nbsp;&lt;/b&gt;&lt;/span&gt; &amp;nbsp;특히 안전과 관련된 지참물의 경우, 예를 들어 장갑을 끼지 않고 서포트 제거하다 손을 다치거나 할 경우 책임의 소재도 있기 때문이기도 하겠지만, 실제로 날카로운 공구를 가지고 작업할 때 손을 다치는 경우가 종종 있기 때문에 본인을 위해서라도 지참물을 잘 챙겨가시기 바랍니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;&lt;b&gt;&amp;lt; 시험 전 중요 체크 사항 &amp;gt;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/h2&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;color: #456771;&quot;&gt;&lt;b&gt;[ 시험 1 과제 ]&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&quot;제 1과제&quot; 시험 시 중요체크사항이며, 관련된 상세설명도 이어서 하겠습니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #ef6f53;&quot;&gt;1)&lt;/span&gt;&amp;nbsp;제출할 파일 확인(4가지)하기!&amp;nbsp;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span style=&quot;color: #ef6f53;&quot;&gt;2)&lt;/span&gt; Fusion360 오프라인 모드(네트워크 차단) 사용해 보고 가기! (파일 저장 방법 확인)&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span style=&quot;color: #ef6f53;&quot;&gt;3)&lt;/span&gt; 자신이 사용하는 Fusion360 사용자 환경설정 다시 확인하고 가기!&lt;br /&gt;&lt;span style=&quot;color: #ef6f53;&quot;&gt;4)&lt;/span&gt; 작품에 비번호 새기고 공차 넣기 확인하기!&lt;br /&gt;&lt;b&gt;&lt;span style=&quot;color: #ef6f53;&quot;&gt;5)&lt;/span&gt;&lt;span&gt; 안정&lt;/span&gt;적인 출력을 위한 부품의 방향 정하기&lt;br /&gt;&lt;b&gt;&lt;b&gt;&lt;span style=&quot;color: #ef6f53;&quot;&gt;6)&lt;/span&gt;&lt;span&gt;&lt;span&gt; 슬라이서 프로그램 설정 체크하기!&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;먼저, 시험 전체 프로세스에 대해 이해하는 것이 중요하니, 실수가 없도록 요구사항을 상세히 읽고 대비하면 좋겠습니다.&lt;br /&gt;'제1과제'는 3D 모델링으로, 제한 시간은 1시간입니다.&amp;nbsp; 자신이 연습해 온 모델링 툴로 설계하여 다음과 같은 4개의 모델링 파일을 감독관이 제공해 주는 USB에 제출하는 것입니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;01.png&quot; data-origin-width=&quot;662&quot; data-origin-height=&quot;930&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/v3inv/btsrBpUgolH/kv9EOB8MeBMXPpcrNosXy0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/v3inv/btsrBpUgolH/kv9EOB8MeBMXPpcrNosXy0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/v3inv/btsrBpUgolH/kv9EOB8MeBMXPpcrNosXy0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fv3inv%2FbtsrBpUgolH%2Fkv9EOB8MeBMXPpcrNosXy0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;662&quot; height=&quot;930&quot; data-filename=&quot;01.png&quot; data-origin-width=&quot;662&quot; data-origin-height=&quot;930&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;02.png&quot; data-origin-width=&quot;659&quot; data-origin-height=&quot;941&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/551V0/btsrCw6u0Nu/iILmuwj7yP4yc5BQ9ArLp1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/551V0/btsrCw6u0Nu/iILmuwj7yP4yc5BQ9ArLp1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/551V0/btsrCw6u0Nu/iILmuwj7yP4yc5BQ9ArLp1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F551V0%2FbtsrCw6u0Nu%2FiILmuwj7yP4yc5BQ9ArLp1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;659&quot; height=&quot;941&quot; data-filename=&quot;02.png&quot; data-origin-width=&quot;659&quot; data-origin-height=&quot;941&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;03.png&quot; data-origin-width=&quot;655&quot; data-origin-height=&quot;932&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/efskKC/btsrExQ6KRq/JVLHr6DF1kJUcBybrtYfOk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/efskKC/btsrExQ6KRq/JVLHr6DF1kJUcBybrtYfOk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/efskKC/btsrExQ6KRq/JVLHr6DF1kJUcBybrtYfOk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FefskKC%2FbtsrExQ6KRq%2FJVLHr6DF1kJUcBybrtYfOk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;655&quot; height=&quot;932&quot; data-filename=&quot;03.png&quot; data-origin-width=&quot;655&quot; data-origin-height=&quot;932&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;04.png&quot; data-origin-width=&quot;657&quot; data-origin-height=&quot;312&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/1EovG/btsrAQEDlSq/pAAvAQX3rBMLkHTpk2P6Z0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/1EovG/btsrAQEDlSq/pAAvAQX3rBMLkHTpk2P6Z0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/1EovG/btsrAQEDlSq/pAAvAQX3rBMLkHTpk2P6Z0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F1EovG%2FbtsrAQEDlSq%2FpAAvAQX3rBMLkHTpk2P6Z0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;657&quot; height=&quot;312&quot; data-filename=&quot;04.png&quot; data-origin-width=&quot;657&quot; data-origin-height=&quot;312&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;h4 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;1)&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: #781b33;&quot;&gt;제출할 파일&lt;/span&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;span style=&quot;color: #456771;&quot;&gt;&lt;span style=&quot;color: #781b33;&quot;&gt;&amp;nbsp;확인(4가지)하기!&lt;/span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/h4&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;①. Fusion360 작업 파일&amp;nbsp; &quot;xx.f3d&quot;&amp;nbsp; (작업하는 모델링툴에 따라 확장자가 다름)&lt;br /&gt;②. 채점을 위한 STEP 파일 &quot;xx.stp&quot;&amp;nbsp;&lt;br /&gt;③. 슬라이싱 작업을 위한 파일 &quot;xx.stl&quot;&amp;nbsp;&lt;br /&gt;④. 슬라이싱 된 3D프린터 출력 파일 &quot;xx.gcode&quot;&lt;/span&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;br /&gt;파일이름은 반드시 자신이 부여받은 비번호로 하게 되어 있으니 주의해 주세요.&amp;nbsp; 예를 들어 비번호 9번을 부여받았다면, 윈도 바탕화면에 &quot;09&quot;라는 폴더를 생성한 후,&amp;nbsp; 거기에&amp;nbsp; &quot; 09.f3d &quot; ,&amp;nbsp; &amp;nbsp;&quot; 09.stp &quot;&amp;nbsp; ,&amp;nbsp; &quot; 09.stl &quot; , &quot; 09.gcode &quot; 이렇게 4개의 파일을 저장해야 하며,&amp;nbsp; 작업이 완료되면 감독관에게 손을 들고 작업한 파일을 보여주면, 감독관이 USB를 제공해 주며, 그럼 거기에 파일들을 저장해서 자신이 제공받은 3D 프린터로 가서, &quot;제2과제&quot; 출력하기로 넘어가게 됩니다.&amp;nbsp;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;여기서,&amp;nbsp; 감독관이 먼저 '제2과제'로 넘어가는 진행방식을 수험자들의 의견을 묻거나하여 결정하게 되는데요, '제1과제' 1시간을 모두 동일하게 기다려 종료된 후 '제2과제'로 모두 동시에 넘어가는 방식이 있지만 이는 일찍 끝낸 사람들은 남은 시험시간을 멀뚱히 기다려야 하기 때문에, 그리고 1과제의 경우 대부분 30분 전 후로 작업을 끝내는 수험자가 많기 때문에, 1과제 작업을 일찍 완료하는 대로 개인별로 2과제 시험 시간을 따로 적용하여 2과제 작업으로 바로 넘어가는 방식을 적용하는 경우가 많습니다.&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;2)&lt;span style=&quot;color: #781b33;&quot;&gt; Fusion360 오프라인 모드(네트워크 차단) 사용해 보고 가기! (작업 중 파일 저장 방법 확인)&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span style=&quot;color: #456771;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/h4&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;※&amp;nbsp; Fusion360의 경우 클라우드 방식의 온라인으로 연결된 서버에 작업파일('xx.f3d')을 저장하는 방식으로 작동이 되는데요, 시험장에서는 네트워크를 차단한 상태로, 즉 Fusion360을 Off라인 모드로 해놓고 시험을 치르기 때문에 파일 저장 시 주의해야 합니다.&amp;nbsp; &amp;nbsp;따라서 자동으로 온라인에 저장되는 일반적인 저장(Save, 또는 Save as...) 기능은 이용이 불가하여, 작업 중간중간 파일을 저장해 놓을 경우에는, Export 기능을 통하여 저장해야 합니다.&amp;nbsp; 이때 파일 저장위치는 바탕화면 비번호 폴더입니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;10-2-1.png&quot; data-origin-width=&quot;1414&quot; data-origin-height=&quot;828&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/8FWYK/btsrExKrhe7/maXj7gQEQrX2cGqx9WYUqK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/8FWYK/btsrExKrhe7/maXj7gQEQrX2cGqx9WYUqK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/8FWYK/btsrExKrhe7/maXj7gQEQrX2cGqx9WYUqK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F8FWYK%2FbtsrExKrhe7%2FmaXj7gQEQrX2cGqx9WYUqK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1414&quot; height=&quot;828&quot; data-filename=&quot;10-2-1.png&quot; data-origin-width=&quot;1414&quot; data-origin-height=&quot;828&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;만약 작업 중 프로그램 및 컴퓨터 오류로 인하여 멈춰버리거나 할 경우 시험을 망칠 수 있기 때문에, 반드시 작업 중간중간 또는 중요한 부분의 작업을 마무리하였을 경우 반드시 Export를 통하여 작업파일을 저장해 주세요.&amp;nbsp;&lt;br /&gt;또한, 아래에 보이는 작업파일 복구하기 기능도 알아두면 좋습니다.&amp;nbsp; &amp;nbsp;작업 중 갑자기 다운되거나 할 경우 프로그램에 설정된 일정 간격 자동 저장 기능으로 저장된 파일을 불러올 수 있는데요,&amp;nbsp; &amp;nbsp;&quot;Open Recovered Documents(0)&quot; 메뉴를 통해 복구할 수 있습니다.&amp;nbsp; (한글 모드에서는 &quot;복구된 문서 열기(0)&quot;로 표시됩니다)&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;10-3-2.png&quot; data-origin-width=&quot;1198&quot; data-origin-height=&quot;639&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bvPvGL/btsrS6k1Ddt/e2JKdNkRpAQPGHVrK94d30/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bvPvGL/btsrS6k1Ddt/e2JKdNkRpAQPGHVrK94d30/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bvPvGL/btsrS6k1Ddt/e2JKdNkRpAQPGHVrK94d30/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbvPvGL%2FbtsrS6k1Ddt%2Fe2JKdNkRpAQPGHVrK94d30%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1198&quot; height=&quot;639&quot; data-filename=&quot;10-3-2.png&quot; data-origin-width=&quot;1198&quot; data-origin-height=&quot;639&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;h4 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size20&quot;&gt;&amp;nbsp;&lt;/h4&gt;
&lt;h4 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;3)&lt;span&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: #781b33;&quot;&gt;자신이 사용하는 Fusion360 사용자 환경설정 다시 확인하고 가기!&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/h4&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;①. 환경설정 메뉴 위치 파악하기&lt;br /&gt;②. &lt;span style=&quot;color: #006dd7; text-align: start;&quot;&gt;한글모드 / 영문모드 변경하기&lt;/span&gt;&lt;br /&gt;③. 줌 방향 / 조작 방법 선택하기&amp;nbsp;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #006dd7; text-align: start;&quot;&gt;①. 환경설정 메뉴 위치 파악하기&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;처음 Fusion360을 접하게 되면 &lt;b&gt;환경설정(기본설정-Preferences)&lt;/b&gt; 메뉴 위치를 찾는데 상당히 애를 먹을 수도 있는데요, 메뉴 위치는 Fusion360 프로그램 우측 상단 쪽에 자신의 계정 아이콘 모양을 클릭하면 됩니다.&amp;nbsp; 경우에 따라서는 아래처럼 계정 아이콘 모양이 잘 안 보일 수 있는데,&amp;nbsp; 그냥 그 위치를 클릭하면 서브 메뉴가 바로 나타나니 참고하세요.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;10-4.png&quot; data-origin-width=&quot;360&quot; data-origin-height=&quot;288&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/CAioF/btsrEz2YBVD/vlgyOlZGm8KKNuiAbbk2sK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/CAioF/btsrEz2YBVD/vlgyOlZGm8KKNuiAbbk2sK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/CAioF/btsrEz2YBVD/vlgyOlZGm8KKNuiAbbk2sK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FCAioF%2FbtsrEz2YBVD%2FvlgyOlZGm8KKNuiAbbk2sK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;360&quot; height=&quot;288&quot; data-filename=&quot;10-4.png&quot; data-origin-width=&quot;360&quot; data-origin-height=&quot;288&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;10-5-3.png&quot; data-origin-width=&quot;1016&quot; data-origin-height=&quot;511&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/w2Lvs/btsrRTTTru2/e4oIioC8QvKN1oxRc29Gc0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/w2Lvs/btsrRTTTru2/e4oIioC8QvKN1oxRc29Gc0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/w2Lvs/btsrRTTTru2/e4oIioC8QvKN1oxRc29Gc0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fw2Lvs%2FbtsrRTTTru2%2Fe4oIioC8QvKN1oxRc29Gc0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1016&quot; height=&quot;511&quot; data-filename=&quot;10-5-3.png&quot; data-origin-width=&quot;1016&quot; data-origin-height=&quot;511&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #006dd7; text-align: start;&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;②.&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #006dd7; text-align: start;&quot;&gt;한글모드 / 영문모드 변경하기&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;자신이 사용하던 Fusion360의 언어 설정과 시험장의 언어설정이 다를 수 있습니다. 따라서 자신이 원하는 언어로 변경이 필요한데요,&amp;nbsp;&amp;nbsp;&lt;br /&gt;기본설정(Preferences)을 클릭하면 아래와 같은 메뉴가 열리고 메뉴 제일 상단에 &quot;사용자 언어&quot; 부분에서 언어 변경을 할 수 있습니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;10-7.png&quot; data-origin-width=&quot;987&quot; data-origin-height=&quot;592&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/y3Srb/btsrR3IT7Lf/kS23Ak7w2obYafkxSGKNo1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/y3Srb/btsrR3IT7Lf/kS23Ak7w2obYafkxSGKNo1/img.png&quot; data-alt=&quot;한글 모드&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/y3Srb/btsrR3IT7Lf/kS23Ak7w2obYafkxSGKNo1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fy3Srb%2FbtsrR3IT7Lf%2FkS23Ak7w2obYafkxSGKNo1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;987&quot; height=&quot;592&quot; data-filename=&quot;10-7.png&quot; data-origin-width=&quot;987&quot; data-origin-height=&quot;592&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;한글 모드&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;10-8.png&quot; data-origin-width=&quot;987&quot; data-origin-height=&quot;592&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bnyewK/btsrCw7aPRO/V1v4n9Y9ns4EoUunji37uk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bnyewK/btsrCw7aPRO/V1v4n9Y9ns4EoUunji37uk/img.png&quot; data-alt=&quot;영문 모드&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bnyewK/btsrCw7aPRO/V1v4n9Y9ns4EoUunji37uk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbnyewK%2FbtsrCw7aPRO%2FV1v4n9Y9ns4EoUunji37uk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;987&quot; height=&quot;592&quot; data-filename=&quot;10-8.png&quot; data-origin-width=&quot;987&quot; data-origin-height=&quot;592&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;영문 모드&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #ef5369;&quot;&gt;&lt;b&gt;※ 간혹 한글 모드에서 파일 Export 할 때 에러가 나는 경우가 있다고 하니,&amp;nbsp; 계속 에러가 날 경우 영문 모드로 변경 후 Export 시도해 보시기 바랍니다.&amp;nbsp; 가급적이면, 처음부터 영문모드로 해놓고 연습해서 영문모드에 익숙해지는 것을 권장해 드립니다.&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;③. 줌 방향 / 조작 방법 선택하기&amp;nbsp;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;먼저 자신의 취향에 따라 아래 이미지에 있는 줌 방향 반전 부분을 체크하거나 해제해서 사용해 보세요.&lt;br /&gt;줌 방향은 마우스 휠을 위로 미느냐? 당기느냐? 에 따라&amp;nbsp; 줌 인 또는 줌 아웃이 되는 것이 반전이 되는 옵션입니다.&amp;nbsp; 대부분은 이미 어느 한쪽에 익숙해져 있는데, 이 기능이 반대로 동작한다면, 마음은 급한데, 시험 내내 반대로 작동한다면 매우 짜증? 이 날 수 있겠죠? ㅎ&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;10-9-1.png&quot; data-origin-width=&quot;377&quot; data-origin-height=&quot;283&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/I21lN/btsrTrJuPH4/Gi7vjyxhvkJUr4I2KhXOj1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/I21lN/btsrTrJuPH4/Gi7vjyxhvkJUr4I2KhXOj1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/I21lN/btsrTrJuPH4/Gi7vjyxhvkJUr4I2KhXOj1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FI21lN%2FbtsrTrJuPH4%2FGi7vjyxhvkJUr4I2KhXOj1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;377&quot; height=&quot;283&quot; data-filename=&quot;10-9-1.png&quot; data-origin-width=&quot;377&quot; data-origin-height=&quot;283&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;다음으로, 이미 인벤터, 팅커캐드, 솔리드웍스 등 자신이 사용해 본 프로그램이 있다면 거기에서 사용했던 &lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;초점이동, 줌, 회전에 대한 마우스 등의 사용법에&lt;/span&gt; 많이 익숙해져 있을 텐데요,&amp;nbsp; 이런 익숙해진 툴과 같은 방식으로 Fusion360을 사용할 수 있도록 관련된 설정을 변경해 주는 기능입니다.&amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp; 저의 경우는 오른쪽 마우스로 모델을 이리저리 회전시켜 보는 기능이,&amp;nbsp; 큐라와 같은 슬라이서 프로그램에서 사용하는 방식과 유사한 &quot; Tinkercad &quot;가 있어서 개인적으로 너무 편해서 선택해 놓고 사용하고 있습니다.&amp;nbsp; 따라서 시험장의 경우 Inventer 혹은 다른 툴로 설정되어 있다면 작업에 매우 불편할 수 있으니 이 기능도 꼭 자신이 사용하던 툴로 변경해 놓고 시험을 치르면 좋습니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;10-9.png&quot; data-origin-width=&quot;987&quot; data-origin-height=&quot;592&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/IOcVL/btsrH9wkf8p/nqZTJfZUXZO0k095jXF1Vk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/IOcVL/btsrH9wkf8p/nqZTJfZUXZO0k095jXF1Vk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/IOcVL/btsrH9wkf8p/nqZTJfZUXZO0k095jXF1Vk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FIOcVL%2FbtsrH9wkf8p%2FnqZTJfZUXZO0k095jXF1Vk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;987&quot; height=&quot;592&quot; data-filename=&quot;10-9.png&quot; data-origin-width=&quot;987&quot; data-origin-height=&quot;592&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;10-10.png&quot; data-origin-width=&quot;987&quot; data-origin-height=&quot;592&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dQ2omZ/btsrH4u1LNz/fbcS9SkdRuDQWvANxQIMwk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dQ2omZ/btsrH4u1LNz/fbcS9SkdRuDQWvANxQIMwk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dQ2omZ/btsrH4u1LNz/fbcS9SkdRuDQWvANxQIMwk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdQ2omZ%2FbtsrH4u1LNz%2FfbcS9SkdRuDQWvANxQIMwk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;987&quot; height=&quot;592&quot; data-filename=&quot;10-10.png&quot; data-origin-width=&quot;987&quot; data-origin-height=&quot;592&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;4)&lt;span&gt;&lt;span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: #781b33;&quot;&gt;작품에 자신의 비번호 새기고 공차 넣기 확인하기!&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/h4&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;①. 비번호 각인하기&lt;br /&gt;②.&lt;span&gt; 공차 넣고 확인하기&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #006dd7; text-align: start;&quot;&gt;①. &lt;b&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;비번호 각인하기&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;3D 프린팅 시험에서 모든 과정을 완벽하게 했더라도, 자신의 비번호가 새겨지지 않은 모델을 출력하게 되면 실격으로 이어질 수 있습니다.&amp;nbsp; 희미하더라도 비번호가 새겨진 것과 새겨지지 않은 것의 차이는 합격과 불합격으로 큰 차이 날 수 있으니 반드시 비번호 넣는 것을 잊지 않아야 합니다.&amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp;만약 9번 수험자의 경우 9라고 새겨도 되고, 09라고 넣어도 전혀 상관없습니다.&amp;nbsp; 다만 개인적으로는 6번과 9번이 헷갈리수 있으니 앞에 0을 넣어주는 것이 좋다고 생각합니다.&amp;nbsp;&lt;br /&gt;&amp;nbsp;또한 비번호는 입력 시 출력물에 표시가 선명하게 잘 되도록 음각 Extruder 적용 시 적절한 굵기와 깊이로 넣도록 해야 합니다.&amp;nbsp; 실제 시험장에서 특정 수험자의 경우, 폰트 크기 및 굵기 선택이 적절하지 못하고, 너무 얇은 음각으로 인해 출력물을 보니 거의 표시가 되지 않는 경우가 발생했습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;11-1.png&quot; data-origin-width=&quot;712&quot; data-origin-height=&quot;752&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/sqhbD/btsrToF3VWp/TTu1IpndK5Ds2K0wdFCG9K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/sqhbD/btsrToF3VWp/TTu1IpndK5Ds2K0wdFCG9K/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/sqhbD/btsrToF3VWp/TTu1IpndK5Ds2K0wdFCG9K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FsqhbD%2FbtsrToF3VWp%2FTTu1IpndK5Ds2K0wdFCG9K%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;712&quot; height=&quot;752&quot; data-filename=&quot;11-1.png&quot; data-origin-width=&quot;712&quot; data-origin-height=&quot;752&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;11-2.png&quot; data-origin-width=&quot;954&quot; data-origin-height=&quot;838&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/12qrQ/btsrTrpgspU/KOE6BUmNO2hHYjZ0gPPFN0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/12qrQ/btsrTrpgspU/KOE6BUmNO2hHYjZ0gPPFN0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/12qrQ/btsrTrpgspU/KOE6BUmNO2hHYjZ0gPPFN0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F12qrQ%2FbtsrTrpgspU%2FKOE6BUmNO2hHYjZ0gPPFN0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;954&quot; height=&quot;838&quot; data-filename=&quot;11-2.png&quot; data-origin-width=&quot;954&quot; data-origin-height=&quot;838&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;숫자를 넣는 위치의 부품 두께가 아주 얇은 것이 아니라면, 기본적으로 음각은 -1mm 이상 주는 것이 좋습니다.&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;②.&lt;span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;공차 넣고 확인하기&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;3D 모델링에서 비번호 입력만큼 중요한 것이 공차입니다. 보통 시험 때 긴장하다 보면, 모델링 완료 후 공차 넣는 것을 잊어버릴 수 있는데요, 이 상태로 출력하게 되면, 부품1과 부품2의 움직여야 하는 연결 부위가 단단히 붙어버려 실격으로 이어지게 되죠.&amp;nbsp; 그리고 당연하게도 제 1과제 설계 종료 후 제2과제로 한번 넘어가게 되면, 빠진 공차를 다시 넣는다든지 하는 수정 작업은 아예 불가하기 때문에, 제1과제 마무리 할 때 반드시 공차를 제대로 넣었는지? 확인해 주세요.&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;시험 유의사항에도 나와 있듯이 공차는 1mm를 초과할 수 없는데요,&amp;nbsp; 후가공의 편리성을 위해 공차는 최대치 인 1mm로 주는 것이 좋습니다.&amp;nbsp; &amp;nbsp;공차를 넣게 되는 위치는 상호 움직임이 발생되는 치수 A와 B로 표시되는 부분이며 기준치수와의 차이가 1mm를 넘지 않도록 공차를 넣어 주면 됩니다.&amp;nbsp;&lt;br /&gt;&lt;br /&gt;먼저 아래 도면을 다시 한번 자세히 살펴보세요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;12-3.png&quot; data-origin-width=&quot;1030&quot; data-origin-height=&quot;571&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/oKFgy/btsrS2X7WLk/NS0eCMNZs84w7M3YwBGzfk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/oKFgy/btsrS2X7WLk/NS0eCMNZs84w7M3YwBGzfk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/oKFgy/btsrS2X7WLk/NS0eCMNZs84w7M3YwBGzfk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FoKFgy%2FbtsrS2X7WLk%2FNS0eCMNZs84w7M3YwBGzfk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1030&quot; height=&quot;571&quot; data-filename=&quot;12-3.png&quot; data-origin-width=&quot;1030&quot; data-origin-height=&quot;571&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;lt;'A' 에 공차 넣기&amp;gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;12-0-0.png&quot; data-origin-width=&quot;731&quot; data-origin-height=&quot;775&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cYDQwc/btsrZAF9iPH/4sfPURvMRyscNKqaJaZDR1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cYDQwc/btsrZAF9iPH/4sfPURvMRyscNKqaJaZDR1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cYDQwc/btsrZAF9iPH/4sfPURvMRyscNKqaJaZDR1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcYDQwc%2FbtsrZAF9iPH%2F4sfPURvMRyscNKqaJaZDR1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;731&quot; height=&quot;775&quot; data-filename=&quot;12-0-0.png&quot; data-origin-width=&quot;731&quot; data-origin-height=&quot;775&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래 이미지에서 &quot;A&quot; 구간처럼 원통형의 경우 OFFSET FACE로 -0.5mm로 공차를 주면 원직경으로 딱 -1mm 줄어들게 됩니다.&amp;nbsp;&amp;nbsp;&lt;br /&gt;만약 OFFSET FACE 값을 -1mm로 하게 되면, 원을 둘레로 해서 1mm씩 줄어들게 되면 직경으로 따지면 결국 2mm가 줄어들게 되니 주의해 주세요.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;12-1.png&quot; data-origin-width=&quot;919&quot; data-origin-height=&quot;736&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bbsD59/btsrEyqnrTf/JHTgvN3AHjHPn20GRdCKDK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bbsD59/btsrEyqnrTf/JHTgvN3AHjHPn20GRdCKDK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bbsD59/btsrEyqnrTf/JHTgvN3AHjHPn20GRdCKDK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbbsD59%2FbtsrEyqnrTf%2FJHTgvN3AHjHPn20GRdCKDK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;919&quot; height=&quot;736&quot; data-filename=&quot;12-1.png&quot; data-origin-width=&quot;919&quot; data-origin-height=&quot;736&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;lt;'B' 에 공차 넣기&amp;gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;12-0-1.png&quot; data-origin-width=&quot;720&quot; data-origin-height=&quot;806&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/OODOE/btsrExSxIHK/sKgKo2VL1CCn3DkJYJ7BX1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/OODOE/btsrExSxIHK/sKgKo2VL1CCn3DkJYJ7BX1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/OODOE/btsrExSxIHK/sKgKo2VL1CCn3DkJYJ7BX1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FOODOE%2FbtsrExSxIHK%2FsKgKo2VL1CCn3DkJYJ7BX1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;720&quot; height=&quot;806&quot; data-filename=&quot;12-0-1.png&quot; data-origin-width=&quot;720&quot; data-origin-height=&quot;806&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래 이미지에서 &quot;B&quot; 구간처럼 OFFSET FACE로 -0.5mm씩 양쪽을 함께 공차를 주게 되면 B구간의 몸통 직경이 종합적으로 1mm 줄어들게 됩니다.&amp;nbsp;&lt;br /&gt;만약 OFFSET FACE 값을 -1mm로 하게 되면, 한쪽에 1mm씩, 직경으로 따지면 결국 2mm가 줄어들게 되니 주의해 주세요.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;12-2.png&quot; data-origin-width=&quot;863&quot; data-origin-height=&quot;775&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/c7hYZy/btsrR0fdaC6/K3YkzuxWm8o9ByYuO7gRUK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/c7hYZy/btsrR0fdaC6/K3YkzuxWm8o9ByYuO7gRUK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/c7hYZy/btsrR0fdaC6/K3YkzuxWm8o9ByYuO7gRUK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fc7hYZy%2FbtsrR0fdaC6%2FK3YkzuxWm8o9ByYuO7gRUK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;863&quot; height=&quot;775&quot; data-filename=&quot;12-2.png&quot; data-origin-width=&quot;863&quot; data-origin-height=&quot;775&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;lt; 공차를 넣기 전 모델링 단면 &amp;gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;12-0-3.png&quot; data-origin-width=&quot;752&quot; data-origin-height=&quot;652&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/tCFXV/btsrYV4S6aN/4ZbrVOUXKwlAxd2kykmfQk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/tCFXV/btsrYV4S6aN/4ZbrVOUXKwlAxd2kykmfQk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/tCFXV/btsrYV4S6aN/4ZbrVOUXKwlAxd2kykmfQk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FtCFXV%2FbtsrYV4S6aN%2F4ZbrVOUXKwlAxd2kykmfQk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;752&quot; height=&quot;652&quot; data-filename=&quot;12-0-3.png&quot; data-origin-width=&quot;752&quot; data-origin-height=&quot;652&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;lt; 공차를 넣은 후 모델링 모습 &amp;gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;12-0-4.png&quot; data-origin-width=&quot;972&quot; data-origin-height=&quot;811&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bAaXbW/btsrNA8ZRCz/jfOyP1exyzHpbPowSjIEU1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bAaXbW/btsrNA8ZRCz/jfOyP1exyzHpbPowSjIEU1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bAaXbW/btsrNA8ZRCz/jfOyP1exyzHpbPowSjIEU1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbAaXbW%2FbtsrNA8ZRCz%2FjfOyP1exyzHpbPowSjIEU1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;972&quot; height=&quot;811&quot; data-filename=&quot;12-0-4.png&quot; data-origin-width=&quot;972&quot; data-origin-height=&quot;811&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;5)&lt;span&gt;&lt;span&gt;&lt;span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: #781b33;&quot;&gt;안정적인&amp;nbsp;출력을&amp;nbsp;위한&amp;nbsp;부품의&amp;nbsp;방향&amp;nbsp;정하기!&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/h4&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;3D 모델링 완성 후에 출력을 위한 슬라이싱 파일(gcode)을 만들게 되는데요, 이 과정에서 3D프린터로 출력시킬 작품의 방향을 정해줄 수 있습니다.&amp;nbsp; &amp;nbsp; 여기서 중요한 것은 어느 방향으로 설정하느냐에 따라 출력시간이 길어지거나 단축될 수 있고, 배드 안착에 문제가 생길 수 있으며, 후가공이 불편해지거나, 안정적으로 출력이 되느냐? 등&amp;nbsp; 여러 가지로 영향을 주기 때문에 신중하게 고민해서 출력의 방향을 결정하는 것이 필요합니다.&lt;br /&gt;3D 모델링 부품의 방향은 Fusion360의 STL 파일을 Export 하는 단계에서 정해 줄 수 있고, Cura와 같은 슬라이서 프로그램에서도 정해줄 수 있는데요,&amp;nbsp; 다만 Cura에서는 회전이 부품1과 부품2가 고정된 상태로만 가능하기 때문에, 이번 과제 처럼, 두 개의 부품 중 하나만 따로 회전시켜야 하는 경우에는 모델링툴에서 바꾸어 주는 것이 필요할 수 있다는 점 참고하세요.&amp;nbsp;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;그럼, 이번 과제를 예시로 간단히 설명해 볼게요.&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt;(예시 ①)&amp;nbsp; 모델링한 모양 그대로 출력할 경우&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;아래, 출력스타일(방향) ①의 경우는&amp;nbsp; 부품2가 바닥으로부터 튀어나와 있기 때문에 부품1을 받치기 위한 서포트가 많이 들어가게 되어 출력 시간이 더 늘어날 수 있습니다.&amp;nbsp;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;13-1.png&quot; data-origin-width=&quot;849&quot; data-origin-height=&quot;687&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dpSzv1/btsrZyo6FAJ/7Hafu3P8HlKBNjIrcHC1ok/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dpSzv1/btsrZyo6FAJ/7Hafu3P8HlKBNjIrcHC1ok/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dpSzv1/btsrZyo6FAJ/7Hafu3P8HlKBNjIrcHC1ok/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdpSzv1%2FbtsrZyo6FAJ%2F7Hafu3P8HlKBNjIrcHC1ok%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;849&quot; height=&quot;687&quot; data-filename=&quot;13-1.png&quot; data-origin-width=&quot;849&quot; data-origin-height=&quot;687&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt;(예시 ②)&amp;nbsp; 두 부품을 함께 옆으로 눕혀 출력할 경우.&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;기본 방향은 그대로 하고, 두 부품을 함께 옆으로 눕혀 옆면으로 출력하는 경우.&lt;br /&gt;전반적으로 무난한 편이며, 부품1의 4개의 기둥이 세로로 길쭉하게 뽑히는 형태여서 기둥 부분의 출력 상태가 조금 불안할 수 있음.&amp;nbsp; &amp;nbsp;비번호가 적힌 2번 부품의 아래면과 1번 부품 사이가 잘 떨어지지 않을 수 있음.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;13-2.png&quot; data-origin-width=&quot;904&quot; data-origin-height=&quot;787&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/S2uNy/btsr5dEty82/OX6hs2NHLEzOLd1miArk1K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/S2uNy/btsr5dEty82/OX6hs2NHLEzOLd1miArk1K/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/S2uNy/btsr5dEty82/OX6hs2NHLEzOLd1miArk1K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FS2uNy%2Fbtsr5dEty82%2FOX6hs2NHLEzOLd1miArk1K%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;904&quot; height=&quot;787&quot; data-filename=&quot;13-2.png&quot; data-origin-width=&quot;904&quot; data-origin-height=&quot;787&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt;(예시 ③) &lt;span&gt;&amp;nbsp;&lt;/span&gt; 세로 방향으로 길게 출력할 경우.&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;예시 ③은 바닥면을 Raft와 같은 바닥 보조물을 넣어야 할 경우 가로 방향으로 출력할 경우보다, 면적을 최소화할 수 있어 출력시간을 줄일 수 있지만, 전체적으로 바닥의 출력 면적이 작아 안착이 불안정한 3D프린터로 출력할 경우 출력물 탈착이 우려되니 가급적 피하는 것이 좋습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;13-3.png&quot; data-origin-width=&quot;674&quot; data-origin-height=&quot;747&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bgT6CD/btsr0rcu7Lw/iiZ2NCAWS6eJTNptJzdlX0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bgT6CD/btsr0rcu7Lw/iiZ2NCAWS6eJTNptJzdlX0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bgT6CD/btsr0rcu7Lw/iiZ2NCAWS6eJTNptJzdlX0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbgT6CD%2Fbtsr0rcu7Lw%2FiiZ2NCAWS6eJTNptJzdlX0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;674&quot; height=&quot;747&quot; data-filename=&quot;13-3.png&quot; data-origin-width=&quot;674&quot; data-origin-height=&quot;747&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt;(예시 ④) &lt;span&gt;&amp;nbsp;부품2를&lt;/span&gt; 돌려서 부품 1과의 바닥 높이를 일치시켜 출력할 경우.&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;부품 1은 가로 방향으로 그대로 놓고 부품 2를 아래 이미지처럼 회전을 시켜 출력을 하면 안착 및 출력시간도 크게 늘지 않으며 everywhere 서포트 적용을 하지 않더라도, 안정적으로 출력이 가능해 보입니다.&lt;br /&gt;단, 이렇게 부품 2만 따로 돌리기 위해서는 Fusion360과 같은 모델링 툴에서만 가능합니다.&amp;nbsp; 슬라이서 툴에서는 부품 1, 부품 2가 고정된 채로 함께 회전하기 때문에, 4번 스타일로 작업을 한다면 반드시 모델링 툴에서 선작업을 해주는 것이 필요합니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;13-7.png&quot; data-origin-width=&quot;945&quot; data-origin-height=&quot;805&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/baLb1S/btsrUtvt46Y/Y7uDTvgSGZI7vNOV9cZ8KK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/baLb1S/btsrUtvt46Y/Y7uDTvgSGZI7vNOV9cZ8KK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/baLb1S/btsrUtvt46Y/Y7uDTvgSGZI7vNOV9cZ8KK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbaLb1S%2FbtsrUtvt46Y%2FY7uDTvgSGZI7vNOV9cZ8KK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;945&quot; height=&quot;805&quot; data-filename=&quot;13-7.png&quot; data-origin-width=&quot;945&quot; data-origin-height=&quot;805&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;13-8.png&quot; data-origin-width=&quot;966&quot; data-origin-height=&quot;744&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/beImaU/btsr66EWR2w/jIatLUPirWmLndJLt03X51/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/beImaU/btsr66EWR2w/jIatLUPirWmLndJLt03X51/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/beImaU/btsr66EWR2w/jIatLUPirWmLndJLt03X51/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbeImaU%2Fbtsr66EWR2w%2FjIatLUPirWmLndJLt03X51%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;966&quot; height=&quot;744&quot; data-filename=&quot;13-8.png&quot; data-origin-width=&quot;966&quot; data-origin-height=&quot;744&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;5)&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: #781b33;&quot;&gt;슬라이서 프로그램 설정 체크하기!&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/h4&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;&amp;nbsp;큐라 15.xx 버전의 슬라이서 프로그램을 예시로 주요 설정 사항을 체크해 보세요.&amp;nbsp;&lt;br /&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;&amp;nbsp;※ 단, 본인이 시험 보는 장비와 환경에 따라 설정이 달라야 할 수 있으니, 본인의 상황에 맞게 조정해야 함을 잊지 마세요.&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt;&amp;nbsp;&amp;lt; 기본(Basic) 설정 항목의 주요 체크 사항 &amp;gt;&lt;/b&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;1 큐라기본설정-설명.png&quot; data-origin-width=&quot;664&quot; data-origin-height=&quot;654&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/J1Kn6/btsr4M9pTXw/k2LcQnCPCgRrijG9hUJUVK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/J1Kn6/btsr4M9pTXw/k2LcQnCPCgRrijG9hUJUVK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/J1Kn6/btsr4M9pTXw/k2LcQnCPCgRrijG9hUJUVK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FJ1Kn6%2Fbtsr4M9pTXw%2Fk2LcQnCPCgRrijG9hUJUVK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;664&quot; height=&quot;654&quot; data-filename=&quot;1 큐라기본설정-설명.png&quot; data-origin-width=&quot;664&quot; data-origin-height=&quot;654&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;기본 설정에서 층 간격은 하나의 레이어(층)의 두께를 결정하는 것으로,&amp;nbsp; 0.1 방향으로 숫자를 줄일수록 전체적인 퀄리티는 올라갈 수 있으나, 출력시간이 늘어날 수 있으며,&lt;br /&gt;3.0 이상으로 너무 올리게 되면 빠른 출력이 가능하나 출력품질이 저하되며, 상황에 따라서는 레이어 간 결합력이 떨어져 탈조가 날 수도 있으니 적정 간격으로 조정해 주세요.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt;&amp;lt; 고급(Advanced) 설정 항목의 주요 체크 사항&amp;gt;&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;2.-큐라-기본-설정(Advanced)-설명.png&quot; data-origin-width=&quot;468&quot; data-origin-height=&quot;546&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/CTvSa/btsr4YIvlA7/EZuCNAFPs8TfFKynHaE7KK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/CTvSa/btsr4YIvlA7/EZuCNAFPs8TfFKynHaE7KK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/CTvSa/btsr4YIvlA7/EZuCNAFPs8TfFKynHaE7KK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FCTvSa%2Fbtsr4YIvlA7%2FEZuCNAFPs8TfFKynHaE7KK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;468&quot; height=&quot;546&quot; data-filename=&quot;2.-큐라-기본-설정(Advanced)-설명.png&quot; data-origin-width=&quot;468&quot; data-origin-height=&quot;546&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;color: #ef5369;&quot;&gt;&lt;b&gt;[ 시험 2 과제 ]&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #0593d3;&quot;&gt;&lt;b&gt;&quot;제 2 과제&quot; 시험 시 중요체크사항입니다.&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;h3 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #ef6f53;&quot;&gt;1)&lt;/span&gt; 시험장의 3D프린터 작동법 및 특성 사전에 파악하고 가기!&amp;nbsp;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span style=&quot;color: #ef6f53;&quot;&gt;2)&lt;/span&gt;&lt;span&gt; 2과제 진행방법 및 제한 시간 파악하기!&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span style=&quot;color: #ef6f53;&quot;&gt;3)&lt;/span&gt;&lt;span&gt; 내부채움(Infill) 설정을 단단하게 하기! (1 과제 슬라이서 툴에서 작업)&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #ef6f53;&quot;&gt;4)&lt;/span&gt;&lt;span&gt; 출력 시 필라멘트 롤 체크하기!&lt;br /&gt;&lt;b&gt;&lt;span style=&quot;color: #ef6f53;&quot;&gt;5)&lt;/span&gt;&lt;span&gt;&lt;span&gt; &lt;/span&gt;후가공 시 주의할 부분!&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/h3&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;1)&lt;span&gt;&lt;span&gt;&lt;span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: #781b33;&quot;&gt;시험장의 3D프린터 작동법 및 특성 사전에 파악하고 가기!&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/h4&gt;
&lt;h4 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;①. 직접 사용해 볼 수 있는 곳 찾아가서 출력해 보기&amp;nbsp;&amp;nbsp;&lt;br /&gt;②.&lt;span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;유튜브 및 블로그 자료 검색으로 장비 특성 파악해 보기&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/h4&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #006dd7; text-align: start;&quot;&gt;①.&lt;span&gt; 직접 사용해 볼 수 있는 곳 찾아가서 출력해 보기&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;자신이 갖고 있거나 사용해 본 3D 프린터라면 문제없겠으나, 시험장소 선택과 같은 여러 이유로 전혀 사용해 보지 못한 장비로 시험을 보게 된다면 시험 때 많이 당황을 할 수 있고, 시험직전까지 계속 걱정스러운 마음으로 기다리게 되는데요, 이럴 때 해당 장비로 교육이 가능한 &quot;메이커 스페이스&quot; 혹은 관련 강좌 프로그램을 하는 곳이 있는지? 찾아서 교육 신청을 하고 미리 사용해 본다면 이런 걱정스러운 부분들을 해소할 수 있습니다.&amp;nbsp; &amp;nbsp;실제로 자격증 시험을 보았던 울산창조경제혁신센터에서는 자격증 시험을 보기에 앞서 3D프린팅 및 장비 교육 프로그램을 진행하고 있었습니다.&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #006dd7; text-align: start;&quot;&gt;②.&lt;span&gt;&lt;span&gt; 유튜브 및 블로그 자료 검색으로 장비 특성 파악해 보기&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;만약, 여러 사정으로 인해 해당 장비를 직접 사용해 보지 못하는 경우라면 유튜브 및 블로그 또는 해당 3D프린터 장비 제조사 홈페이지 등 검색하여 장비 특성이나 사용법과 같은 자료들을 찾아보아야 합니다.&amp;nbsp; 파악해 두어야 할 몇 가지 내용은 다음과 같습니다.&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;1)&amp;nbsp; 3D 프린터의 LCD 패널을 통한 조작법 파악 (메뉴 이동 방법,&amp;nbsp; '오토레벨링' 메뉴 확인 또는 수동 레벨링을 위한 Step 모터 언락 방법, 필라멘트 Load/Unload 메뉴 위치 파악 등)&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;2)&amp;nbsp; 필라멘트 교환 또는 Load / Unload 하는 방법 파악 (일반적으로는 필라멘트가 장착이 된 상태로 수험자에게 제공이 됩니다.&amp;nbsp; 하지만, 만에 하나 별도로 필라멘트를 제공하여 수험자가 직접 Extruder까지 로딩시켜야 하는 경우도 생각해 볼 수 있기 때문에 이를 조작하는 관련 영상이 있다면 찾아보고 가는 것이 좋습니다.&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;3) 배드레벨링 (장비에 따라 오토레벨링이 지원될 수도 있고 수동으로 직접 레벨링해야 하는 경우가 있는데요, 수동 레벨링의 경우에는 역시 해당 장비의 레벨링 하는 방법을 사전에 확인하고 가야 당황하지 않게 됩니다. 다만, 시험장에 따라서 기본적으로 레벨링까지 되어 있어 특별히 수험자가 별도로 만지지 않아도 되는 곳이 있습니다.&amp;nbsp; 그리고 경우에 따라, 해당 장비를 처음 사용해 보는 수험자라면 오히려 잘못 만지게 되면 출력에 문제가 생길 수 있으니 주의해야 합니다. 보통 이런 곳에서는 시험장 관리위원이 &quot;수험자가 별도로 레벨링 할 필요 없다&quot;라고 이야기해 주기도 하니 장비 관련 설명할 때 잘 들어보고, 만약 관련 언급이 없다면 레벨링 관련해서 질문을 해보세요. 보통의 경우는 따로 설정하지 않는 것이 도움이 될 거라는 식으로 약간 둘러서 말해주기도 합니다.&amp;nbsp; 그리고 사실 상황에 따라 출력물 출력하고 서포트제거 및 제출까지 시간 여유가 많지 않을 수 있기 때문에 레벨링 등에 따로 시간을 할애할지 등은 잘 판단해 보세요.&amp;nbsp; )&lt;/p&gt;
&lt;h4 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size20&quot;&gt;&amp;nbsp;&lt;/h4&gt;
&lt;h4 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;2)&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: #781b33;&quot;&gt;2 과제 진행방법 및 제한 시간 파악하기!&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/h4&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #006dd7; text-align: start;&quot;&gt;①.&lt;span&gt;&lt;span&gt; 2과제 진행과 관련된 수험자 요구사항 확인하기.&lt;br /&gt;&lt;b&gt;&lt;span style=&quot;color: #006dd7; text-align: start;&quot;&gt;&lt;span&gt;&lt;span&gt;&lt;b&gt;&lt;span style=&quot;color: #006dd7; text-align: start;&quot;&gt;②.&lt;span&gt;&lt;span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;2과제 제한 시간! 확인할 것&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #006dd7; text-align: start;&quot;&gt;&lt;span&gt;&lt;span&gt;&lt;b&gt;&lt;span style=&quot;color: #006dd7; text-align: start;&quot;&gt;①.&lt;span&gt;&lt;span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;2과제 진행과 관련된 수험자 요구사항 확인하기.&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&amp;nbsp;2과제 진행과 관련된 수험자 요구사항을 확인해 보세요.&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;기본적으로 제2과제의 주요 과정은 아래와 같습니다.&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;b&gt;&amp;lt;&lt;span style=&quot;color: #009a87;&quot;&gt;①&lt;/span&gt; &lt;span style=&quot;color: #ee2323;&quot;&gt;3D 프린터 세팅&lt;/span&gt;&amp;gt;&amp;nbsp; &amp;nbsp;&amp;rarr;&amp;nbsp; &amp;nbsp;&amp;lt;&lt;span style=&quot;color: #009a87;&quot;&gt;②&lt;/span&gt; &lt;span style=&quot;color: #ee2323;&quot;&gt;출력물 출력&lt;/span&gt;&amp;gt;&amp;nbsp; &amp;rarr;&amp;nbsp; &amp;nbsp;&amp;lt;&lt;span style=&quot;color: #009a87;&quot;&gt;③&lt;/span&gt; &lt;span style=&quot;color: #ee2323;&quot;&gt;출력물 후가공&lt;/span&gt;&amp;gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style=&quot;color: #f89009;&quot;&gt;▶ 결과물 제출&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;14.png&quot; data-origin-width=&quot;687&quot; data-origin-height=&quot;885&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/DNzWw/btsr0rwYc0m/L6mKcKnf7XwFxENi8t2Qc0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/DNzWw/btsr0rwYc0m/L6mKcKnf7XwFxENi8t2Qc0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/DNzWw/btsr0rwYc0m/L6mKcKnf7XwFxENi8t2Qc0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FDNzWw%2Fbtsr0rwYc0m%2FL6mKcKnf7XwFxENi8t2Qc0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;687&quot; height=&quot;885&quot; data-filename=&quot;14.png&quot; data-origin-width=&quot;687&quot; data-origin-height=&quot;885&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;15.png&quot; data-origin-width=&quot;663&quot; data-origin-height=&quot;897&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/d8Aa4t/btsrZAgiIgp/J1s0kqWpkuDPEkYHigiKdK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/d8Aa4t/btsrZAgiIgp/J1s0kqWpkuDPEkYHigiKdK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/d8Aa4t/btsrZAgiIgp/J1s0kqWpkuDPEkYHigiKdK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fd8Aa4t%2FbtsrZAgiIgp%2FJ1s0kqWpkuDPEkYHigiKdK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;663&quot; height=&quot;897&quot; data-filename=&quot;15.png&quot; data-origin-width=&quot;663&quot; data-origin-height=&quot;897&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #006dd7; text-align: start;&quot;&gt;&lt;span&gt;&lt;span&gt;&lt;b&gt;&lt;span style=&quot;color: #006dd7; text-align: start;&quot;&gt;②.&lt;span&gt;&lt;span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;2과제 제한 시간! 확인할 것&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #8a3db6;&quot;&gt;&lt;b&gt;&amp;nbsp;2과제 제한 시간은,&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span&gt;&amp;nbsp;&quot;&lt;span style=&quot;color: #009a87;&quot;&gt;3D 프린터 장비 세팅시간&lt;/span&gt;&quot; +&amp;nbsp; &quot;&lt;span style=&quot;color: #009a87;&quot;&gt;출력물 출력시간&lt;/span&gt;&quot;&amp;nbsp; + &quot;&lt;span style=&quot;color: #009a87;&quot;&gt;후가공&lt;/span&gt;&quot;&amp;nbsp; &amp;nbsp;&lt;span style=&quot;color: #ee2323;&quot;&gt;==&lt;/span&gt;&amp;nbsp; &quot;&lt;span style=&quot;color: #ef6f53;&quot;&gt;2시간&lt;/span&gt;&quot;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;( ※ 출력물 출력 시간 : 1시간 20분 이하이며, 슬라이서 툴에서 &quot;출력 예상 시간&quot;이 1시간 20분 이하로 슬라이싱 된 것을 감독관으로부터 확인을 받아야 2 과제로 넘어올 수 있음)&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;3)&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt; &amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: #781b33;&quot;&gt;내부채움(Infill) 설정을 단단하게 하기! (1 과제 슬라이서 툴에서 작업해야 함)&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/h4&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp; 3D 프린팅 시험에서 완벽하게 모델링하고 출력까지 성공했다면, 마지막으로 후가공 후 제출만 한다면 합격할 수 있습니다. 다만 모델 모양에 따라 특정부위가 얇게 디자인되어 있는 부품의 경우 후가공 과정에서 부러뜨리기가 매우 쉽습니다.&amp;nbsp; 아무리 후가공 과정에서 조심하려고 주의해도, 특히 부품 1과 부품 2가 만나면서 움직여야 하는 부위의 경우 폭까지 얇은 디자인이라면,&amp;nbsp; 그리고 내부 채움이 20% 이하라면, 정말 부서지기 쉽고, 그간 이런 경우로 탈락하는 사례가 종종 있어왔습니다. 서포트를 떼어내는 것뿐 아니라, 이 과정에서 쉽게 부서지는 경우가 흔하다 보니, 되도록 내부채움을 두께가 아주 얇다면 50% 가까이 가져가는 것이 좋습니다. 물론 전체 출력시간이 1시간 20분을 넘으면 안 되기에 50%를 기준으로 출력시간이 오버되지 않는 선에서 내부채움 %를 결정해 주면 좋습니다.&amp;nbsp;&lt;br /&gt;&lt;br /&gt;아래 예시로 Infill의 %에 따라 내부의 단단함을 비교해 보면 바로 이해할 수 있습니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;16-내부채움15프로-편집.png&quot; data-origin-width=&quot;997&quot; data-origin-height=&quot;774&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/oNXFU/btssfHsHF8G/ZlalGyIkfkpqRJtKLCpxB1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/oNXFU/btssfHsHF8G/ZlalGyIkfkpqRJtKLCpxB1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/oNXFU/btssfHsHF8G/ZlalGyIkfkpqRJtKLCpxB1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FoNXFU%2FbtssfHsHF8G%2FZlalGyIkfkpqRJtKLCpxB1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;997&quot; height=&quot;774&quot; data-filename=&quot;16-내부채움15프로-편집.png&quot; data-origin-width=&quot;997&quot; data-origin-height=&quot;774&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;위 사진에서도 알 수 있듯 Infill이 15% 정도라면 얇은 기둥 부분은 후가공 과정에서 충분히 부서질 가능성이 큽니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;16-내부채움-30프로-편집.png&quot; data-origin-width=&quot;997&quot; data-origin-height=&quot;733&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bi6QMH/btssc8c0FSb/ML42esVbCieun2JD7ypDXk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bi6QMH/btssc8c0FSb/ML42esVbCieun2JD7ypDXk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bi6QMH/btssc8c0FSb/ML42esVbCieun2JD7ypDXk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbi6QMH%2Fbtssc8c0FSb%2FML42esVbCieun2JD7ypDXk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;997&quot; height=&quot;733&quot; data-filename=&quot;16-내부채움-30프로-편집.png&quot; data-origin-width=&quot;997&quot; data-origin-height=&quot;733&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;따라서,&amp;nbsp; 출력 제한 시간을 확인하면서 Infil을 최대한 단단한 비율로 채워주면 좋을 것 같습니다.&amp;nbsp; (권장 50%~30%)&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;16-내부채움50프로-편집.png&quot; data-origin-width=&quot;1009&quot; data-origin-height=&quot;768&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/r3Gii/btssaS9Dkuo/lGyXZOfCn64HE0SskssV5k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/r3Gii/btssaS9Dkuo/lGyXZOfCn64HE0SskssV5k/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/r3Gii/btssaS9Dkuo/lGyXZOfCn64HE0SskssV5k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fr3Gii%2FbtssaS9Dkuo%2FlGyXZOfCn64HE0SskssV5k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1009&quot; height=&quot;768&quot; data-filename=&quot;16-내부채움50프로-편집.png&quot; data-origin-width=&quot;1009&quot; data-origin-height=&quot;768&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;4)&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: #781b33;&quot;&gt;출력 시 필라멘트 롤 체크하기!&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/h4&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;보통의 경우는 출력할 때 크게 문제없겠으나, 종종 필라멘트 롤이 엉키는 경우가 있습니다. 그렇게 되면, 필라멘트가 공급이 되지 않아 출력물이 더 이상 적층이 안 되어 출력물을 완성할 수 없게 됩니다.&amp;nbsp; 따라서 시험이 진행되는 동안에는 주기적으로 작업물이 적층 되는 모습을&amp;nbsp; 수험자 본인이 주의 깊게 지켜봐야 하며, 만약 필라멘트 롤이 잘 풀리지 않고 걸린다면 롤을 손으로 미리 조금씩 계속 풀어 주면서 작품을 완성해야 합니다.&amp;nbsp;&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;h4 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;5)&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: #781b33;&quot;&gt;후가공 시 주의할 부분!&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/h4&gt;
&lt;h4 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;①. 작업용 장갑을 착용하고 다치지 않도록 안전에 유의함.&amp;nbsp;&amp;nbsp;&lt;br /&gt;②.&lt;span&gt;&lt;span&gt; 후가공시 적절한 공구가 갖춰져 있다면 실수할 가능성이 줄어든다.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/h4&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;br /&gt;&amp;nbsp;수험자 지참 준비물에 보면 작업용 장갑 및 마스크를 준비하라고 되어 있습니다. 만약 준비되지 않을 경우 시험장 상황과 감독관에 따라서 감점을 줄 수 있습니다. (규정)&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;br /&gt;물론 규정이 아니라도, 실제 후가공 상황에서 날카로운 도구로 잘 떨어지지 않는 부분을 시간에 쫓기어 작업하다가 손을 다치는 경우가 종종 있기 때문에 본인의 안전을 위해서라도 장갑을 챙겨가세요.&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;일반적으로 니퍼, 롱노우즈, 커팅도구(칼, 미니 조각칼 등)는 필수로 챙겨가는 것이 좋고, 추가로 필요하다면 쇠줄, 디버링 툴 같은 것도 챙겨가면 도움이 될 수 있겠습니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;01 니퍼.png&quot; data-origin-width=&quot;426&quot; data-origin-height=&quot;553&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bxy9hT/btsshtHx2cN/HptQfQKom6per3A8OVIHl1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bxy9hT/btsshtHx2cN/HptQfQKom6per3A8OVIHl1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bxy9hT/btsshtHx2cN/HptQfQKom6per3A8OVIHl1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbxy9hT%2FbtsshtHx2cN%2FHptQfQKom6per3A8OVIHl1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;426&quot; height=&quot;553&quot; data-filename=&quot;01 니퍼.png&quot; data-origin-width=&quot;426&quot; data-origin-height=&quot;553&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;02 롱노우즈.png&quot; data-origin-width=&quot;500&quot; data-origin-height=&quot;380&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/Ch5sA/btsshu7wSuj/g8jX3UztiJgjCJk2tTOrk0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Ch5sA/btsshu7wSuj/g8jX3UztiJgjCJk2tTOrk0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Ch5sA/btsshu7wSuj/g8jX3UztiJgjCJk2tTOrk0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FCh5sA%2Fbtsshu7wSuj%2Fg8jX3UztiJgjCJk2tTOrk0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;500&quot; height=&quot;380&quot; data-filename=&quot;02 롱노우즈.png&quot; data-origin-width=&quot;500&quot; data-origin-height=&quot;380&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;03 디버링 툴.png&quot; data-origin-width=&quot;201&quot; data-origin-height=&quot;461&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bAAQ6r/btssc8EJnuH/cMfPjarMksgDNUt1EFeE41/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bAAQ6r/btssc8EJnuH/cMfPjarMksgDNUt1EFeE41/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bAAQ6r/btssc8EJnuH/cMfPjarMksgDNUt1EFeE41/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbAAQ6r%2Fbtssc8EJnuH%2FcMfPjarMksgDNUt1EFeE41%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;201&quot; height=&quot;461&quot; data-filename=&quot;03 디버링 툴.png&quot; data-origin-width=&quot;201&quot; data-origin-height=&quot;461&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;04 쇠줄.png&quot; data-origin-width=&quot;414&quot; data-origin-height=&quot;454&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/s2PPE/btssfSVAisg/AeRydRhYfTL8b7WZR5dLs1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/s2PPE/btssfSVAisg/AeRydRhYfTL8b7WZR5dLs1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/s2PPE/btssfSVAisg/AeRydRhYfTL8b7WZR5dLs1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fs2PPE%2FbtssfSVAisg%2FAeRydRhYfTL8b7WZR5dLs1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;414&quot; height=&quot;454&quot; data-filename=&quot;04 쇠줄.png&quot; data-origin-width=&quot;414&quot; data-origin-height=&quot;454&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;04 커팅 조각칼.png&quot; data-origin-width=&quot;480&quot; data-origin-height=&quot;385&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cvSXou/btssk0dK700/FkPjhmjP6SsaZsjB8OBJxk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cvSXou/btssk0dK700/FkPjhmjP6SsaZsjB8OBJxk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cvSXou/btssk0dK700/FkPjhmjP6SsaZsjB8OBJxk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcvSXou%2Fbtssk0dK700%2FFkPjhmjP6SsaZsjB8OBJxk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;480&quot; height=&quot;385&quot; data-filename=&quot;04 커팅 조각칼.png&quot; data-origin-width=&quot;480&quot; data-origin-height=&quot;385&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;또한, 이렇게 상황에 따라, 적절한 공구들이 있다면 후가공 시 잘 떨어지지 않는 서포트를 떼어내기 수월하며, 두께가 얇아 부러지기 쉬운 부품도 좀 더 안전하게 작업할 수도 있습니다.&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;이상으로, 3D프린터 운용기능사 시험 전, 미리 알고 가면 도움 될 수 있는 내용으로 정리해 보았습니다.&amp;nbsp;&lt;br /&gt;3D프린터 운용기능사 시험을 처음 보는 분들이,&amp;nbsp; 종합적으로 시험 전 준비할 수 있는 자료가 있으면 많이 도움이 되겠다는 마음으로 일주일 가까이 공을 들여 작성하였는데요, 아무쪼록 많은 도움이 되었으면 합니다.&amp;nbsp;&lt;br /&gt;&lt;br /&gt;감사합니다.&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>3D 프린팅/3D프린터_자격증</category>
      <category>3D 프린터 기능사 실기</category>
      <category>3D 프린터 실기 사전 체크 사항</category>
      <category>3D 프린터 실기 시험 실격 합격 유의사항</category>
      <category>3D 프린터 실기 유의사항</category>
      <category>3D 프린터 실기 준비물</category>
      <category>3D 프린터 운용기능사 유의사항 장비 시험장</category>
      <category>3D 프린터 자격증 시험</category>
      <category>3D 프린터운용기능사 Fusion360 GP200 Cura 큐라</category>
      <category>3D 프린터운용기능사 시험장 정보</category>
      <category>3D 프린터운용기능사 장비 시험장 리스트</category>
      <author>엑소더스팩토리</author>
      <guid isPermaLink="true">https://rasino.tistory.com/365</guid>
      <comments>https://rasino.tistory.com/365#entry365comment</comments>
      <pubDate>Mon, 28 Aug 2023 09:00:32 +0900</pubDate>
    </item>
    <item>
      <title>【Node-RED #⑥】노드-레드! 핵심노드 설명 5편/ Core Node Description! #5</title>
      <link>https://rasino.tistory.com/364</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #2d2c2d; text-align: start;&quot;&gt;이번 게시글은 아래 지난 게시글 핵심노드 설명 4편에 이은 설명입니다.&amp;nbsp; 순서는 크게 상관없지만 다른 노드의 설명과 Node-RED의 기초적인 설명을 참고하려면 맨 앞쪽 링크를 참고해 보세요.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://rasino.tistory.com/362&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;【Node-RED #⑤】노드-레드! 핵심노드 설명 4편/ Core Node Description! #4&lt;/a&gt;&lt;/p&gt;
&lt;h3 style=&quot;background-color: #ffffff; color: #000000; text-align: start;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;①&amp;nbsp; delay 노드&lt;/b&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;01.png&quot; data-origin-width=&quot;466&quot; data-origin-height=&quot;125&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cHzcAd/btsqLlZtXqR/5u8mBrgoDGN78gD5mz2Tqk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cHzcAd/btsqLlZtXqR/5u8mBrgoDGN78gD5mz2Tqk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cHzcAd/btsqLlZtXqR/5u8mBrgoDGN78gD5mz2Tqk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcHzcAd%2FbtsqLlZtXqR%2F5u8mBrgoDGN78gD5mz2Tqk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;466&quot; height=&quot;125&quot; data-filename=&quot;01.png&quot; data-origin-width=&quot;466&quot; data-origin-height=&quot;125&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;background-color: #ffffff; color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp; delay 노드는 입력 받는 메시지를 일정한 규칙에 따라 지연해서 전달하도록 해주는 노드입니다.&lt;/p&gt;
&lt;p style=&quot;background-color: #ffffff; color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;지연 전달하는 몇 가지 조건 설정을 할 수 있는데요,&amp;nbsp; 예를 들어 아래처럼 5초의 시간 delay를 시켜볼 수 있습니다.&amp;nbsp; &amp;nbsp;확인을 위해 1번 debug 창은 바로 연결하였고,&amp;nbsp; 2번 debug 창은 5초의 시간 delay를 거치도록 하였습니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;02.png&quot; data-origin-width=&quot;897&quot; data-origin-height=&quot;354&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dbkBYq/btsqLwM4Vae/ibB2AKsty0GreE7XsRqsAK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dbkBYq/btsqLwM4Vae/ibB2AKsty0GreE7XsRqsAK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dbkBYq/btsqLwM4Vae/ibB2AKsty0GreE7XsRqsAK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdbkBYq%2FbtsqLwM4Vae%2FibB2AKsty0GreE7XsRqsAK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;897&quot; height=&quot;354&quot; data-filename=&quot;02.png&quot; data-origin-width=&quot;897&quot; data-origin-height=&quot;354&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1. 타임스템프(inject 노드)의 속성 값으로 전달할 적당한 메시지를 아래처럼 작성합니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;03.png&quot; data-origin-width=&quot;865&quot; data-origin-height=&quot;474&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bl28wB/btsqO8dSEGd/9tZvxvFsgPcTR8kkHZcOE1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bl28wB/btsqO8dSEGd/9tZvxvFsgPcTR8kkHZcOE1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bl28wB/btsqO8dSEGd/9tZvxvFsgPcTR8kkHZcOE1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbl28wB%2FbtsqO8dSEGd%2F9tZvxvFsgPcTR8kkHZcOE1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;865&quot; height=&quot;474&quot; data-filename=&quot;03.png&quot; data-origin-width=&quot;865&quot; data-origin-height=&quot;474&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;background-color: #ffffff; color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;background-color: #ffffff; color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;2. delay 노드의 속성은 아래처럼 해주세요.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;04.png&quot; data-origin-width=&quot;782&quot; data-origin-height=&quot;536&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/O6M8Z/btsqM7GpDRW/eQZpEwkHKlm7Vfu6TNDjIK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/O6M8Z/btsqM7GpDRW/eQZpEwkHKlm7Vfu6TNDjIK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/O6M8Z/btsqM7GpDRW/eQZpEwkHKlm7Vfu6TNDjIK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FO6M8Z%2FbtsqM7GpDRW%2FeQZpEwkHKlm7Vfu6TNDjIK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;782&quot; height=&quot;536&quot; data-filename=&quot;04.png&quot; data-origin-width=&quot;782&quot; data-origin-height=&quot;536&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;background-color: #ffffff; color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;background-color: #ffffff; color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;3. 그리고 배포하기를 누르고 Inject 버튼을 누르면 아래처럼 debug 창으로 결과를 확인해 보면,&amp;nbsp; delay가 없는 출력과 비교해서 5초의 설정에 따라 5초의 delay가 정확히 발생하는 것을 알 수 있습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;05.png&quot; data-origin-width=&quot;605&quot; data-origin-height=&quot;533&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/btGg5C/btsqLRKGgQt/c4cC8U12meSxBgIVqMTIE0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/btGg5C/btsqLRKGgQt/c4cC8U12meSxBgIVqMTIE0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/btGg5C/btsqLRKGgQt/c4cC8U12meSxBgIVqMTIE0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbtGg5C%2FbtsqLRKGgQt%2Fc4cC8U12meSxBgIVqMTIE0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;605&quot; height=&quot;533&quot; data-filename=&quot;05.png&quot; data-origin-width=&quot;605&quot; data-origin-height=&quot;533&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #2d2c2d; text-align: start;&quot;&gt;&amp;nbsp;delay 속성중에는 방금과 같은 고정 값 지연(Fixed delay) 외에,&amp;nbsp; 일정 범위 값 안에서 랜덤으로 지연시킬 수 있는 속성도 사용 가능합니다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #2d2c2d; text-align: start;&quot;&gt;또한, 기본(default) delay 값으로 예를 들어 3초를 설정하고,&amp;nbsp; 특정 메시지(페이로드) 마다 delay를 다르게 설정하여 구분해 줄 수도 있습니다.&amp;nbsp; (아래 예시)&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #2d2c2d; text-align: start;&quot;&gt;먼저, &lt;br /&gt;1. 아래처럼 노드를 구성해 주세요.&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;06.png&quot; data-origin-width=&quot;853&quot; data-origin-height=&quot;421&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bMDid2/btsqM86AFwC/60b5gggOK0yU5ABhO00yN0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bMDid2/btsqM86AFwC/60b5gggOK0yU5ABhO00yN0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bMDid2/btsqM86AFwC/60b5gggOK0yU5ABhO00yN0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbMDid2%2FbtsqM86AFwC%2F60b5gggOK0yU5ABhO00yN0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;853&quot; height=&quot;421&quot; data-filename=&quot;06.png&quot; data-origin-width=&quot;853&quot; data-origin-height=&quot;421&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #2d2c2d; text-align: start;&quot;&gt;2.&amp;nbsp; delay 노드의 속성은 아래처럼 &quot;msg.delay에 지연을 설정&quot;으로 바꾸고 시간은 default 값으로 임의로 3초를 지정해 줍니다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;06-2.png&quot; data-origin-width=&quot;795&quot; data-origin-height=&quot;541&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bxI9gq/btsqKxS7Ppc/AoI7TAUYSs6ZAm5I4kUzv0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bxI9gq/btsqKxS7Ppc/AoI7TAUYSs6ZAm5I4kUzv0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bxI9gq/btsqKxS7Ppc/AoI7TAUYSs6ZAm5I4kUzv0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbxI9gq%2FbtsqKxS7Ppc%2FAoI7TAUYSs6ZAm5I4kUzv0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;795&quot; height=&quot;541&quot; data-filename=&quot;06-2.png&quot; data-origin-width=&quot;795&quot; data-origin-height=&quot;541&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #2d2c2d; text-align: start;&quot;&gt;3.&amp;nbsp; 'A' inject노드에는 단순한 전달 메시지만 입력합니다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;07.png&quot; data-origin-width=&quot;849&quot; data-origin-height=&quot;526&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/daWuc0/btsqJB9yeU0/ctwpFF1PnYAEypkvPGRdcK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/daWuc0/btsqJB9yeU0/ctwpFF1PnYAEypkvPGRdcK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/daWuc0/btsqJB9yeU0/ctwpFF1PnYAEypkvPGRdcK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdaWuc0%2FbtsqJB9yeU0%2FctwpFF1PnYAEypkvPGRdcK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;849&quot; height=&quot;526&quot; data-filename=&quot;07.png&quot; data-origin-width=&quot;849&quot; data-origin-height=&quot;526&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #2d2c2d; text-align: start;&quot;&gt;4. 'B' inject 노드에는 둘 째줄에 있는 'msg.topic'을&amp;nbsp; 'msg.delay'로 바꿔주고, 속성을 '0~9' number 형식으로 바꾼 다음, delay 값 5000 millisecond&lt;span style=&quot;background-color: #ffffff; color: #2d2c2d; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;(5초)&lt;/span&gt;를 입력해줍니다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;08.png&quot; data-origin-width=&quot;861&quot; data-origin-height=&quot;490&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/we6uC/btsqT24NEvi/FkRKrWgBT6Ht4nweWtmlj1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/we6uC/btsqT24NEvi/FkRKrWgBT6Ht4nweWtmlj1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/we6uC/btsqT24NEvi/FkRKrWgBT6Ht4nweWtmlj1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fwe6uC%2FbtsqT24NEvi%2FFkRKrWgBT6Ht4nweWtmlj1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;861&quot; height=&quot;490&quot; data-filename=&quot;08.png&quot; data-origin-width=&quot;861&quot; data-origin-height=&quot;490&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;5.&amp;nbsp; 결과를 실행해 보면, 'A inject'노드를 눌렀을 때, delay (variable) 노드에 기본 값으로 설정된 3초를 기다린 후 A의 메시지(페이로드)를 debug 창으로 전달(출력)했으며,&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;09.png&quot; data-origin-width=&quot;1257&quot; data-origin-height=&quot;424&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/FNwqO/btsqLwfjlbo/D3gPakYu6XOk6D40MkQ010/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/FNwqO/btsqLwfjlbo/D3gPakYu6XOk6D40MkQ010/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/FNwqO/btsqLwfjlbo/D3gPakYu6XOk6D40MkQ010/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FFNwqO%2FbtsqLwfjlbo%2FD3gPakYu6XOk6D40MkQ010%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1257&quot; height=&quot;424&quot; data-filename=&quot;09.png&quot; data-origin-width=&quot;1257&quot; data-origin-height=&quot;424&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;6. &amp;nbsp;'B inject'노드를 눌렀을 때는 B inject 노드에 설정된 delay 값이 적용되어 5초를 기다린 후 B의 메시지(페이로드)를 debug 창으로 전달(출력)하는 것을 알 수 있습니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;10.png&quot; data-origin-width=&quot;1295&quot; data-origin-height=&quot;392&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cpIReo/btsqRR3PfmC/xjKGKHn3lrmHN2urkYb1LK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cpIReo/btsqRR3PfmC/xjKGKHn3lrmHN2urkYb1LK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cpIReo/btsqRR3PfmC/xjKGKHn3lrmHN2urkYb1LK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcpIReo%2FbtsqRR3PfmC%2FxjKGKHn3lrmHN2urkYb1LK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1295&quot; height=&quot;392&quot; data-filename=&quot;10.png&quot; data-origin-width=&quot;1295&quot; data-origin-height=&quot;392&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;7. 그 밖에, delay 노드 사용할 때&amp;nbsp; inject 노드에서 Reset 기능을 설정할 수 있는데요, 예를 들어, A나 B노드의 inject를 실행하고 설정된 delay 값이 완료되기 전,&amp;nbsp; Reset inject노드를 누르면 delay가 취소되고 결국 debug창으로 페이로드가 전달되지 않게 됩니다.&amp;nbsp; (이 실습을 위해 아래처럼 Reset inject 노드를 추가해 주세요)&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;12.png&quot; data-origin-width=&quot;1267&quot; data-origin-height=&quot;674&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bfIFEC/btsqJB2PHsE/Gk4Lk6G0komLNKaSVfE89k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bfIFEC/btsqJB2PHsE/Gk4Lk6G0komLNKaSVfE89k/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bfIFEC/btsqJB2PHsE/Gk4Lk6G0komLNKaSVfE89k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbfIFEC%2FbtsqJB2PHsE%2FGk4Lk6G0komLNKaSVfE89k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1267&quot; height=&quot;674&quot; data-filename=&quot;12.png&quot; data-origin-width=&quot;1267&quot; data-origin-height=&quot;674&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 리셋(Reset) inject 노드의 속성은 아래처럼 합니다.&amp;nbsp; 일반 inject 노드를 추가해서 두 번째 줄에 있는 msg.topic 항목의 topic 글자를 지우고 reset를 입력합니다.(자동완성 기능 제공)&amp;nbsp; &amp;nbsp;그리고 속성창에 있는 속성을 Boolean(불린)으로 변경하고, true값으로 설정 확인해 주면 됩니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;11.png&quot; data-origin-width=&quot;886&quot; data-origin-height=&quot;561&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/uUB0v/btsqKyRZ5MH/Dvnt46EtflEWYbKV49kxDK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/uUB0v/btsqKyRZ5MH/Dvnt46EtflEWYbKV49kxDK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/uUB0v/btsqKyRZ5MH/Dvnt46EtflEWYbKV49kxDK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FuUB0v%2FbtsqKyRZ5MH%2FDvnt46EtflEWYbKV49kxDK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;886&quot; height=&quot;561&quot; data-filename=&quot;11.png&quot; data-origin-width=&quot;886&quot; data-origin-height=&quot;561&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;실습은 먼저 A 혹은 B inject 노드(여기서는 5초로 설정된 B 노드를 클릭)를 클릭 한 다음 5초가 되기 전 Reset inject노드를 클릭하면 delay가 취소되고 debug창으로 아무런 페이로드가 전달되지 않는 것을 볼 수 있습니다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;8. 아래처럼, 플러쉬(Flush) inject 노드를 추가해 주는데요, 마찬가지로 일반 inject 노드를 추가해서 두 번째 줄에 있는 msg.topic 항목의 topic 글자를 지우고 flush를 입력합니다.&amp;nbsp; &amp;nbsp;그리고 속성창에 있는 속성을 Boolean(불린)으로 변경하고, true값으로 설정확인해 주면 됩니다.&amp;nbsp; &amp;nbsp;Flush 기능은 delay 타임이 적용되고 있든 그렇지 않든 클릭하는 즉시 페이로드를 전달시키는 기능입니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;12-2.png&quot; data-origin-width=&quot;870&quot; data-origin-height=&quot;550&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b7J4Yk/btsqJSQJjiz/Sd3M93fp5ZTlKmT8SvviAK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b7J4Yk/btsqJSQJjiz/Sd3M93fp5ZTlKmT8SvviAK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b7J4Yk/btsqJSQJjiz/Sd3M93fp5ZTlKmT8SvviAK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb7J4Yk%2FbtsqJSQJjiz%2FSd3M93fp5ZTlKmT8SvviAK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;870&quot; height=&quot;550&quot; data-filename=&quot;12-2.png&quot; data-origin-width=&quot;870&quot; data-origin-height=&quot;550&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;13.png&quot; data-origin-width=&quot;1308&quot; data-origin-height=&quot;688&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cuqt36/btsqSH7H30a/DqusqYrkGKnUuggk9tEkBK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cuqt36/btsqSH7H30a/DqusqYrkGKnUuggk9tEkBK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cuqt36/btsqSH7H30a/DqusqYrkGKnUuggk9tEkBK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fcuqt36%2FbtsqSH7H30a%2FDqusqYrkGKnUuggk9tEkBK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1308&quot; height=&quot;688&quot; data-filename=&quot;13.png&quot; data-origin-width=&quot;1308&quot; data-origin-height=&quot;688&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>라즈베리파이/라즈베리_기초</category>
      <category>delay 노드레드 설정 설명</category>
      <category>node red flush 노드 설정</category>
      <category>node red reset 노드 설정</category>
      <category>node-red</category>
      <category>노드레드</category>
      <category>노드레드 delay 딜레이 리셋</category>
      <category>노드레드 시간지연 delay 노드 설명 설정 사용 예시</category>
      <author>엑소더스팩토리</author>
      <guid isPermaLink="true">https://rasino.tistory.com/364</guid>
      <comments>https://rasino.tistory.com/364#entry364comment</comments>
      <pubDate>Thu, 10 Aug 2023 19:56:51 +0900</pubDate>
    </item>
    <item>
      <title>【키보드 인식문제】Zadig 펌웨어 업뎃 툴 사용 실수로 키보드가 먹통이 되었을 때 해결법</title>
      <link>https://rasino.tistory.com/363</link>
      <description>&lt;p data-ke-size=&quot;size18&quot;&gt;안녕하세요~&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;최근, ATmega128 칩을 테스트할 일이 있어 AVRISP-mk2 툴을 알리에서 구해서 연결하던 중, AVRStudio 7.0에서 인식이 안 되는 문제가 생겨, zadig 툴을 사용하여, 펌웨어 업뎃을 진행했습니다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;01.png&quot; data-origin-width=&quot;575&quot; data-origin-height=&quot;254&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dwVGos/btsiU5v7Wwc/l3pMnWc7XyBzFCK1KpYB61/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dwVGos/btsiU5v7Wwc/l3pMnWc7XyBzFCK1KpYB61/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dwVGos/btsiU5v7Wwc/l3pMnWc7XyBzFCK1KpYB61/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdwVGos%2FbtsiU5v7Wwc%2Fl3pMnWc7XyBzFCK1KpYB61%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;575&quot; height=&quot;254&quot; data-filename=&quot;01.png&quot; data-origin-width=&quot;575&quot; data-origin-height=&quot;254&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;fileblock&quot; data-ke-align=&quot;alignCenter&quot;&gt;&lt;a href=&quot;https://blog.kakaocdn.net/dn/bFBUzH/btsi3pOy1ZL/aWfBW6K3vHlKjppL1YXXy0/zadig-2.8.exe?attach=1&amp;amp;knm=tfile.exe&quot; class=&quot;&quot;&gt;
    &lt;div class=&quot;image&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;desc&quot;&gt;&lt;div class=&quot;filename&quot;&gt;&lt;span class=&quot;name&quot;&gt;zadig-2.8.exe&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;size&quot;&gt;5.01MB&lt;/div&gt;
&lt;/div&gt;
  &lt;/a&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;참고로, Zadig 툴은 USB형태로 연결된 기기장치들의 펌웨어를 강제로 원하는 형태로(위 이미지에 있는 4가지 종류) 덮어&amp;nbsp; 씌울 수 있는 툴로서 사용시 주의를 요합니다.&amp;nbsp; Zadig 툴의 옵션 메뉴에 있는 &quot;List All Device&quot;를 클릭하면, PC에 연결된 모든 USB장치가 목록으로 뜨게 되는데요,&amp;nbsp; AVRISP 장치의 펌웨어를 4종 모두 바꾸어가며 테스트하던 중(기기를 꽂고 빼고 하면서) 목록 최상단에 있던&amp;nbsp; 키보드(Keychron K1)를 펌웨어 업뎃 시키고야 말았습니다. (살짝 뜨는 경고 메시지를 무시해 버림)&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;01-1.png&quot; data-origin-width=&quot;575&quot; data-origin-height=&quot;254&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bJqP98/btsi2N3vRrY/XGxlQXQoyUj9uKbntYRgn1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bJqP98/btsi2N3vRrY/XGxlQXQoyUj9uKbntYRgn1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bJqP98/btsi2N3vRrY/XGxlQXQoyUj9uKbntYRgn1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbJqP98%2Fbtsi2N3vRrY%2FXGxlQXQoyUj9uKbntYRgn1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;575&quot; height=&quot;254&quot; data-filename=&quot;01-1.png&quot; data-origin-width=&quot;575&quot; data-origin-height=&quot;254&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;br /&gt;&amp;nbsp;그 덕에(?)&amp;nbsp; 갑자기 키보드가 먹통이 되었는데요,&amp;nbsp; &amp;nbsp;이를 해결하고자, Zadig 목록에 있던 4종의 펌웨어로는 모두 인식이 안 되고,&amp;nbsp; 키보드 제조사 게시판에서 제공하는 펌웨어 업뎃 프로그램으로 복구를 시도해 봤지만,&amp;nbsp; 펌웨어 업뎃으로 인해 키보드가 HID장치가 아닌 다른 장치로만 인식이 되는 상황이어서 제조사에서 제공되는 펌웨어 업뎃 툴로는 복구가 안 되는 상황이 발생하게 되었습니다.&amp;nbsp; &amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;윈도 장치관리자에 있는 Keyboard 목록을 삭제하고 드라이버를 다시 설치해보려 했지만 제대로 인식이 되지 않았으며, 여러 가지 시도 끝에&amp;nbsp; 겨우 해결을 했는데요,&amp;nbsp; 모든 상황이 동일하진 않겠지만,&amp;nbsp; 저와 같은 상황에 빠진다면, 참고해 보시라고 기록을 남겨 놓습니다.&amp;nbsp;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;우선 Zadig로&amp;nbsp; WinUSB (v6.1.7600...) 버전으로 펌웨어 업뎃을 해놓고서,&amp;nbsp; 키보드를 다른 PC에 물리니 키보드의 기본 기능은 사용할 수 있는 것으로 확인되자,&amp;nbsp; 인식이 안 된 PC에서 레지스트리 편집을 통해,&amp;nbsp; Keyboard 관련 Driver버를 모두 삭제하는 것이 필요하다고 생각되어 삭제를 하게 되었습니다.&amp;nbsp;&lt;br /&gt;윈도 실행 메뉴 》 Regedit&amp;nbsp; 엔터,&amp;nbsp; &amp;nbsp; 레지스트리 편집기로 들어가서,&amp;nbsp; 아래 목록처럼 키보드 목록으로 들어가세요,&amp;nbsp;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;아래에 보면, 그동안 인식된 키보드 관련 레지스트리 값들이 보이는데요, 인식이 안 된 키보드 항목이 어떤 것인지 모르기 때문에, (기본값) 항목을 제외하고 모두 삭제시켜주세요.&amp;nbsp; (레지스트리 작업 시 주의하세요!)&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt;HKEY_LOCAL_MACHINE\HARDWARE\DEVICEMAP\KeyboardClass&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;02.png&quot; data-origin-width=&quot;1026&quot; data-origin-height=&quot;598&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dFdUbr/btsi39SjKHB/8Hn4DFvw5m8skjobdvcik0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dFdUbr/btsi39SjKHB/8Hn4DFvw5m8skjobdvcik0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dFdUbr/btsi39SjKHB/8Hn4DFvw5m8skjobdvcik0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdFdUbr%2Fbtsi39SjKHB%2F8Hn4DFvw5m8skjobdvcik0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1026&quot; height=&quot;598&quot; data-filename=&quot;02.png&quot; data-origin-width=&quot;1026&quot; data-origin-height=&quot;598&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;그리고, 재부팅한 후,&amp;nbsp; 재일 중요한 부분! 입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;먹통이 된 키보드를 다시 연결하고, 제어판 장치관리자로 들어갑니다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;그리고 문제가 된 키보드 장치(키보드 모델명) 혹은 USB장치로 인식된 키보드 항목을 찾아서 선택 후에 마우스 우클릭하고 장치속성 창을 여세요,&amp;nbsp; 그리고 드라이버 탭의 드라이버 업데이트(P)를 클릭해서 아래와 같은 화면이 나오면,&amp;nbsp; &amp;rarr; 내 컴퓨터에서 드라이버 찾아보기(R) 항목을 클릭하세요.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;03.png&quot; data-origin-width=&quot;621&quot; data-origin-height=&quot;454&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bcAw1S/btsi2Qr8COw/NFDv61KMTuetRmsV2bLSlK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bcAw1S/btsi2Qr8COw/NFDv61KMTuetRmsV2bLSlK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bcAw1S/btsi2Qr8COw/NFDv61KMTuetRmsV2bLSlK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbcAw1S%2Fbtsi2Qr8COw%2FNFDv61KMTuetRmsV2bLSlK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;621&quot; height=&quot;454&quot; data-filename=&quot;03.png&quot; data-origin-width=&quot;621&quot; data-origin-height=&quot;454&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;그리고 이어지는 화면에서 아래처럼,&amp;nbsp; &amp;rarr; 컴퓨터의 사용 가능한 드라이버 목록에서 직접 선택(L)을 클릭합니다. (문제 해결 전에는 여러 목록이 떴고,&amp;nbsp; 다른 항목이 기본 선택되어 있는 상황이었습니다.)&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;키크론 키보드 드라이버 설치.png&quot; data-origin-width=&quot;621&quot; data-origin-height=&quot;454&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/RWgkO/btsmBvS1ata/wqXfpkI3RWTGVoEdolHkVK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/RWgkO/btsmBvS1ata/wqXfpkI3RWTGVoEdolHkVK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/RWgkO/btsmBvS1ata/wqXfpkI3RWTGVoEdolHkVK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FRWgkO%2FbtsmBvS1ata%2FwqXfpkI3RWTGVoEdolHkVK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;621&quot; height=&quot;454&quot; data-filename=&quot;키크론 키보드 드라이버 설치.png&quot; data-origin-width=&quot;621&quot; data-origin-height=&quot;454&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;br /&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;br /&gt;&amp;nbsp;그러면,&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;드라이버&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;업데이트 관련된 호환 가능한 하드웨어 장치 목록 몇 가지가 쭉...&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;뜰 텐데요,&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&amp;nbsp;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;그중에서&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;아래처럼, USB 입력 장치를 선택하고 다음을 클릭합니다.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;05.png&quot; data-origin-width=&quot;621&quot; data-origin-height=&quot;454&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/01juu/btsi3qter3w/KOzOnYjIYgLrte9nGukdVk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/01juu/btsi3qter3w/KOzOnYjIYgLrte9nGukdVk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/01juu/btsi3qter3w/KOzOnYjIYgLrte9nGukdVk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F01juu%2Fbtsi3qter3w%2FKOzOnYjIYgLrte9nGukdVk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;621&quot; height=&quot;454&quot; data-filename=&quot;05.png&quot; data-origin-width=&quot;621&quot; data-origin-height=&quot;454&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;그리고 닫기를 누르면,&amp;nbsp; &amp;nbsp;좀 전까지도 작동이 안 되었던 키보드가 작동하는 것을 볼 수 있을 겁니다.&amp;nbsp; (필요한 경우 재부팅)&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;06.png&quot; data-origin-width=&quot;621&quot; data-origin-height=&quot;454&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/76lGL/btsi5tW3AGz/K7RzUN1MOnlcnmhttdumK0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/76lGL/btsi5tW3AGz/K7RzUN1MOnlcnmhttdumK0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/76lGL/btsi5tW3AGz/K7RzUN1MOnlcnmhttdumK0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F76lGL%2Fbtsi5tW3AGz%2FK7RzUN1MOnlcnmhttdumK0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;621&quot; height=&quot;454&quot; data-filename=&quot;06.png&quot; data-origin-width=&quot;621&quot; data-origin-height=&quot;454&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;그럼,&amp;nbsp; Zadig 같은 펌웨어 업뎃 툴을 사용하실 때 주의해서 사용하세요~&amp;nbsp; ^^;;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>PC-SW 관련</category>
      <category>AVRISP mkII 펌웨어 업뎃</category>
      <category>HID 키보드 인식 실패</category>
      <category>Keyboard 키보드 먹통</category>
      <category>Zadig 2.8 다운로드 download</category>
      <category>zadig keyboard 인식</category>
      <category>Zadig 펌웨어 업뎃시 주의!</category>
      <category>자디그 Zadig 키보드 펌웨어 업뎃 실수</category>
      <category>키보드 펌웨어 업뎃 실수</category>
      <author>엑소더스팩토리</author>
      <guid isPermaLink="true">https://rasino.tistory.com/363</guid>
      <comments>https://rasino.tistory.com/363#entry363comment</comments>
      <pubDate>Thu, 8 Jun 2023 12:13:46 +0900</pubDate>
    </item>
  </channel>
</rss>