[TH] Understand and use the ESP32-C3

หลังจากที่พวกเราใช้งาน  esp8266 โดยเฉพาะโมดูล esp-01 และ esp-01s เพื่อเป็นตัวบริหารจัดการเครือข่ายเซ็นเซอร์มาเป็นระยะเวลาพอสมควร และด้วยขีดจำกัดในเรื่องของจำนวนขาใช้งานทำให้ต้องออกแบบระบบให้ทำงานคู่กับ  STM32F103C8T6 หรือ STM32F401CCU6/STM32F411CEU6 เพื่อให้การทำงานมีความสเถียรไม่ประสบปัญหาเกี่ยวกับ WDT ของ esp8266 และด้วยเวลาที่ผ่านไป ทาง espressif ออกไมโครคอนโทรลเลอร์ตามมาอีกหลายตัว เช่น esp32, esp32-s2, esp32-c3 และ esp32-s3

ทางเราได้ทดสอบและใช้งาน esp32 จนแทบจะเป็นตัวหลักในการทำงาน จน esp32-s2 กับบอร์ดของ LILYGO ทำให้เราลองสั่งมาใช้งาน ปัญหาหลักอยู่ที่เครื่องมือในการพัฒนานั้นออกมาล่าช้ามาก แต่อย่างไรก็ดี ณ​ ตอนนี้ทาง espressif ได้ออกชุดพัฒนาสำหรับ Arduino หรือ Arduino Core for ESP32 รุ่น 2.0 พร้อมรองรับการใช้กับ esp32 esp32-s2 และ esp32c3 ทำให้การใช้งานกับ ESP32 และ ESP32-S2 ใช้งานได้ดี และล่าสุดทางทีมงานเราได้บอร์ด esp-c3-32s มาจึงเกิดมาเป็นบทความนี้

สำหรับบทความนี้เป็นการเรียบเรียงจาก datasheet ของ ESP32-C3 WROOM-02 ซึ่งในบทความนี้เราใช้บอร์ดดังภาพที่ 1 ส่วนตัวอย่างโปรแกรมเป็นการขับหลอด LED แบบ RGB บนบอร์ดให้ทำงานโดยใช้ Arduino Core for ESP32 และ ESP-IDF ที่ปรับปรุงมาจากบทความใน Ep.3

ภาพที่ 1 บอร์ดไมโครคอนโทรลเลอร์ ESP32-C3

[EN] Arduino : repetition

Programming is an instruction for the processor to execute an instruction received. At a time, there is one instruction to process (in the case of non-parallel processing), once the instruction is completed, it saves the results of the commands in the working status register and prepares the next commands to be executed. This allows the operation to be performed individually from the first statement to the next, and the programmer can place the condition to separate the execution, for example, when a condition is true some instruction will be executed or any condition is not true, do not have to do or do something, etc. And finally, the function of the program can be repeated by the condition of iteration. For this reason, the basic programming principles consist of 3 types of work:

  • Execute one command at a time from top to bottom.
  • Able to add conditions of order processing.
  • Able to repeat the desired command.

[TH] ESP-NOW

บทความกล่าวถึงการใช้การสื่อสารที่ทาง espressif พัฒนาเพื่อใช้ในการสื่อสารระหว่างไมโครคอนโทรลเลอร์ของตนเองผ่านทางการสื่อสารไร้สายซึ่งเป็นอีกทางเลือกหนึ่งของการพัฒนาระบบแบบ Client/Server โดยอธิบายขั้นตอนการทำงานของการทำงานเป็นผู้ให้บริการ ผู้สั่งการ และชุดคำสั่งที่เกี่ยวข้องผ่านทาง Arduino core พร้อมอธิบายตัวอย่างการทำงานที่มากับ Arduino core ทั้ง 2 ตัวอย่าง คือ basic และ Multi-slave ซึ่งสามารถนำไปประยุกต์ใช้งานได้หลากหลาย