Petoi Doc Center
🇹🇭 Thai
🇹🇭 Thai
  • ยินดีต้อนรับสู่ Petoi Doc Center
  • Infrared Remote
    • รีโมทคอนโทรล
  • Mobile App
    • คาลิเบเตอร์และคอนโทรลเลอร์
  • Desktop APP
    • การแนะนำเบื้องต้น
    • ตัวอัปโหลดเฟิร์มแวร์
    • การคาลิเบรทข้อต่อ
    • สกิลคอมโพสเซอร์
  • Arduino IDE
    • อัปโหลด Sketch สำหรับ NyBoard
    • อัปโหลด Sketch สำหรับ BiBoard
    • การคาลิเบรทด้วย Arduino IDE
    • ซีเรียลมอนิเตอร์
  • API
    • 🖇️ซีเรียลโปรโตคอล
    • 🐍คู่มือผู้ใช้ Python SerialMaster
    • 🐛MicroPython คอนโทรลเลอร์
      • การเรียกใช้ MicroPython บน ESP8266
      • ติดตั้ง WebREPL
      • การใช้โปรโตคอล ESP-NOW
    • 🍓การสื่อสารผ่านพอร์ตซีเรียลของ Raspberry Pi
    • 🤖ROS
  • Nyboard
    • NyBoard V1_0
    • NyBoard V1_1
  • BIBOARD
    • คู่มือเริ่มต้นใช้งาน BiBoard ฉบับรวบลัด
    • Demo Applications
      • 1.GPIO port
      • 2.Serial port
      • 3.Analog-digital converter
      • 4.Digital-Analog Converter
      • 5.EEPROM (Electrically Erasable Programmable read only memory)
      • 6.Gyro IMU(MPU6050)
      • 7.Infrared remote control
      • 8.PWM(Pulse Width Modulation)
      • 9.Servo(under construction)
      • 10.Classic Bluetooth serial port SPP
      • 11.Bluetooth low energy (BLE) serial port pass-through
      • 12.File system SPIFFS
      • 13.Add hardware partition configuration option in Arduino IDE
      • 14.Play MP3
      • 15.The usage of Wi-Fi OTA(Over-The-Air)
  • Communication Modules
    • Introduction
    • USB Uploader (CH340C or CH343G)
    • Dual Mode Bluetooth
    • WiFi ESP8266
      • ESP8266 + Python Scripts Implement wireless crowd control
  • Extensible Modules
    • Introduction
    • MU Camera
    • Ultrasonic Sensor
    • Light Sensor
    • Touch Sensor
    • Gesture Sensor
    • PIR Motion Sensor
  • Applications
    • Skill Creation
    • OpenCat Imitation Tutorial
    • Programmable Puppet Character
  • History
    • Upload Sketch For NyBoard (software 1.0)
  • Technical Support
    • 🛠️Supporting Application and Software
    • 🙋‍♂️FAQ(Frequently Asked Questions)
  • Useful Links 🕸
    • 🔭Official Site of Petoi
    • 💿GitHub of OpenCat
    • 🎪PetoiCamp (Forum)
Powered by GitBook
On this page
  • 1. Why use a file system
  • 2. Install the Arduino ESP32 file system uploader
  • 3. Install ESP32 file upload plugin
  • 4. Upload files using the file system uploader
  • 5. Demo of how to use the file system

Was this helpful?

Export as PDF
  1. BIBOARD
  2. Demo Applications

12.File system SPIFFS

ESP32 File System SPIFFS Configuration Guide

Previous11.Bluetooth low energy (BLE) serial port pass-throughNext13.Add hardware partition configuration option in Arduino IDE

Last updated 2 years ago

Was this helpful?

1. Why use a file system

บน BiBoard (ESP32) นอกเหนือจากพื้นที่โปรแกรมปกติและพื้นที่บูตแล้ว เราใช้ระบบไฟล์ในพาร์ติชัน Flash

