Articles

알아야 할 모든 것에 대한 아두이노 CodeBlog Postcircuito teamMarch11,2018 년

출시 이후의 아두이노의 오픈 소스 플랫폼,브랜드는 자신을 설립 센터에서의 넓은 오픈 소스 커뮤니티입니다. Arduino 생태계는 하드웨어와 소프트웨어의 다양한 조합으로 구성되어 있습니다. 의 다양성을 아두이노와의 간단한 인터페이스는 주요한 선택의 넓은 범위에 대한 사용자 주변에서 세계 애호가,디자이너,그리고 아티스트가 제품의 프로토타입을 제작할 수 있습니다.

Arduino 보드는 USB 를 통해 컴퓨터에 연결되어 ARDUINO 개발 환경(IDE)과 연결됩니다. 사용자는 씁니다 Arduino 코드 IDE 에서,그 후 업로드 마이크로컨트롤러는 코드를 실행,상호 작용 입력 및 출력과 같은 센서,모터,조명입니다.

초보자와 전문가 모두 풍부한 무료 자원과 자료에 액세스하여이를 지원합니다. 사용자는 자신의 보드를 설정하는 방법 또는 아두 이노에 코딩하는 방법에 대한 정보를 조회 할 수 있습니다. 아두 이노 뒤에 오픈 소스는 신규 및 숙련 된 사용자에게 특히 친절했다. 온라인에서 사용할 수있는 수천 개의 Arduino 코드 예제가 있습니다. 이 게시물에서는 Arduino 에 대한 몇 가지 기본 코딩 원칙을 살펴 보겠습니다.

계획이 당신의 다음 아두이노는 프로젝트>>

아두이노코딩 환경 및 기본 도구

어떤 언어인 아두이노?

Arduino 코드는 나중에 언급 할 특별한 메소드와 함수를 추가하여 C++로 작성됩니다. C++는 사람이 읽을 수있는 프로그래밍 언어입니다. ‘스케치'(Arduino 코드 파일에 주어진 이름)를 만들면 기계어로 처리되고 컴파일됩니다.

Arduino IDE

ARDUINO INTEGRATED Development Environment(IDE)는 Arduino 프로그래밍에 사용되는 주요 텍스트 편집 프로그램입니다. 그것은 당신이 프로그래밍 할 보드에 업로드하기 전에 코드를 입력 할 곳입니다. 아두 이노 코드는 스케치라고합니다.

참고:Arduino IDE 의 최신 버전을 사용하는 것이 중요합니다. 수시로 여기에서 업데이트를 확인하십시오.

Arduino 코드 예제

보시다시피 IDE 는 미니멀리스트 디자인을 가지고 있습니다. 메뉴 표시 줄에는 5 개의 제목 만 있으며 밑에는 일련의 단추가있어 스케치를 확인하고 업로드 할 수 있습니다. 본질적으로 IDE 는 스케치를 Arduino 가 이해할 수있는 코드로 변환하고 컴파일합니다. Arduino 코드가 컴파일되면 보드의 메모리에 업로드됩니다.

모든 사용자가 컴파일을 시작하기 위해 그들의 스케치가 버튼을 눌러(a guide to 이 아래에서 찾을 수 있음).

Arduino 코드에 오류가있는 경우 사용자에게 변경 사항을 알리는 경고 메시지가 표시됩니다. 대부분의 신규 사용자는 Arduino 의 엄격한 구문 요구 사항으로 인해 컴파일에 어려움을 겪는 경우가 많습니다. Arduino 를 사용할 때 구두점에 실수를하면 코드가 컴파일되지 않고 오류 메시지가 표시됩니다.

시리얼 모니터링하고 시리얼 플로터

Arduino 시리얼 모니터를 열 수 있에 의해 돋보기를 클릭하에서 아이콘을 오른쪽 상단의 IDE 나에서 도구입니다. 직렬 모니터는 주로 컴퓨터를 사용하여 Arduino 보드와 상호 작용하는 데 사용되며 실시간 모니터링 및 디버깅을위한 훌륭한 도구입니다. 모니터를 사용하려면 직렬 클래스를 사용해야합니다.

