สิงหาคม 2019
คุณต้องการสร้างโครงการ IoT ที่เป็นนวัตกรรมที่ใช้ชิป ESP32 หรือโมดูลที่ใช้ ESP32 ของ บริษัท Espressif ยอดนิยมหรือไม่? ฉันทำและยังทำอยู่ และฉันหวังว่าคุณจะทำเช่นกัน
วัตถุประสงค์ของชุดเริ่มต้นที่ได้รับการบันทึกไว้อย่างดีนี้คือการเร่งการพัฒนาโครงการ IoT ของคุณสำหรับฮาร์ดแวร์ ESP32 โดยใช้เฟรมเวิร์ก ESP-IDF จาก Espressif และรับแรงบันดาลใจจากแอพที่คุณสามารถสร้างสำหรับ ESP32 โดยใช้โมดูลฮาร์ดแวร์ต่างๆ
คุณพร้อมที่จะค้นพบว่าคุณจะเริ่มต้นได้อย่างรวดเร็วหรือไม่?
mkdir ~/esp
cd ~/esp
git clone -b v3.2.2 --recursive https://github.com/espressif/esp-idf.git esp-idf
ส่วนนี้มีข้อมูลพื้นฐานเกี่ยวกับบอร์ดพัฒนา ESP32 ที่ฉันใช้ในตอนแรก:
คณะกรรมการพัฒนา ESP32 สามารถตั้งโปรแกรมได้ (ง่าย) โดยอะแดปเตอร์ดังกล่าว
ส่วนนี้จัดทำเอกสารบางผลิตภัณฑ์และวิธีการกำหนดค่า
แบตเตอรี่แบบชาร์จไฟได้มักใช้ในโครงการ IoT
ส่วนนี้เป็นเครื่องชาร์จแบตเตอรี่ยอดนิยมการปล่อยแบตเตอรี่ที่ทำเองและรายละเอียดเกี่ยวกับแบตเตอรี่ยอดนิยมเช่นแบตเตอรี่สิงโตและแบตเตอรี่ Lifepo4 นอกจากนี้ยังมีรายละเอียดบางอย่างเกี่ยวกับแบตเตอรี่ Lisoci2 Lisoci2 LITHIUM-Thionyl-Chloride แบตเตอรี่ที่ไม่สามารถชาร์จได้สำหรับใช้ในสภาพที่รุนแรง
เอกสารบางอย่างเกี่ยวกับ MOSFET Power NOSFES ส่วนใหญ่ซึ่งมักใช้ร่วมกับคณะกรรมการพัฒนา ESP32
เอกสารเกี่ยวกับโมดูล TP4056
เอกสารบางอย่างเกี่ยวกับหน่วยงานกำกับดูแลแรงดันไฟฟ้า LDO ซึ่งเป็นส่วนหนึ่งของคณะกรรมการพัฒนา ESP32
ชุดเริ่มต้นมีโครงการทำงานต่าง ๆ ที่คุณสามารถทำงานได้ทันที - ตรงข้ามกับตัวอย่างที่คุณต้องติดกาวด้วยตัวเองซึ่งไม่ใช่เรื่องง่ายสำหรับผู้เริ่มต้น
โครงการเหล่านี้:
ให้ข้อมูลเชิงลึกเกี่ยวกับวิธีการใช้เฟรมเวิร์ก ESP-IDF อย่างเป็นทางการอย่างมีประสิทธิภาพ
รวมถึงแนวทางการเข้ารหัสที่ดีที่สุดและแนวทางการกำหนดค่า
สาธิตวิธีการใช้ส่วนประกอบ ESP-IDF ใหม่ของชุดเริ่มต้นนี้เช่นแถบ LED RGB และเซ็นเซอร์ Meteo
โครงการพิเศษ esp32_mjd_components :
มาเน้นโครงการสองสามโครงการที่แสดงให้เห็นถึงวิธีการใช้ Core ESP-IDF Framework
esp32_button_basics วิธีการเชื่อมต่อกับปุ่ม (สวิตช์)esp32_deep_sleep_wakeup_basics สาธิตวิธีการใช้สวิตช์หรือเซ็นเซอร์ประตูแม่เหล็ก/หน้าต่างเพื่อปลุก ESP32 จากการนอนหลับลึกesp32_http_client แสดงให้เห็นถึงพื้นฐานของการใช้ส่วนประกอบ ESP-IDF มาตรฐาน "ESP32_HTTP_Client"esp32_gpio_basics วิธีการโต้ตอบกับพิน GPIO ของคณะกรรมการพัฒนาesp32_gpio_scanner วิธีสแกนพิน GPIO ทั้งหมดและค้นพบฟังก์ชั่น I/O ของพวกเขาesp32_i2c_scanner วิธีสแกนอุปกรณ์ทาสทั้งหมดบนพิน I2C และระบุที่อยู่ทาส I2C ของพวกเขา สิ่งนี้มีประโยชน์เมื่อทำงานกับอุปกรณ์ทาส I2C ใหม่esp32_ledc_pwm_basics วิธีใช้ไดรเวอร์ ESP-IDF LEDC มาตรฐาน (ไดรเวอร์ LED คอนโทรลเลอร์โดยใช้ PWM)esp32_nvs_basics วิธีการใช้ไดรเวอร์ ESP-IDF NVS มาตรฐาน (ที่เก็บข้อมูลที่ไม่ระเหย) ด้วยพาร์ติชัน NVS แบบกำหนดเองesp32_rmt_basics วิธีใช้ไดรเวอร์ ESP-IDF RMT มาตรฐานesp32_spiffs_basics วิธีใช้ไดรเวอร์ระบบไฟล์ ESP-IDF SPIFFS มาตรฐานesp32_sw180_tilt_sensor วิธีการเชื่อมต่อกับเซ็นเซอร์เอียงนี้ (ไม่จำเป็นต้องใช้ส่วนประกอบเพิ่มเติม)esp32_timer_basics วิธีใช้ไดรเวอร์ TIMER ESP-IDF มาตรฐานesp32_uart_basics วิธีการใช้ไดรเวอร์ ESP-IDF uart มาตรฐานesp32_uart_do_output วิธีการใช้ไดรเวอร์ ESP-IDF uart มาตรฐานesp32_udp_client แสดงให้เห็นถึงพื้นฐานของการใช้งานไคลเอนต์ UDP โดยใช้เฟรมเวิร์ก ESP-IDFมาเน้นโครงการสองสามโครงการที่แสดงให้เห็นถึงวิธีการใช้ส่วนประกอบพิเศษของชุดเริ่มต้น ESP32 MJD
esp32_ads1115_adc_using_lib แสดงให้เห็นถึงพื้นฐานของการใช้ส่วนประกอบ MJD ESP-IDF "MJD_ADS1115" สำหรับ ESP32 และกระดานฝ่าวงล้อมที่เป็นที่นิยมของ TI ADS1115 Ultra-Small, I2C-compatator, 860-SPS รสบัส.esp32_am2320_temperature_sensor_using_lib วิธีการอ่านข้อมูลจากเซ็นเซอร์ AOSONG AM2320 METEOesp32_bh1750fvi_lightsensor_using_lib วิธีการอ่านข้อมูลจากเซ็นเซอร์ความเข้มแสง BH1750esp32_bme280_sensor_using_lib วิธีการอ่านข้อมูลจากเซ็นเซอร์ Meteo BME280 BOSCHesp32_bmp280_sensor_using_lib วิธีการอ่านข้อมูลจากเซ็นเซอร์ Meteo BMP280 BOSCHesp32_dht11_temperature_sensor_using_lib วิธีการอ่านข้อมูลจากเซ็นเซอร์อุณหภูมิ AOSONG DHT11esp32_dht22_temperature_sensor_using_lib วิธีการอ่านข้อมูลจากเซ็นเซอร์อุณหภูมิ AOSONG DHT22/AM2302esp32_door_sensor_reed_switch สาธิตวิธีการใช้เซ็นเซอร์ประตูแม่เหล็ก/หน้าต่างซึ่งขึ้นอยู่กับสวิตช์กกesp32_ds3231_clock_using_lib วิธีรับ/ตั้งค่าข้อมูลจาก DS3231 ZS042 บอร์ดนาฬิกาเรียลไทม์ RTCesp32_hcsr501_pir_sensor_using_lib วิธีการอ่านข้อมูลจากเซ็นเซอร์ HC-SR501 PIR มนุษย์อินฟราเรดesp32_huzzah32_battery_voltage_using_lib วิธีใช้คุณสมบัติเฉพาะของกระดานพัฒนา Adafruit Huzzah32 ตัวอย่าง: อ่านระดับแรงดันไฟฟ้าของแบตเตอรี่esp32_jsnsr04t_using_lib โครงการนี้แสดงให้เห็นถึงคุณสมบัติทั้งหมดของโมดูลเซ็นเซอร์อัลตราโซนิกกันน้ำ JSN-SR04T-2.0 ร่วมกับคณะกรรมการพัฒนา ESP32 มันทิ้งการวัดในบันทึกการดีบักesp32_jsnsr04t_oled_mosfet_using_lib โครงการนี้แสดงให้เห็นถึงคุณสมบัติทั้งหมดของโมดูลเซ็นเซอร์อัลตราโซนิกกันน้ำ JSN-SR04T-2.0 ร่วมกับบอร์ดการพัฒนา ESP32esp32_ky032_obstacle_sensor_using_lib วิธีการอ่านข้อมูลจากเซ็นเซอร์การหลีกเลี่ยงสิ่งกีดขวางอินฟราเรด KY-032esp32_ledrgb_using_lib วิธีการควบคุมแถบ LED RGB (เช่น Adafruit Neopixels และผลิตภัณฑ์ BTF-Lightning)esp32_linked_list_basics วิธีใช้องค์ประกอบรายการที่เชื่อมโยงesp32_lorabee_using_lib วิธีการโต้ตอบกับกระดานฝ่าวงล้อมโซดา Lorabee (Microchip RN2843 LORA Transceiver) โครงการนี้แสดงให้เห็นถึงคำสั่งพื้นฐานเพื่อกำหนดค่าอุปกรณ์และอ่าน/เขียน NVMesp32_lorabee_rx_using_lib วิธีการโต้ตอบกับกระดานฝ่าวงล้อมโซดา Lorabee (Microchip RN2843 LORA Transceiver) โครงการนี้แสดงให้เห็นถึงฟังก์ชั่นการรับ LORA RX หมายเหตุ: ใช้ Lora P2P และไม่ใช่ Lorawanesp32_lorabee_tx_using_lib วิธีการโต้ตอบกับกระดานฝ่าวงล้อมโซดา Lorabee (Microchip RN2843 LORA Transceiver) โครงการนี้แสดงให้เห็นถึงฟังก์ชันการส่ง LORA TX หมายเหตุ: ใช้ Lora P2P และไม่ใช่ Lorawanesp32_lorabee_using_pc_usbuart โครงการนี้แสดงให้เห็นถึงวิธีการออกคำสั่งพื้นฐานไปยังโมดูล Lorabee โดยใช้พีซี Windows และบอร์ด USB-Uart (เช่น FTDI) นี่เป็นวิธีที่ง่ายในการทำความคุ้นเคยกับคุณสมบัติของบอร์ด Lorabee / Microchip RN2843Aesp32_mlx90393_using_lib วิธีรับข้อมูลสนามแม่เหล็กโดยใช้เซ็นเซอร์สนามแม่เหล็ก MELEXIS MLX90393esp32_neom8n_gps_using_lib วิธีรับข้อมูล GPS จากโมดูล GPS UBLOX NEO-M8Nesp32_scd30_sensor_settings_using_lib โครงการนี้สำหรับโมดูลเซ็นเซอร์ Sensirion SCD30 CO2 และ RH/T ใช้เพื่อตรวจสอบว่าเซ็นเซอร์ทำงานได้อย่างถูกต้องเพื่อแสดงการตั้งค่าทั้งหมด ** ของเซ็นเซอร์และเพื่อเรียกใช้โหมดการสอบเทียบต่างๆesp32_scd30_sensor_readings_using_lib โครงการนี้สำหรับโมดูลเซ็นเซอร์ Sensirion SCD30 CO2 และ RH/T อ่านการวัด CO2 อย่างต่อเนื่องการวัดที่เกี่ยวข้องและที่ได้รับและดัชนีคุณภาพอากาศesp32_sht3x_sensor_using_lib โครงการนี้แสดงส่วนประกอบ MJD_SHT3X ส่วนประกอบ MJD_SHT3X สำหรับเซ็นเซอร์ความชื้นดิจิตอล Sensirion SHT3X และเซ็นเซอร์อุณหภูมิถูกใช้กำหนดค่าอุปกรณ์และรวบรวมการวัดเอาต์พุต (อุณหภูมิ CF, ความชื้นสัมพัทธ์ % และ ALOS จุดน้ำค้าง C F.esp32_ssd1306_oled_using_lib โครงการนี้สำหรับจอแสดงผล OLED 128x32 และ 128x64 ยอดนิยมตาม SSD1306 OLED Driver IC แสดงให้เห็นถึงส่วนประกอบ MJD_SSD1306 เพื่อแสดงข้อความบนจอแสดงผล OLEDesp32_tmp36_sensor_ads1115_adc_using_lib โครงการนี้แสดงส่วนประกอบ MJD_ADS1115 และ MJD_TMP36 ส่วนประกอบ MJD_ADS1115 สำหรับ TI ADS1115 แบบอะนาล็อกถึงดิจิตอลคอนเวอร์เตอร์ใช้ในการอ่านเอาต์พุตแรงดันไฟฟ้าของเซ็นเซอร์อุณหภูมิอะนาล็อก ส่วนประกอบ MJD_TMP36 สำหรับเซ็นเซอร์ TMP36 ใช้ในการแปลงการอ่านแรงดันไฟฟ้าดิบของ ADC เป็นอุณหภูมิแวดล้อมในองศาเซลเซียสอย่างโปร่งใสesp32_wifi_device_scanner วิธีสแกนช่อง WiFi ทั้งหมดและค้นพบอุปกรณ์esp32_wifi_ssid_cloner วิธีการโคลนจุดเชื่อมต่อที่มีอยู่esp32_wifi_ssid_scanner วิธีสแกนช่อง WiFi ทั้งหมดและค้นพบจุดเชื่อมต่อesp32_wifi_ssid_spammer วิธีสร้างจุดเชื่อมต่อเพิ่มเติมในพื้นที่esp32_wifi_stress_test แอพนี้ดำเนินการทดสอบความเครียดสำหรับบอร์ด ESP32 Dev ในบทบาทเป็นสถานี WiFi วัตถุประสงค์คือเพื่อตรวจสอบความเสถียรของไดรเวอร์ซอฟต์แวร์ WiFi ESP32 ของเฟรมเวิร์ก ESP-IDF รุ่นเฉพาะ เพื่อตรวจสอบการทำงานที่ถูกต้องด้วยผลิตภัณฑ์จุดเชื่อมต่อ WiFi ของผู้ขายต่างๆฉันสังเกตเห็นว่ารูปแบบการเข้ารหัสจำนวนมากกลับมาอีกครั้งและอีกครั้งในโครงการแรกที่ฉันพัฒนาสำหรับ ESP32
ดังนั้นหลังจากนั้นไม่นานฉันก็เริ่มวางรูปแบบการเข้ารหัสเหล่านั้นในห้องสมุดแยกต่างหาก ESP-IDF เป็นเฟรมเวิร์กที่ขยายได้ดังนั้นไลบรารีเหล่านี้จะถูกนำไปใช้เป็นส่วนประกอบ ESP-IDF ใหม่ซึ่งสามารถฉีดได้อย่างง่ายดายในโครงการ ESP-IDF ใด ๆ
ส่วนประกอบ MJD ESP-IDF ทั้งหมดจะถูกรวมศูนย์ไว้ในโครงการ esp32_mjd_components
ส่วนประกอบสามารถแบ่งได้ประมาณ 3 กลุ่ม:
เกี่ยวข้องกับการเขียนโปรแกรมในภาษา C (ซึ่งมีนิสัยใจคอของตัวเองเป็นภาษาการเขียนโปรแกรมอื่น ๆ ทั้งหมด) ตัวอย่าง: รายการที่เชื่อมโยง
เกี่ยวข้องกับสภาพแวดล้อม ESP32 และข้อมูลเฉพาะของระบบฝังตัว ตัวอย่าง: องค์ประกอบ WiFi ง่าย ๆ พวกเขาทำให้คุณสมบัติ ESP-IDF นั้นใช้งานง่ายขึ้น
เกี่ยวข้องกับเครือข่าย ตัวอย่างบางส่วน: เชื่อมต่อกับเซิร์ฟเวอร์ MQTT และฟังก์ชั่น DNS บางอย่าง ส่วนประกอบสรุปความซับซ้อนและทำให้ใช้งานได้ง่ายขึ้น
เกี่ยวข้องกับอุปกรณ์ต่อพ่วงที่คุณเชื่อมโยงกับโมดูล ESP32 หรือโมดูล ESP32 ตัวอย่างบางส่วน: บอร์ด LORA, RGB LED, เซ็นเซอร์อุณหภูมิ, บอร์ด GPS, นาฬิกา RTC, เซ็นเซอร์ PIR และเซ็นเซอร์อุปสรรค ส่วนประกอบสรุปความซับซ้อนของอุปกรณ์ต่อพ่วง
นี่คือรายการของส่วนประกอบใหม่:
mjd ส่วนประกอบพื้นฐานซึ่งมีฟังก์ชั่นวัตถุประสงค์ทั่วไปmjd_ads1115 สำหรับ TI ADS1115 แบบอะนาล็อกถึงดิจิตอลคอนเวอร์เตอร์ 16 บิตmjd_am2320 สำหรับเซ็นเซอร์ Aosong AM2320 Meteomjd_bh1750fvi สำหรับเซ็นเซอร์ความเข้มแสง BH1750mjd_bme280 สำหรับเซ็นเซอร์ BOSCH BME280 Meteomjd_bmp280 สำหรับเซ็นเซอร์ Meteo BMP280 BOSCHmjd_dht11 สำหรับเซ็นเซอร์อุณหภูมิ AOSONG DHT11mjd_dht22 สำหรับเซ็นเซอร์อุณหภูมิ AOSONG DHT11/AM2302mjd_ds3231 สำหรับ DS3231 ZS042 บอร์ดนาฬิกาเรียลไทม์ RTCmjd_hcsr501 สำหรับเซ็นเซอร์อินฟราเรด HC-SR501 PIRmjd_huzzah32 สำหรับคณะกรรมการพัฒนา ADAFRUIT HUZZAH32 (อ่านระดับแรงดันไฟฟ้าของแบตเตอรี่)mjd_jsnsr04t สำหรับโมดูลเซ็นเซอร์อัลตราโซนิกกันน้ำ JSN-SR04T-2.0mjd_ky032 สำหรับเซ็นเซอร์การหลีกเลี่ยงสิ่งกีดขวางอินฟราเรด KY-032mjd_ledrgb สำหรับการควบคุมแถบ LED RGB ต่างๆ (ชิป WorldSemi WS28XX เช่นสายผลิตภัณฑ์ Adafruit Neopixels)mjd_list ที่ใช้รายการที่เชื่อมโยงตามที่ใช้ในเคอร์เนล Linuxmjd_log เพื่ออำนวยความสะดวกในการเข้าสู่ระบบในแอพmjd_lorabee เพื่อโต้ตอบกับโซดา Lorabee Microchip RN2483A บอร์ด (มีไมโครชิพ RN2843 868MHz ชิป Lora)mjd_mlx90393 สำหรับเซ็นเซอร์สนามแม่เหล็ก MELEXIS MLX90393 (แกน XYZ และตัวชี้วัดอุณหภูมิ)mjd_mqtt สำหรับการโต้ตอบกับเซิร์ฟเวอร์ MQTT (เป็นไคลเอนต์ MQTT)mjd_nanopb เพื่อทำงานกับบัฟเฟอร์โปรโตคอล Google มันมีไฟล์ C ทั่วไปของไลบรารี Nanopb v0.3.9.2 นอกจากนี้ยังประกาศคำสั่งการรวบรวมทั่วทั้งโครงการ Nanopb (-d) ใน makefile.projbuildmjd_net เพื่ออำนวยความสะดวกในคุณสมบัติเครือข่ายต่างๆ (รับที่อยู่ IP, DNS แก้ไขชื่อโฮสต์ ฯลฯ )mjd_neom8n สำหรับโมดูล GPS U-BLOX NEO-M8Nmjd_scd30 สำหรับโมดูลเซ็นเซอร์ Sensirion SCD30 CO2 และ RH/Tmjd_sht3x สำหรับเซ็นเซอร์ความชื้นดิจิตอล Sensirion SHT3X และเซ็นเซอร์อุณหภูมิmjd_ssd1306 สำหรับจอแสดงผล OLED 128x32 และ 128x64 ยอดนิยมซึ่งขึ้นอยู่กับ SSD1306 OLED Driver ICmjd_tmp36 สำหรับเซ็นเซอร์อุณหภูมิอะนาล็อก TMP36 จากอุปกรณ์อะนาล็อก ที่จะใช้ร่วมกับ ADCmjd_wifi เพื่ออำนวยความสะดวกในฐานะสถานี WiFi ซึ่งเป็นการเชื่อมต่อกับจุดเชื่อมต่อ WiFiมาจัดหมวดหมู่ส่วนประกอบเหล่านี้อย่างละเอียดเพิ่มเติม:
ส่วนประกอบนี้รองรับแพ็คเกจ LED RGB หลายชุด มันมาพร้อมกับเอกสารสำคัญเช่นแผ่นข้อมูลแผนผังและคำแนะนำเกี่ยวกับวิธีการเชื่อมโยงพวกเขาไปยังบอร์ดพัฒนาของคุณและในที่สุดก็เป็นแหล่งจ่ายไฟพิเศษ
ส่วนประกอบเหล่านี้มาพร้อมกับเอกสารสำคัญเช่นแผ่นข้อมูลแผนผังและคำแนะนำเกี่ยวกับวิธีการเชื่อมโยงพวกเขาไปยังกระดานพัฒนาของคุณ
ขั้นตอน:
git clone https://github.com/pantaluna/esp32-mjd-starter-kit.gitcd ลงในไดเรกทอรีของโครงการที่คุณต้องการสำรวจภายใต้ ./projects โครงการmake menuconfig ปรับเปลี่ยนการตั้งค่าของโครงการที่คุณต้องการเรียกใช้ (เช่น gpio pin#, ข้อมูลรับรอง WiFi, ... )make flash monitor เพื่อสร้างและอัปโหลดตัวอย่างไปยังบอร์ด DEV ของคุณและตรวจสอบการดำเนินการผ่านเทอร์มินัลอนุกรม เฟรมเวิร์ก ESP-IDF (และเอกสารประกอบ) มีประสิทธิภาพและกว้างขวางมาก
ฉันพบว่ามันยากที่จะเริ่มต้นอย่างรวดเร็ว ฉันเป็นแค่นักพัฒนาสแต็คแบบเต็ม (แบ็กเอนด์/ส่วนหน้า) โดยไม่มีประสบการณ์มากในการพัฒนาโซลูชัน IoT โดยใช้ระบบฝังตัว
โดยเฉพาะอย่างยิ่งฉันสามารถเข้าใจคุณสมบัติทั้งหมดของเฟรมเวิร์ก ESP-IDF แต่ฉันมีเวลาที่ยากลำบากในการจับทุกอย่างเข้าด้วยกันและพัฒนาโครงการจริงอย่างรวดเร็วสำหรับการแก้ปัญหาจริงโดยใช้อุปกรณ์ต่อพ่วงเฉพาะเช่นเซ็นเซอร์บอร์ด LORA บอร์ด GPS และแถบ LED ตัวอย่างเช่นฉันต้องการเริ่มต้นด้วยโครงการที่ควบคุมเซ็นเซอร์ต่าง ๆ ในเครือข่ายและวิเคราะห์ข้อมูลบนเซิร์ฟเวอร์กลางจากนั้นไปยังโครงการที่ซับซ้อนมากขึ้น
ประการที่สองมันยากที่จะหาเอกสารที่ดี (แผ่นข้อมูลไดอะแกรมภาพถ่ายของการเดินสาย) ของอุปกรณ์ต่อพ่วงต่างๆเช่นเซ็นเซอร์ Meteo, บอร์ด GPS, RGB LED ฯลฯ และวิธีการใช้อุปกรณ์เหล่านี้ร่วมกับคณะกรรมการพัฒนา ESP32
ดังนั้นฉันจึงพัฒนาเมื่อเวลาผ่านไปส่วนประกอบพิเศษเหล่านี้เอกสารที่ดีและโครงการทำงานจำนวนมากที่กำหนดเป้าหมายไปที่อุปกรณ์ต่อพ่วงทั้งหมดที่มักใช้ในโครงการ IoT
ตอนนี้เป็นเวลาที่ดีที่จะมอบบางสิ่งบางอย่างให้กับชุมชน ESP32 และปล่อยทุกสิ่งที่ฉันเรียนรู้จนถึงโอเพนซอร์สเพื่อให้ทุกคนได้รับประโยชน์จากงานนี้
คุณมี 2 ตัวเลือกในการเริ่มพัฒนาชิป ESP32:
เป็นสิ่งสำคัญที่จะต้องรู้ว่าเฟรมเวิร์กทั้งสองมีความเสถียรและใช้งานได้ แต่พวกเขายังอยู่ภายใต้การพัฒนาที่สำคัญโดยเอสเพรสซิฟและรุ่นใหม่ที่สำคัญกำลังออกมาเป็นประจำ ฉันคาดหวังว่าสิ่งนี้จะดำเนินต่อไปอย่างน้อยจนถึงปี 2018Q4
หลังจากทดลองกับเฟรมเวิร์กทั้งสองฉันตัดสินใจที่จะไปกับเฟรมเวิร์ก ESP-IDF โดยเฉพาะอย่างยิ่ง v3.1 ขึ้นไป ฉันพยายามปล่อยไลบรารีที่เข้ากันได้กับการเปิดตัวที่เสถียรครั้งสุดท้าย
ชุดเริ่มต้น ESP32 ทำให้คุณเริ่มต้นได้อย่างรวดเร็ว หากคุณต้องการคุณสมบัติพิเศษของส่วนประกอบที่มีอยู่หรือคุณต้องการเสนอส่วนประกอบใหม่โปรดส่งปัญหา
ส่วนประกอบ MJD ทั้งหมดจะถูกรวมศูนย์ไว้ในโครงการ mjd_components
ชุดนี้ไม่ได้ออกแบบมาเพื่อใช้คุณสมบัติที่เป็นไปได้ทั้งหมดของโครงการ ESP32 ใด ๆ หากคุณสมบัติใหม่นั้นเฉพาะเจาะจงมากสำหรับโครงการของคุณวิธีที่ดีที่สุดคือการสร้างชุดส่วนประกอบ ESP-IDF ของคุณเองด้วยฟังก์ชั่นที่คุณต้องการ คุณสามารถใช้ส่วนประกอบเหล่านี้เป็นรากฐาน โปรดอย่าลืมพูดถึงว่าคุณได้รับส่วนประกอบจากชุดเริ่มต้นนี้
"MJD" หมายถึงอะไร? มันเป็น codeword ที่ไม่มีความหมายและใช้ในภาษา C เพื่อทำให้ตัวระบุไม่เหมือนใคร วิธีการนี้ช่วยให้มั่นใจได้ว่าคุณสามารถใช้ส่วนประกอบ ESP-IDF ใหม่เหล่านี้ในโครงการ C อื่น ๆ
เหตุใดโครงการและส่วนประกอบทั้งหมดจึงถูกเก็บไว้ในพื้นที่เก็บข้อมูล GitHub แห่งเดียว ฉันคิดว่าสิ่งนี้ทำให้ชุดเริ่มต้นใช้งานง่ายขึ้นสำหรับผู้เริ่มต้น ในอนาคตชุดอาจตั้งค่าโดยใช้ submodules Git
ตรวจสอบ GitHub
ปล่อยส่วนประกอบพิเศษสำหรับเซ็นเซอร์ก๊าซเซ็นเซอร์อนุภาคฝุ่น, ส่วนประกอบลูปปัจจุบัน 4-20MA, จอแสดงผล TFT และเมทริกซ์ LED RGB
เปิดตัวโครงการพิเศษเพื่อแสดงการอัปเดต OTA (อัพเกรดเฟิร์มแวร์จากระยะไกล)
ในการปล่อยแพลตฟอร์ม IoT ไปยังสาธารณะเพื่อให้คุณสามารถจัดการอุปกรณ์ในฟิลด์และวิเคราะห์ข้อมูลขาเข้า
เพื่อสร้างเว็บไซต์ใหม่สำหรับเอกสารทางเทคนิคของชุดนี้