VS Code와 PlatformIO를 사용한 ESP32: LittleFS 파일 시스템에 파일 업로드
VS Code와 PlatformIO IDE 확장을 사용하여 ESP32 LittleFS 파일 시스템에 파일을 업로드하는 방법을 알아보세요. ESP32와 함께 파일 시스템을 사용하면 Arduino 스케치 내부에 모든 것을 작성하지 않고도 .txt, HTML, CSS 및 JavaScript 파일을 저장하여 웹 서버를 빌드하는 데 유용할 수 있습니다.
VS Code 및 PlatformIO를 사용한 ESP32: LittleFS 파일 시스템에 파일 업로드
Arduino IDE를 사용하는 경우 대신 이 튜토리얼을 따르세요. Arduino IDE 2: ESP32 LittleFS 업로더 설치(파일 시스템에 파일 업로드)
LittleFS 소개
LittleFS는 마이크로컨트롤러를 위해 만들어진 가벼운 파일 시스템으로, 컴퓨터의 표준 파일 시스템에서처럼 플래시 메모리에 액세스할 수 있지만 더 간단하고 제한적입니다. 파일을 읽고, 쓰고, 닫고, 삭제할 수 있습니다. ESP32 보드와 함께 LittleFS를 사용하면 다음과 같은 데 유용합니다.
- 설정이 포함된 구성 파일 만들기;
- 데이터를 영구적으로 저장;
- microSD 카드를 사용하는 대신 소량의 데이터를 저장하기 위한 파일을 만듭니다.
- 웹 서버를 빌드하기 위해 HTML, CSS 및 JavaScript 파일을 저장합니다.
- 이미지, 그림 및 아이콘을 저장합니다.
- 그리고 훨씬 더 많은 것을 제공합니다.
ESP32 LittleFS에 파일 업로드
ESP32 파일 시스템에 업로드하려는 파일은 PlaformIO의 src 폴더와 같은 수준의 data라는 폴더에 있어야 합니다. 모든 것이 어떻게 작동하는지 이해하기 위해 임의의 텍스트가 있는 .txt 파일을 업로드합니다. 다른 파일 유형을 업로드할 수 있습니다.
VS Code + PlatformIO IDE에 익숙하지 않은 경우 먼저 다음 자습서를 따르세요.
ESP32 및 ESP8266용 VS Code 및 PlatformIO IDE 시작하기
LittleFS를 기본 파일 시스템으로 사용
SPIFFS는 현재 더 이상 사용되지 않으며 향후 ESP32 코어 릴리스에서 제거될 수 있습니다. 대신 LittleFS를 사용하는 것이 좋습니다. LittleFS는 활발하게 개발 중이며 디렉터리를 지원하고 대부분의 작업에서 몇 배 더 빠릅니다. 이 자습서에서는 LittleFS를 사용합니다.
VS Code + PlatformIO에서 파일을 업로드할 때 SPIFFS(기본값) 대신 LittleFS 파일 시스템을 사용하도록 지정해야 하므로 ESP32 platformio.ini 구성 파일에 다음 줄을 추가해야 합니다.
board_build.filesystem = littlefs
LittleFS를 기본 파일 시스템으로 사용 ESP32 VS Code + PlatformIO
데이터 폴더 만들기
프로젝트 폴더 내에 data라는 폴더를 만듭니다. src 폴더와 같은 수준에 있어야 합니다. VS Code에서 이 작업을 수행할 수 있습니다.
마우스로 작업 중인 프로젝트 폴더를 선택합니다. 새 폴더 아이콘을 클릭하여 새 폴더를 만듭니다.
이 새 폴더는 data라고 해야 합니다. 그렇지 않으면 작동하지 않습니다.
데이터 폴더 만들기 VS Code PlatformIO ESP8266
그런 다음 새로 만든 데이터 폴더를 선택하고 새 파일 아이콘을 클릭하여 업로드하려는 파일을 만듭니다. 이 예에서는 text.txt라는 파일을 만듭니다. 예를 들어 .html, .css 또는 .js 파일과 같은 다른 파일 유형을 만들고 업로드할 수 있습니다.
PlatformIO ESP32를 사용하여 VS Code의 data 폴더 아래에 파일을 만듭니다.
.txt 파일 안에 임의의 텍스트를 씁니다.
data 폴더는 프로젝트 폴더 아래에 있어야 하고 업로드하려는 파일은 data 폴더 안에 있어야 합니다. 그렇지 않으면 작동하지 않습니다.
텍스트 파일 VS Code PlatformIO ESP32 만들기
파일 시스템 이미지 업로드
data 폴더 아래에 업로드하려는 파일을 만들고 저장한 후 다음 단계를 따르세요.
- 왼쪽 사이드바에서 PIO 아이콘을 클릭합니다. 프로젝트 작업이 열립니다.
- esp32doit-devkit-v1을 선택합니다(사용하는 보드에 따라 다를 수 있음).
- Platform 메뉴를 확장합니다.
- Build Filesystem Image를 선택합니다.
- 마지막으로 Upload Filesystem Image를 클릭합니다.
Upload Filesystem Image VS Code PlatformIO ESP32
중요: 파일 시스템 이미지를 성공적으로 업로드하려면 보드와의 모든 직렬 연결(직렬 모니터)을 닫아야 합니다.
잠시 후 성공 메시지가 표시됩니다.
파일 시스템 이미지 업로드 ESP32 VS Code PlatformIO 성공 메시지
문제 해결
다음은 일반적인 실수입니다.
포트 "COMX"를 열 수 없습니다. 액세스가 거부되었습니다.
파일 시스템 이미지 업로드 ESP32 VS Code PlatformIO 액세스 거부 오류 ESP8266
이 오류는 VS Code 또는 다른 프로그램에서 보드와 직렬 연결이 열려 있음을 의미합니다. 보드 직렬 포트를 사용하고 있을 수 있는 모든 프로그램을 닫고 VS Code에서 모든 직렬 연결을 닫았는지 확인합니다(터미널 콘솔에서 휴지통 아이콘을 클릭).
VS Code PlatformIO 터미널 창 닫기
테스트
이제 파일이 실제로 ESP32 LittleFS 파일 시스템에 저장되었는지 확인해 보겠습니다. 다음 코드를 main.cpp 파일에 복사하여 보드에 업로드합니다.
/*********
Rui Santos & Sara Santos - Random Nerd Tutorials
Complete project details at https://RandomNerdTutorials.com/esp32-vs-code-platformio-littlefs/
*********/
#include <Arduino.h>
#include "LittleFS.h"
void setup() {
Serial.begin(9600);
if(!LittleFS.begin(true)){
Serial.println("An Error has occurred while mounting LittleFS");
return;
}
File file = LittleFS.open("/text.txt");
if(!file){
Serial.println("Failed to open file for reading");
return;
}
Serial.println("File Content:");
while(file.available()){
Serial.write(file.read());
}
file.close();
}
void loop() {
}
파일 이름에 따라 다음 줄을 변경해야 할 수도 있습니다.
파일 파일 = LittleFS.open("/text.txt");
직렬 모니터를 열면 파일의 내용이 인쇄됩니다.
파일 콘텐츠 읽기 LittleFS ESP8266 VS Code PlatformIO
VS Code + PlatformIO를 사용하여 ESP32 파일 시스템(LittleFS)에 파일을 성공적으로 업로드했습니다.
마무리
이 튜토리얼에서는 VS Code + PlatformIO를 사용하여 ESP32 LittleFS 파일 시스템(LittleFS)에 파일을 업로드하는 방법을 알아보았습니다. 빠르고 쉽습니다.
이는 ESP32 보드로 웹 서버 프로젝트를 빌드하기 위해 HTML, CSS 및 JavaScript 파일을 업로드하는 데 유용할 수 있습니다. SPIFFS 파일 시스템을 사용하는 것을 선호한다면 대신 이 튜토리얼을 확인할 수 있습니다.
ESP8266에 대한 유사한 튜토리얼이 있습니다. VS Code 및 PlatformIO를 사용한 ESP8266 NodeMCU: 파일 시스템에 파일 업로드(LittleFS) 다음 리소스를 통해 ESP32에 대해 자세히 알아보세요.
Arduino IDE로 ESP32 배우기(eBook)
Raspberry Pi, ESP32 및 ESP8266을 사용한 SMART HOME eBook
ESP32 및 ESP8266으로 웹 서버 빌드 eBook
무료 ESP32 가이드 및 튜토리얼
여기까지 고생하셨습니다. 읽어주셔서 감사합니다.
배움을 멈추지 마세요. 어떤 경우에도 포기하지 마세요.
감정에 따르지 말고 규율과 루틴을 따르세요.
'ESP32' 카테고리의 다른 글
ESP32 74HC595 4자리 7세그먼트 디스플레이 (2) | 2024.11.08 |
---|---|
ESP32-wroom-32 high resolution pinout and specs (2) | 2024.11.08 |
1.69inch LCD Display Module, 240×280 (2) | 2024.11.06 |
ds18b20 온도 센서 여러 개 스캔 주소 얻기 (3) | 2024.11.04 |
ESP32 LittleFS 업로더 설치(파일 시스템에 파일 업로드) (2) | 2024.11.03 |
ESP AT 펌웨어 다운로드 Guide (2) | 2024.10.29 |
ESP-AT 하드웨어 연결 (2) | 2024.10.29 |
ESP-AT 기술 선택 (6) | 2024.10.28 |
더욱 좋은 정보를 제공하겠습니다.~ ^^