이 코드를 다운로드에서 circuito.io 는 테스트는 섹션을 테스트할 수 있도록 도와줍 각 구성 요소를 사용하여 시리얼 모니터에서 볼 수 있는 아래 스크린샷:

Arduino 시리얼 플로터는 다른 구성 요소의 Arduino IDE 할 수있는 당신을 생성하는 실시간 그래프의 직렬 데이터입니다. 직렬 플로터를 사용하면 시각적 디스플레이를 통해 데이터를 훨씬 쉽게 분석 할 수 있습니다. 그래프,음수 값 그래프를 만들고 파형 분석을 수행할 수 있습니다.

디버깅 Arduino 코드 및 하드웨어

과 달리 다른 소프트웨어 프로그래밍 플랫폼,아두이노가 없는 온보드 숙박 디버거. 사용자는 타사 소프트웨어를 사용하거나 직렬 모니터를 활용하여 모니터링 및 디버깅을 위해 Arduino 의 활성 프로세스를 인쇄 할 수 있습니다.

직렬 클래스를 사용하여 직렬 모니터에 인쇄하여 변수의 주석 및 값을 디버깅 할 수 있습니다. 대부분의 Arduino 모델에서 이것은 USB 포트에 연결된 직렬 핀 0 과 1 을 사용하는 것입니다.

코드 구조

라이브러리의

에 Arduino,같은 많은 다른 주요 프로그래밍 플랫폼,내장되어 있습니다-서 라이브러리를 제공하는 기본 기능을 제공합니다. 또한 다른 라이브러리를 가져 와서 Arduino 보드 기능 및 기능을 확장 할 수 있습니다. 이 라이브러리는 대략으로 나누어 라이브러리와 상호 작용하는 특정 구성 요소 또는 그 구현하는 새로운 기능이 제공됩니다.

새 라이브러리를 가져 오려면 Sketch>가져 오기 라이브러리

로 이동해야합니다.ino 파일에서는’#include’를 사용하여 외부 라이브러리를 포함해야합니다. 격리 된 스케치에서 사용할 사용자 정의 라이브러리를 만들 수도 있습니다.

핀 정의

Arduino 핀을 사용하려면 사용중인 핀과 해당 기능을 정의해야합니다. 사용 된 핀을 정의하는 편리한 방법은 다음과 같습니다.

‘#define pinName pinNumber’.

기능은 입력 또는 출력 및를 사용하여 정의된 pinMode()메소드를 설정 섹션입니다.

선언

변수

Arduino 를 사용할 때마다 나중에 사용할 전역 변수와 인스턴스를 선언해야합니다. 간단히 말해서,변수를 사용하면 나중에 사용할 값의 이름을 지정하고 저장할 수 있습니다. 예를 들어 나중에 사용하기 위해 센서에서 획득 한 데이터를 저장합니다. 변수를 선언하려면 유형,이름 및 초기 값을 정의하면됩니다.

전역 변수를 선언하는 것이 절대적인 필요성은 아니라고 언급 할 가치가 있습니다. 그러나 선 아래로 값을 더 쉽게 활용할 수 있도록 변수를 선언하는 것이 좋습니다.

인스턴스

에서 소프트웨어 프로그래밍 등이션의 기능과 변수를 유지되는 한 장소에서 함께합니다. 각 클래스에는 클래스의 인스턴스를 만드는 데 사용되는 생성자로 알려진 특수 함수가 있습니다. 클래스의 함수를 사용하기 위해,우리는 그것에 대한 인스턴스를 선언해야합니다.모든 Arduino 스케치에는 설정 기능이 있어야합니다. 이 함수는 부팅시 Arduino 의 초기 상태를 정의하고 한 번만 실행됩니다.

여기서 우리는 다음을 정의합니다:

  1. 핀 기능을 사용하여 pinMode 기능
  2. 초기 상태의 핀
  3. 초기화 클래스가
  4. 변수를 초기화
  5. 코 로직

Loop()

