PlatformIO IDE 확장과 함께 VS Code(Microsoft Visual Studio Code)를 사용하여 ESP32 및 ESP8266 NodeMCU 보드를 프로그래밍하는 방법을 배우십시오. Windows, Mac OS X 또는 Ubuntu 운영 체제에 소프트웨어를 설치하는 방법을 다룹니다.
Arduino IDE는 소규모 애플리케이션에 적합합니다. 그러나 200줄 이상의 코드, 여러 파일, 자동 완성 및 오류 검사와 같은 기타 고급 기능이 있는 고급 프로젝트의 경우 PlatformIO IDE 확장이 있는 VS Code가 최상의 대안입니다.
이 자습서에서는 다음 주제를 다룹니다.
- VS Code(Visual Studio Code) 설치:
- VS Code에 PlatformIO IDE 확장 설치
- Visual Studio 빠른 인터페이스 개요
- PlatformIO IDE 개요
- PlatformIO IDE를 사용하여 코드 업로드: ESP32/ESP8266
- 직렬 모니터 전송 속도 변경 – PlatformIO IDE
- PlatformIO IDE에 라이브러리 설치
A) Windows에 VS Code 설치(Visual Studio Code)
https://code.visualstudio.com/으로 이동 하여 운영 체제(Windows)에 맞는 안정적인 빌드를 다운로드합니다.
설치 마법사를 클릭하여 설치를 시작하고 모든 단계에 따라 설치를 완료하십시오. 계약에 동의하고 다음 버튼을 누릅니다.
다음과 같은 옵션을 선택하고 클릭 다음 .
보도 설치 버튼을 누릅니다.
마지막으로 Finish 를 눌러 설치를 마칩니다.
VS Code를 열면 최신 버전의 릴리스 정보가 포함된 시작 탭이 표시됩니다.
그게 다야 Visual Studio Code가 성공적으로 설치되었습니다.
윈도우에 파이썬 설치하기
PlatformIO IDE로 ESP32 및 ESP8266 보드를 프로그래밍하려면 컴퓨터에 Python 3.5 이상이 설치되어 있어야 합니다. 우리는 파이썬 3.8.5를 사용하고 있습니다.
python.org/download로 이동하여 Python 3.8.5 또는 최신 버전을 다운로드합니다.
다운로드한 파일을 열어 Python 설치 마법사를 시작합니다.
다음 창이 나타납니다.
중요: PATH에 Python 3.8 추가 옵션을 선택했는지 확인하십시오. 그런 다음 지금 설치 버튼을 클릭할 수 있습니다 .
설치가 성공하면 다음 메시지가 표시됩니다.
닫기 버튼을 클릭할 수 있습니다 .
이제 이 섹션으로 이동하여 PlatformIO IDE 확장을 설치합니다 .
나) Mac OS X에 VS Code 설치(Visual Studio Code)
https://code.visualstudio.com/으로 이동 하여 운영 체제(Mac OS X)에 맞는 안정적인 빌드를 다운로드합니다.
Visual Studio Code 애플리케이션 파일을 다운로드하면 다음 메시지가 표시됩니다. " 열기 " 버튼을 누릅니다.
또는 다운로드 폴더를 열고 Visual Studio Code를 엽니다.
그런 다음 최신 버전의 릴리스 정보가 포함된 시작 탭이 표시됩니다.
그게 다야 Visual Studio Code가 성공적으로 설치되었습니다.
Mac OS X에 Python 설치하기
PlatformIO IDE로 ESP32 및 ESP8266 보드를 프로그래밍하려면 컴퓨터에 Python 3.5 이상이 설치되어 있어야 합니다. 우리는 파이썬 3.8.5를 사용하고 있습니다.
Python을 설치하려면 Homebrew를 사용하겠습니다. brew 명령을 사용할 수 없는 경우 다음 명령을 입력합니다.
$ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
그런 다음 brew 명령을 실행하여 Python 3.X를 설치합니다.
$ brew install python3
이제 이 섹션으로 이동하여 PlatformIO IDE 확장을 설치합니다 .
다) Linux Ubuntu에 VS Code 설치(Visual Studio Code)
https://code.visualstudio.com/으로 이동 하여 운영 체제(Linux Ubuntu)에 대한 안정적인 빌드를 다운로드합니다.
설치 파일을 저장합니다.
설치하려면 터미널 창을 열고 다운로드 폴더로 이동한 다음 다음 명령을 실행하여 VS Code를 설치합니다.
$ cd Downloads ~/Downloads $ sudo apt install ./code_1.49.1-1600299189_amd64.deb
설치가 완료되면 애플리케이션 메뉴에서 VS Code를 사용할 수 있습니다.
VS Code를 열면 최신 버전의 릴리스 정보가 포함된 시작 탭이 표시됩니다.
그게 다야 Visual Studio Code가 성공적으로 설치되었습니다.
리눅스 우분투에 파이썬 설치하기
PlatformIO IDE로 ESP32 및 ESP8266 보드를 프로그래밍하려면 컴퓨터에 Python 3.5 이상이 설치되어 있어야 합니다. 우리는 파이썬 3.8을 사용하고 있습니다.
터미널 창을 열고 Python 3이 이미 설치되어 있는지 확인합니다.
$ python3 --version python 3.8.2
앞의 그림에서 볼 수 있듯이 Python 3.8.2가 이미 설치되어 있습니다.
Python 3.8.X가 설치되어 있지 않으면 다음 명령을 실행하여 설치합니다.
$ sudo apt install python3
Python이 이미 설치되어 있는지 여부에 관계없이 Python 유틸리티를 설치하려면 다음 명령을 실행해야 합니다.
$ sudo apt install python3-distutils
이제 이 섹션으로 이동하여 PlatformIO IDE 확장을 설치합니다 .
VS Code에 PlatformIO IDE 확장 설치
PlatformIO IDE 확장과 함께 VS Code를 사용하여 ESP32 및 ESP8266 보드 를 프로그래밍할 수 있습니다. PlatformIO IDE 확장을 설치하려면 다음 단계를 따르십시오.
VS 코드 열기:
- 온 클릭 확장 아이콘을 누르거나 Ctrl 키 +의 시프트 + X 열기 위해 확장 탭을
- “ PlatformIO IDE ” 검색
- 첫 번째 옵션을 선택하십시오
- 마지막으로 설치 버튼을 클릭 합니다(참고: 설치에는 몇 분이 소요될 수 있음).
설치 후 아래와 같이 PlatformIO IDE 확장이 활성화되어 있는지 확인하십시오.
그런 다음 PlatformIO 아이콘이 왼쪽 사이드바에 표시되고 PlatformIO 홈으로 리디렉션 되는 홈 아이콘이 표시됩니다.
즉, PlatformIO IDE 확장이 VS Code에 성공적으로 추가되었습니다.
하단에 PIO 아이콘과 빠른 도구 가 표시되지 않는 경우 변경 사항을 적용하려면 VS 코드를 다시 시작해야 할 수 있습니다.
어느 쪽이든 계속하기 전에 VS Code를 다시 시작하는 것이 좋습니다.
VS Code 빠른 인터페이스 개요
VS 코드를 엽니다. 다음 인쇄 화면은 왼쪽 사이드바에 있는 각 아이콘의 의미와 해당 바로 가기를 보여줍니다.
- 파일 탐색기
- 파일 전체에서 검색
- 소스 코드 관리(요점 사용)
- 코드 실행 및 디버그
- 확장 프로그램 관리
또한 Ctrl + Shift + P를 누르 거나 보기 > 명령 팔레트… 로 이동 하여 사용 가능한 모든 명령을 표시할 수 있습니다. 명령을 검색할 때 명령의 위치나 바로 가기를 모르는 경우 명령 팔레트로 이동하여 검색하기만 하면 됩니다.
하단에는 PlatformIO 명령이 있는 파란색 막대가 있습니다.
아이콘이 왼쪽에서 오른쪽으로 수행하는 작업은 다음과 같습니다.
- 플랫폼IO 홈
- 빌드/컴파일
- 업로드
- 깨끗한
- 직렬 모니터
- 새로운 터미널
아이콘 위에 마우스를 가져가면 각 아이콘이 수행하는 작업이 표시됩니다.
또는 PIO 아이콘을 클릭하여 모든 PlatformIO 작업을 볼 수도 있습니다.
아이콘을 클릭했을 때 작업이 IDE에 표시되지 않으면 상단의 점 3개 아이콘을 클릭하고 아래와 같이 PlatformIO 작업을 활성화해야 할 수 있습니다.
PlatformIO IDE 개요
PlatformIO가 VS 코드에서 작동하는 방식에 대한 개요를 얻기 위해 ESP32 또는 ESP8266 보드에 "깜박이는 LED" 스케치를 생성, 저장 및 업로드하는 방법을 보여줍니다.
새 프로젝트 만들기
VS Code에서 PlatfomIO 홈 아이콘을 클릭 합니다. + 새 프로젝트 를 클릭하여 새 프로젝트 를 시작합니다.
프로젝트에 이름을 지정하고(예: Blink_LED ) 사용 중인 보드를 선택합니다. 우리의 경우 DOIT ESP32 DEVKIT V1 을 사용하고 있습니다. 아두이노 코어를 사용하기 위해서는 프레임워크가 " 아두이노 " 여야 합니다 .
프로젝트를 저장할 기본 위치 또는 사용자 지정 위치를 선택할 수 있습니다.
기본 위치는 Documents > PlatformIO > Projects 경로 입니다. 이 테스트에서는 기본 위치를 사용할 수 있습니다. 마지막으로 "마침"을 클릭합니다.
이 예에서는 DOIT ESP32 DEVKIT 보드를 사용할 것 입니다. ESP8266 NodeMCU 보드를 사용하는 경우 프로세스가 매우 유사하므로 ESP8266 보드를 선택하기만 하면 됩니다.
Blink_LED 프로젝트는 Explorer 탭에서 액세스할 수 있어야 합니다.
VS Code와 PlatformIO는 표준 .ino 프로젝트 와 다른 폴더 구조를 가지고 있습니다 . 탐색기 탭을 클릭하면 프로젝트 폴더 아래에 생성된 모든 파일이 표시됩니다. 작업할 파일이 많아 보일 수 있습니다. 그러나 걱정하지 마십시오. 일반적으로 이러한 파일 중 하나 또는 두 개만 처리하면 됩니다.
경고: 폴더와 platformio.ini 파일을 삭제, 수정 또는 이동하면 안 됩니다. 그렇지 않으면 더 이상 PlatformIO를 사용하여 프로젝트를 컴파일할 수 없습니다.
platformio.ini 파일
platformio.ini 파일은 프로젝트에 대한 PlatformIO 구성 파일입니다. 프로젝트의 플랫폼, 보드 및 프레임워크를 보여줍니다. 포함할 라이브러리, 업로드 옵션, 직렬 모니터 전송 속도 및 기타 구성 변경과 같은 다른 구성을 추가할 수도 있습니다.
- platform : 보드에서 사용하는 SoC에 해당합니다.
- board : 사용중인 개발보드.
- framework : 프로젝트 코드를 실행할 소프트웨어 환경입니다.
ESP32 및 ESP8266을 사용하여 직렬 모니터에서 115200의 전송 속도를 사용하려면 platformio.ini 파일에 다음 줄을 추가하기만 하면 됩니다.
monitor_speed = 115200
그런 다음 Ctrl + S 를 눌러 파일에 대한 변경 사항을 저장했는지 확인하십시오 .
이 파일에는 다음을 사용하여 프로젝트에서 사용할 라이브러리의 식별자를 포함할 수도 있습니다. lib_deps 나중에 살펴보겠지만 지시어입니다.
src 폴더
의 src 폴더는 작업 폴더입니다. src 폴더 아래 에 main.cpp 파일이 있습니다. 코드를 작성하는 곳입니다. 해당 파일을 클릭합니다. Arduino 프로그램의 구조는 다음과 같이 열어야 합니다.설정() 그리고 고리() 기능.
PlatformIO에서 모든 Arduino 스케치는 #include <아두이노.h>.
PlatformIO IDE를 사용하여 코드 업로드: ESP32/ESP8266
다음 코드를 main.cpp 파일에 복사 합니다.
/********* Rui Santos Complete project details at https://RandomNerdTutorials.com/vs-code-platformio-ide-esp32-esp8266-arduino/ *********/ #include <Arduino.h> #define LED 2 void setup() { // put your setup code here, to run once: Serial.begin(115200); pinMode(LED, OUTPUT); } void loop() { // put your main code here, to run repeatedly: digitalWrite(LED, HIGH); Serial.println("LED is on"); delay(1000); digitalWrite(LED, LOW); Serial.println("LED is off"); delay(1000); }
이 코드는 1초마다 온보드 LED를 깜박입니다. ESP32 및 ESP8266 보드와 함께 작동합니다(둘 모두 GPIO 2에 연결된 온보드 LED가 있음).
이 코드를 수동으로 복사하여 IDE의 자동 완성 및 기타 흥미로운 기능이 작동하는지 확인하는 것이 좋습니다. 또한 프로그램 어딘가에 구문 오류가 있으면 컴파일하기 전에도 빨간색으로 밑줄을 긋습니다.
그런 다음 Ctrl + S를 누르 거나 파일 > 저장 으로 이동하여 파일 을 저장합니다.
이제 업로드 아이콘을 클릭하여 코드를 컴파일하고 업로드할 수 있습니다. 또는 PIO 프로젝트 작업 메뉴로 이동하여 업로드를 선택할 수 있습니다.
코드가 성공적으로 업로드되면 다음 메시지가 표시됩니다.
코드를 업로드한 후 ESP32 또는 ESP8266은 1초마다 온보드 LED를 깜박여야 합니다.
이제 직렬 모니터 아이콘을 클릭하면 현재 LED 상태가 인쇄되는 것을 볼 수 있습니다.
참고: 터미널 창이 표시되지 않으면 터미널 > 새 터미널 메뉴로 이동합니다.
COM 포트 감지
PlatformIO는 보드가 연결된 포트를 자동으로 감지합니다. 연결된 장치를 확인하려면 PIO 홈으로 이동 하여 장치 아이콘을 클릭하십시오 .
문제 해결
코드를 업로드하려고 할 때 " Failed to connect to ESP32: Timed out wait for packet header " 오류가 발생 하면 일반적으로 코드를 업로드할 때 보드가 깜박임 모드에 있지 않다는 의미입니다.
이런 일이 발생하면 디버깅 창에 많은 점이 보이기 시작할 때 ESP32 온보드 BOOT 버튼을 눌러야 합니다.
새 코드를 업로드할 때마다 부팅 버튼을 누르지 않으려면 다음 가이드를 따르세요. [해결됨] ESP32에 연결하지 못했습니다: 패킷 헤더를 기다리는 동안 시간이 초과되었습니다.
직렬 모니터 전송 속도 변경 – PlatformIO IDE
PlatformIO에서 사용하는 기본 전송 속도는 9600입니다. 그러나 앞에서 언급한 것처럼 다른 값을 설정할 수도 있습니다. 파일 탐색기의 프로젝트 폴더에서 platformio.ini 파일을 열고 다음 줄을 추가합니다.
monitor_speed = baud_rate
예를 들어:
monitor_speed = 115200
그런 다음 해당 파일을 저장합니다.
PlatformIO IDE에 ESP32/ESP8266 라이브러리 설치
PlatformIO IDE에 라이브러리를 설치해야 하는 경우 다음 절차를 따르십시오.
홈 아이콘을 클릭하여 PlatformIO 홈으로 이동합니다. 왼쪽 사이드바 에서 라이브러리 아이콘을 클릭 합니다.
설치하려는 라이브러리를 검색합니다. 예를 들어 Adafruit_BME280 .
프로젝트에 포함할 라이브러리를 클릭합니다. 그런 다음 프로젝트에 추가 를 클릭 합니다.
라이브러리를 사용하려는 프로젝트를 선택하십시오.
이렇게 하면 다음을 사용하여 라이브러리 식별자가 추가됩니다. 뚜껑_뎁스platformio.ini 파일의 지시문 . 프로젝트의 platformio.ini 파일 을 열면 다음 이미지와 같이 표시되어야 합니다.
또는 라이브러리 창에서 설치 탭 을 선택하고 약간 스크롤하면 라이브러리의 식별자가 표시됩니다. 사용하려는 옵션에 따라 이러한 식별자를 선택할 수 있습니다. 라이브러리 식별자는 빨간색으로 강조 표시됩니다.
그런 다음 프로젝트 의 platformio.ini 파일 로 이동하여 다음 과 같이 라이브러리 식별자를 해당 파일에 붙여넣습니다.
lib_deps = adafruit/Adafruit BME280 Library@^2.1.0
여러 라이브러리가 필요한 경우 이름을 쉼표로 구분하거나 다른 줄에 넣을 수 있습니다. 예를 들어:
lib_deps = arduino-libraries/Arduino_JSON @ 0.1.0 adafruit/Adafruit BME280 Library @ ^2.1.0 adafruit/Adafruit Unified Sensor @ ^1.1.4
PlatformIO는 내장 된 강력한 라이브러리 관리자, 그건 당신이 프로젝트 구성 파일에 프로젝트 당 사용자 종속성을 지정할 수있다 platformio.ini 사용lib_deps. 이것은 구성 파일을 저장하거나 프로젝트를 컴파일할 때 라이브러리와 모든 종속성을 자동으로 다운로드하도록 PlatformIO에 지시합니다.
프로젝트 폴더 열기
PlatformIO에서 기존 프로젝트 폴더를 열려면 VS Code를 열고 PlatformIO 홈으로 이동하여 프로젝트 열기를 클릭합니다 . 파일을 탐색하고 프로젝트 폴더를 선택합니다.
PlatformIO는 프로젝트 폴더 내의 모든 파일을 엽니다.
VS 코드 색상 테마
VS Code를 사용하면 다양한 색상 테마 중에서 선택할 수 있습니다. 관리 아이콘으로 이동하여 색상 테마 를 선택 합니다. 그런 다음 여러 가지 밝은 테마와 어두운 테마 중에서 선택할 수 있습니다.
바로가기 목록
Windows, Mac OS X 또는 Linux용 VS Code 바로 가기의 전체 목록은 다음 링크를 확인하십시오.
마무리
이 자습서에서는 ESP32 및 ESP8266 보드와 함께 작동하도록 Visual Studio Code를 설치하고 준비하는 방법을 배웠습니다. PlatformIO IDE 확장이 있는 VS Code는 특히 대규모 응용 프로그램을 위한 고급 스케치 작업을 할 때 기존 Arduino IDE에 대한 훌륭한 대안입니다.
다음은 Arduino IDE보다 PlatformIO IDE와 함께 VS Code를 사용할 때의 몇 가지 장점입니다.
- 보드가 연결된 COM 포트를 자동으로 감지합니다.
- VS Code IntelliSense: 자동 완성. IntelliSense 코드 완성은 작성하려는 내용을 추측하여 다양한 가능성을 표시하고 함수가 예상할 수 있는 매개 변수에 대한 통찰력을 제공합니다.
- 오류 하이라이트: VS Code + PIO는 컴파일하기 전에 코드의 오류에 밑줄을 긋습니다.
- 여러 개의 열린 탭: 한 번에 여러 개의 코드 탭을 열 수 있습니다.
- 코드의 특정 부분을 숨길 수 있습니다.
- 고급 코드 탐색;
- 그리고 훨씬 더…
ESP32 및 ESP8266 보드용 애플리케이션을 작성하기 위한 고급 IDE를 찾고 있다면 PlatformIO IDE 확장이 있는 VS Code가 훌륭한 옵션입니다.
이 튜토리얼이 유용했기를 바랍니다. ESP32 및 ESP8266이 마음에 들면 다음 리소스를 확인하세요.