บทบาทของระบบไฟล์ที่มีพาร์ติชันอิสระมีดังนี้:

  • บันทึกข้อมูลตามที่อยู่ที่ระบุ และจะไม่ถูกลบเนื่องจากการอัปเดตซ้ำ (เช่น ข้อมูลการคาลิเบต ข้อมูลการเดิน

  • ไม่จำเป็นต้องใช้การ์ด SD ภายนอก ช่วยประหยัดทรัพยากรฮาร์ดแวร์

ระบบไฟล์ทั่วไป ได้แก่ Windows NTFS, exFAT และระบบไฟล์บันทึกของ Linux Ext และ XFS แต่ในเขตข้อมูลที่ฝังตัว ระบบไฟล์ขนาดใหญ่เหล่านี้มีขนาดใหญ่เกินไป เราใช้ SPIFFS (ระบบไฟล์แฟลช SPI) ที่มีน้ำหนักเบา ซึ่งเป็นระบบไฟล์แบบฝังสำหรับอุปกรณ์แฟลช SPI NOR และฟังก์ชันสนับสนุน เช่น การปรับระดับการสึกหรอและการตรวจสอบความสอดคล้องกันของระบบไฟล์

เนื่องจากน้ำหนักเบา คุณลักษณะที่ใหญ่ที่สุดของ SPIFFS คือไม่รองรับไดเร็กทอรีแบบต้นไม้ กล่าวคือ ไฟล์ทั้งหมดจะถูกจัดเก็บไว้ในเลเยอร์เดียวกัน SPIFFS ที่ให้บริการโดย ESP32 มีคุณสมบัติดังต่อไปนี้:

  • ปัจจุบัน SPIFFS ไม่รองรับไดเร็กทอรี แต่สร้างโครงสร้างแบบเรียบ หาก SPIFFS ติดตั้งอยู่ใต้ /spiffs การสร้างไฟล์ด้วยเส้นทาง /spiffs/tmp/myfile.txt จะสร้างไฟล์ชื่อ /tmp/myfile.txt ใน SPIFFS แทนที่จะเป็น myfile.txt ในไดเร็กทอรี /spiffs/tmp

  • ไม่ใช่สแต็คแบบเรียลไทม์ การดำเนินการเขียนรายการหนึ่งอาจใช้เวลานานกว่าการดำเนินการอื่นมาก

  • สำหรับตอนนี้ มันไม่ได้ตรวจหาหรือจัดการกับบล็อกที่ไม่ดี

2. Install the Arduino ESP32 file system uploader

คุณสามารถสร้าง/บันทึกและลบไฟล์ด้วยโค้ด Arduino ของคุณเอง แต่การดำเนินการนั้นยุ่งยาก คุณต้องใส่ข้อมูลหรือไฟล์ไบนารีลงใน Arduino Sketch และสร้างไฟล์โดยเรียกใช้โปรแกรม

อย่างไรก็ตาม มีเครื่องมือที่มีประโยชน์มากที่สามารถอัปโหลดไฟล์จากคอมพิวเตอร์ไปยังระบบไฟล์ได้โดยตรง แม้ว่าจะยุ่งยากกว่าการ "ลากและวาง" สำเนาของ "ที่เก็บข้อมูลแบบถอดได้" เล็กน้อย ไม่ว่าจะเป็นไฟล์เสียง MP3 หรือไฟล์เว็บ HTML ทั้งหมดก็สามารถอัปโหลดไปยังหน่วยความจำแฟลชได้อย่างง่ายดาย มาเรียนรู้วิธีใช้ปลั๊กอินนี้กัน

3. Install ESP32 file upload plugin

3.1 Preparing the Environment

โปรดติดตั้ง Arduino IDE (เวอร์ชัน: 1.8.* ) และชุดสนับสนุน ESP32 ของ Arduino IDE (โปรดดูบทที่ 3.2.1 ของคู่มือการเริ่มต้นฉบับย่อของ BiBoard)

3.2 Download the ESP32FS plugin

ดาวน์โหลดแพ็คเกจบีบอัดของปลั๊กอิน ESP32FS ได้ที่:

ไปที่ไดเรกทอรี "Arduino" และเปิดโฟลเดอร์ "tools"

C:\Users\{YourUserName}\Documents\Arduino\tools

คลายซิปโฟลเดอร์ .zip ที่ดาวน์โหลดมาไปยังโฟลเดอร์ Tools คุณควรมีโครงสร้างโฟลเดอร์ที่คล้ายกัน:

C:\Users\{YourUserName}\Documents\Arduino\tools\ESP32FS\tool\esp32fs.jar

สุดท้ายให้รีสตาร์ท Arduino IDE

หากต้องการตรวจสอบว่าติดตั้งปลั๊กอินสำเร็จหรือไม่ ให้เปิด Arduino IDE เลือกบอร์ดพัฒนา ESP32 ของคุณ (ESP32 Dev Module) ไปที่ "Tools" จากนั้นตรวจสอบว่ามีตัวเลือก "ESP32 Sketch Data Upload" หรือไม่

4. Upload files using the file system uploader

หากต้องการอัปโหลดไฟล์ไปยังระบบไฟล์ ESP32 ให้ทำตามขั้นตอนด้านล่าง:

  • สร้างโครงการ Arduino (เช่น Test.ino) และบันทึก

  • หากต้องการเปิดไดเร็กทอรีโครงการ คุณสามารถใช้ตัวเลือก "Sketch - Show Sketch Folder"

  • ภายในโฟลเดอร์นี้ ให้สร้างโฟลเดอร์ใหม่ชื่อ "data"

  • ในโฟลเดอร์ "data" คุณควรใส่ไฟล์ที่คุณต้องการบันทึกลงในระบบไฟล์ SPIFFS เช่น สร้างไฟล์ .txt ที่มีข้อความชื่อ "test_example" ดังต่อไปนี้:

  • โปรดคลิก "Tools - ESP32 Sketch Data Upload" ใน Arduino IDE

เมื่อคุณเห็นข้อความแจ้ง "SPIFFS Image Uploaded" แสดงว่าไฟล์ได้รับการอัปโหลดไปยังพาร์ติชัน SPIFFS เรียบร้อยแล้ว

5. Demo of how to use the file system

วอย่างของระบบไฟล์ SPIFFS_Test.ino(C:\Users\{YourUserName}\AppData\Local\Arduino15\packages\esp32\hardware\esp32\2.0.*\libraries\SPIFFS\examples\SPIFFS_Test))มาจาก ESP32 อย่างเป็นทางการ โดยไม่ต้องดัดแปลง โค้ดนี้ใช้การดำเนินการพื้นฐานของ "การเพิ่ม การลบ การแก้ไข และการตรวจสอบ" และจัดเตรียมโปรแกรมทดสอบ SPI flash IO

หากจำเป็น ขอแนะนำให้ใช้โค้ดของตัวอย่างโดยตรงเพื่อใช้งาน ESP32 SPIFFS

Save HTML and CSS files to build a web server
Save images, audio and other files
Chapter 3.2.1
Download ESP32 SPIFFS file system upload plug-in for Arduino IDE
"data" folder in the project directory
Create test sample file with Notepad
The SPIFFS image has been uploaded to the ESP32 board
https://github.com/me-no-dev/arduino-esp32fs-plugin/releases