루프 기능도한 아두이노 스케치하고 실행하면 설치 프로그램()이 완료됩니다. 그것은 주요 기능이며 그 이름이 암시하는 것처럼 반복해서 반복해서 실행됩니다. 루프는 회로의 주요 논리를 설명합니다.’void’라는 용어를 사용하면 함수가 어떤 값도 반환하지 않는다는 것을 의미합니다.

하는 방법 프로그램으로 아두이노

기본 코드가 아두이노는 논리입니다”if-then”구조와 분할될 수 있습으로 4 블록

Setup-일반적으로 기록에 설정 섹션의 아두이노 코드를 수행해야 할 것들만 수행되면,같은 센서 교정이 가능합니다.

입력-루프의 시작 부분에서 입력을 읽습니다. 이 값은 analogread()를 사용하여 ldr 에서 읽는 주변 광과 같은 조건(“if”)으로 사용됩니다.

데이터 조작-이 섹션은 데이터를보다 편리한 형태로 변환하거나 계산을 수행하는 데 사용됩니다. 예를 들어 AnalogRead()는 PWM 에 사용할 0-255 범위에 매핑 할 수있는 0-1023 의 읽기를 제공합니다.(참조하십시오 analogWrite())

출력-이 섹션에서 정의합의 최종 결과는 논리(“다음”)데이터에 따라 계산 이전 단계입니다. LDR 및 PWM 의 예를 살펴보면 주변 광 레벨이 특정 임계 값 아래로 내려갈 때만 LED 를 켭니다.

Arduino 코드 라이브러리

라이브러리 구조

라이브러리는 c++(.cpp)코드 파일과 C++(.h)헤더 파일.는.h 파일은 라이브러리의 구조를 설명하고 모든 변수와 함수를 선언합니다.는.cpp 파일은 함수 구현을 보유합니다.

라이브러리 가져오기

첫 번째 것은 당신이해야 할 찾을 수 있는 라이브러리를 사용하려는 많은 라이브러리를 온라인으로 사용할 수 있습니다. 다운로드 한 후 그것을 컴퓨터를 열고 아두이노 IDE 클릭 스케치>>라이브러리 관리. 그런 다음 IDE 로 가져올 라이브러리를 선택할 수 있습니다. 프로세스가 완료되면 라이브러리는 스케치 메뉴에서 사용할 수 있습니다.에 의해 제공된 코드에서

circuito.io 앞에서 언급 한 것처럼 외부 라이브러리를 추가하는 대신 펌웨어 폴더를 제공합니다. 이 경우 IDE 는#include 를 사용할 때이를 찾는 방법을 알고 있습니다.

소프트웨어에서

하는 많은있다고 말할 수 있의 아두이노의 소프트웨어 기능,그러나 그것을 기억하는 것이 중요합 플랫폼은 모두 구성되어 소프트웨어 및 하드웨어입니다. 두 사람은 복잡한 운영 체제를 실행하기 위해 협력하여 작동합니다.

코드→컴파일→업로드→Run

의 핵심에는 아두이노는 기능을 컴파일하고 코드를 실행합니다.

IDE 에 코드를 작성한 후 Arduino 에 업로드해야합니다. 업로드 버튼(오른쪽을 향한 화살표 아이콘)을 클릭하면 코드를 컴파일하고 컴파일을 통과 한 경우 업로드합니다. 업로드가 완료되면 프로그램이 자동으로 실행되기 시작합니다.

이 단계를 단계별로 수행 할 수도 있습니다.

  1. 먼저 코드를 컴파일하십시오. 이 작업을 수행하는 것은 단순히 확인 아이콘을 클릭합(거나 클릭하여 스케치에>확인/에서 컴파일 메뉴 바입니다.

보시다시피 체크 아이콘은 메뉴 섹션의”파일”태그 아래 왼쪽 상단에 있습니다.이 작업을 수행하면 Arduino 가 컴파일되기 시작합니다. 완료되면 다음과 같이 보이는 완료 메시지가 표시됩니다:보시다시피 페이지 하단의 녹색 선은”컴파일 완료”라고 알려줍니다. 코드를 실행하지 못하면 동일한 섹션에 알림이 표시되고 문제가되는 코드는 편집을 위해 강조 표시됩니다.

일단 스케치를 컴파일하면 업로드 할 시간입니다.

  1. Arduino 가 현재 연결되어있는 직렬 포트를 선택하십시오. 이 도구를 클릭>직렬 포트에서 메뉴를 지정하도록 선택한 시리얼 포트(이전에 표시된 대로 위). 그런 다음 컴파일된 스케치를 업로드할 수 있습니다.
  2. 스케치를 업로드하려면 틱 옆에있는 업로드 아이콘을 클릭하십시오. 또는 메뉴를 이동하여 파일>업로드를 클릭 할 수 있습니다. 귀하의 Arduino LED 는 데이터가 전송되면 깜박입니다.

완료되면 Arduino 가 업로드를 완료했음을 알리는 완료 메시지로 인사드립니다.

IDE 설정

Arduino 보드를 컴퓨터에 연결하려면 USB 케이블이 필요합니다. Arduino UNO 를 사용할 때 USB 는 프로그램의 데이터를 보드로 직접 전송합니다. USB 케이블은 arduino 에 전원을 공급하는 데 사용됩니다. 외부 전원 소스를 통해 Arduino 를 실행할 수도 있습니다.코드를 업로드하기 전에 구성해야 할 몇 가지 설정이 있습니다.

당신의 보드를 선택-당신은 당신이 사용하려고하는 아두 이노 보드를 지정해야합니다. 이 도구를 클릭>>습니다.

프로세서를 선택하십시오-가지고있는 프로세서 모델을 지정해야하는 특정 보드(예:Arduino pro-mini)가 있습니다. 에서 도구를>>모델을 선택합니다.

선택하신 포트를 선택하는 포트의 보드에 연결,도구>>X Arduino(이것은 아두이노의 serial port).

를 설치하는 방법 Non-Native 보드(예:NodeMCU)

일부 널 모델되지 않은 사전에 설치된 아두이노 IDE 따라서 당신은 필요 설치하기 전에 업로드할 수 있는 코드입니다.

NodeMCU 와 같은 비 네이티브 보드를 설치하려면 다음을 수행해야합니다:

  1. 도구를 클릭>>판 관리자
  2. 검색에 대한 보드를 추가할 검색 표시줄에서하고”설치”를 클릭합니다.

일부 보드는 보드 관리자를 통해 찾을 수 없습니다. 이 경우 수동으로 추가해야합니다. 이를 위해서는:

  1. 클릭 파일을>환경 설정
  2. 에 추가 보드 Manager 필드를 붙여 URL 을 설치 패키지의습니다. 예를 들어 nodeMCU 의 경우 다음 URL 을 추가합니다: http://arduino.esp8266.com/stable/package_esp8266com_index.json
  3. 확인을 클릭
  4. 도구로 이동하여>>판 관리자
  5. 검색에 대한 보드를 추가할 검색 표시줄에서하고”설치”를 클릭합니다.

이 단계를 완료하면 도구 아래의 보드 목록에 설치된 보드가 표시됩니다.

참고:프로세스는 다른 보드에 대해 약간 다를 수 있습니다.

Arduino:매우 다양한 플랫폼

Arduino 는 단순한 마이크로 컨트롤러 그 이상입니다. 광범위한 IDE 와 다양한 하드웨어 구성을 갖춘 Arduino 는 진정으로 다양한 플랫폼입니다. 다양한 라이브러리와 직관적 인 디자인으로 인해 새로운 사용자와 숙련 된 제작자 모두에게 마음에 듭니다. 하드웨어와 소프트웨어를 모두 시작하는 데 도움이되는 수천 개의 커뮤니티 리소스가 있습니다.

기술을 발전시키면서 디버깅이 필요한 문제에 직면 할 수 있으며 이는 Arduino IDE 의 약점입니다. 운 좋게도 Arduino 하드웨어 및 소프트웨어를 디버깅하는 몇 가지 도구와 방법이 있습니다. 다음 기사에서는 Arduino 를 디버깅하는 방법(및 Arduino 코드를 테스트하는 방법)과 시뮬레이터 및 에뮬레이터를 사용하는 방법을 살펴 보겠습니다.