Розмір відео: 1280 X 720853 X 480640 X 360
Показувати елементи керування програвачем
Автоматичне відтворення
Автоповтор
รบกวนถามหน่อยครับ ผมซื้่อบอร์ด ที่ใช้ ESP32 WROOM 4 relay ใช้ CP2102 ต่อเขียนคำสั้งง่าย ๆ ดูจากคลิปอาจารย์ และกดปุ่ม D01 ที่อยู่ข้าง ๆ ปุ่ม EN แต่ก็ไม่สามารถconnectได้ครับ พอจะให้คำแนะนำเพิ่มเติมหรือเปล่าครับ
ปัญหามันมีหลายประการที่ทำให้อัพโหลดไม่ได้1. pc มองเห็น comport หรือยัง? - ดูไดรเวอร์ ดูสาย usb2.ถ้าเห็น comport ให้เปิด Serial Monitor - กดปุ่มรีเซท (en) ที่บอร์ด ต้องมีข้อมูลขึ้นที่ Sial monitor - ถ้าไม่มีอะไรขึ้น ปัญหาอาจอยู่ที่การรับส่ง rx txจาก mcu ไป usb3. ปุ่ม boot เองกดแล้ว อาจไม่จ่าย gnd ไปยังขา GPIO0ฯลฯ
ใช้ Esp32 เหมือนกันครับ ต้อนนี้ใช้วิธีจิ้มปุ่ม flash ระหว่าง upload เอาครับ
ต่อ C เข้าไปสักตัวชีวิตจะสะดวกขึ้นอีกหน่อย
เพิ่มเติมครับที่เคยถามผมไว้เรื่อง Task (ถ้าไว้ในอีกคลิปหนึ่ง )ผมเอามาตอบในคลิปนี้เพราะว่า multi thread มันทำได้บนบอร์ด ESP32 ซึ่งเป็น Dual coreถ้าเร่งด่วน ก็ดูของเจ้านี้ได้เลยอธิบายละเอียดมาก ua-cam.com/video/jpVcCmh8sig/v-deo.html
@@saroj1961 ขอบคุณครับ เดียวจะลองศึกษาดูครับขอเล่านิดนึง นะครับ พอดี ตอนนี้ ผมทำ project Iot เพืออ่านค่า volt/amp ของ solar cell ที่บ้าน ด้วย ESP32/ESP8266ใน code มีการทำงานหลักๆอยู่ 2 อย่าง คือ - อ่านค่า volt/amp จาก PZEM - และอีกอย่าง คือ รับคำสั่งจาก api เพือส้่งงาน RElay switch ใน void loop() { .. } ผมใช้ delay เพือเป๋นการ หน่วงเวลาในการอ่านค่าจาก PZEMถ้าตั้งถี่ไป มันขอบอ่านค่าไม่ทัน หรือชอบค้าง เลยจำเป่้นต้อง Delay ไว้ประมาณ 3 วิปัญหาคือ พอผมใส่ Deplay(3000) พอผมส่งงาน เพื่อให้ trigger Relay (บางที) มันไม่ทำงานทันทีเพราะมันต้องรอรอบ (รอบที่ผมใส่ delay 3 sec ไว้) กลายเป็นว่า มันต้องรอ ให้ครบ 3 วิ ก่อน ถึง ทำงาน step ต่อไป แทนที่มันจะ trigger relay ทันทีถ้ามี Relay หลาายๆ ตัว นี้ กด สั่งพร้อมๆ กัน รู้สึกไม่ทันใจ เท่าไร ผมเลยคิดว่า ถ้ามี task เข้ามาช่วยคงจะดี มันจะได้ทำงาน ทันทีหลังจาก call api เพือสั่งงาน Relay swich โดย thead แยกกัน ระหว่าง อ่านค่าจาก device และ รับคำสั่ง relay (PZEM ที่ผมใช้อยู่)th.aliexpress.com/i/32913960037.htmlua-cam.com/video/-27RCMravCk/v-deo.html
@@watcharapongsri5484 โหทำได้ขนาดนี้มาตายตรง delay() เข้าใจเลยครับ คือปัญหานี้ อาจแก้ด้วย thread ใน ESP32 นะครับ (จากตัวอย่างใครลิงค์ที่แปะไว้ให้)ได้แต่ปัญหาที่ตามมาแล้วผมยังไม่ได้ทดลองคือ แต่ละ Thread มันแยก working arear กันเลย ไม่รู้ว่ามันส่งผ่านตัวแปรข้ามไปหากันได้มั๊ย ...แต่ถึงอย่างไรในแต่ละเรื่องที่ต้องผ่าน delay ก็จะเจอปัญหาอยู่ดีทางแก้ (ซึ่งต้องแก้ ไม่ว่าจะ มี multi thread)หรือไม่ คือการใช้ mills() มาจัดการแทน delay() ทุกตัวมันคงคุยกันยาว inbox หาผมทาง facebook โทรคุยกันทาง massenger จะรู้เรื่องเร็วกว่าครับ(ดูช่องทางการติดต่อ ในรายละเอียดใต้คลิปครับ)
@@saroj1961 เดียวจะลองเอา mills() มาใช้ดู ว่ามันจะแก้ปัญหาตรงนี้ได้ไหม ขอบคุณมากครับพี่
ขอบคุณมากๆ ครับ มีประโยชน์มากครับ
ยินดีครับขอบคุณที่ติดตามชม และติดตามช่องนะครับ
eps32 พอถอดปลั๊กไฟเลี้ยงออก มันไม่กลับมาทำในเงื่อนไขใหม่เหรอครับ อย่างเช่น 9.00 - 20.00 ให้ปริ้น ข้อความออกมา พอถอดปลั๊กเสียบใหม่ ไม่ทำในเงื่อนไขนี้แล้วครับ ไม่ปริ้นข้อความออกมาแล้วครับมีวิธีแก้ไขไหมครับ ขอบคุณครับ
มันไม่ใช่แค่ขา DTR ครับ แต่เปิดการทำงานของทั้ง DTR/RTS ร่วมกันตามปกติ ESP32 หลังจากมันเริ่มทำงานหากขา 0 เป็น High มันจะเข้าสู่โหมด SPI Boot (โหมดทำงานปกติ)แต่ถ้าขา 0 และ 2 เป็น Low มันจะเข้าสู่โหมด Download Boot (โหมดรอรับ Firmware)ซึ่งไอ้ขา 0 นี่มันก็คือขา Boot นั่นแหละ ส่วนขา 2 มันมี R Pull-down อยู่ในตัวชิปอยู่แล้วจึงเป็น Low แน่นอนลองทดสอบโดยการเอาขา 2 ขึ้น High ดูจะเห็นว่ามันไม่เข้า Download Boot เช่นกันทีนี้การใช้งานปกติเราก็แค่กดขา 0 (บนบอร์ดจะเขียนว่า Boot) ให้เป็น Low ตอนที่จ่ายไฟมัน มันก็จะพร้อมรับโปรแกรมแล้วแต่ที่ทั่วไปเราไม่ต้องกดด้วยตัวเองเป็นเพราะบอร์ดพัฒนาเหล่านี้มันลักไก่โดยการเอาขา DTR กับ RTS ไปเปิดทรานซิสเตอร์ไขว้ (XOR logic) ที่จะดึง EN กับ Boot ลง GND นั่นเองทีนี้ก็อาศัยการเปิด Serial port ของ IC บนบอร์ดที่มาด้วยกัน (ส่วนใหญ่ CH340G ไม่ก็ CP2102) มันจะดึง RTS และ DTR ลงสลับกันตามลำดับ เท่ากับว่าเป็นเหมือนการกด Reset ตามด้วย Boot นั่นเองแต่บอร์ดที่มันมีปัญหาตามที่เห็น มันมาจาก esptool ที่คุณใช้มันเป็นตัวเก่า มันมีบัคที่ทำให้ Arduino มันไม่เปิดปิด serial port ซ้ำๆ เราจึงต้องกด Boot แช้แล้ว Reset ในระหว่างการโปรแกรมและการที่เอา C ไปต่อเข้าขา EN ก็เป็นการเพิ่มระยะเวลาเปิดตัวของชิปเพื่อให้ตัวชิปมันเริ่มต้นช้าลงจะได้เปิดมาทันขา 0 โดน DTR ดึงลง GND พอดีต้องอธิบายเพิ่มนิดนึงทำไมต่อ C จาก EN ลง GND ถึงทำให้ชิปเริ่มทำงานช้าลงขา EN ของ ESP32 นั้นคือขา Chip Enable แปลว่า เปิดใช้งานชิป ซึ่งถ้ามันเป็น High ชิปก็จะทำงานทีนี้ใน Datasheet ของ ESP32 เค้าแนะนำให้ทำวงจร RC delay ให้ขา EN เพื่อหน่วงเวลาการเปิดทำงานของชิป ซึ่งมีไว้ป้องกันไฟไม่นิ่งในระหว่างการเริ่มทำงานขา EN ในบอร์ดส่วนใหญ่จึงมี R pull-up 10k กับ C 0.1uF ลง GND มาอยู่แล้ว (ค่าที่เค้าแนะนำใน Datasheet คือ 10k/1uF หรือก็คือ 63% ใน 10ms แต่ก็ปรับตามเสป็คแหล่งจ่ายของแต่ละคน)ทีนี้พอเราเอา C ไปใส่ให้มันก็กลายเป็นว่าเราไปเพิ่มค่า C ลง GND ให้สูงขึ้น ส่งผลให้ชิปมันเริ่มทำงานช้าลง ทำให้มันเปิดมาทันการกดขา 0 ลง GND จาก DTR นั่นเอง
ขอบคุณครับ
ความรู้แน่น ๆ ขอบคุณมากครับ
ขออนุญาตสอบถามครับ ผมใช้บอร์ด Arduino DUE อยากส่งสัญญาณเสียงออกขา DAC ต้องเขียน code ยังไงครับ ขอบคุณครับ
เป็นคำถามที่ตอบยากที่สุดครับ input-process-output การที่เราจะเขียนโปรแกรมจะติดต่อกับสิ่งใดต้องรู้ว่าสิ่งนั้นต้องการอะไรเป็นอินพุท และคำสั่งที่จะสั่งการเขาเป็นอย่างไร
การทำงานจะเป็นแบบ รับอินพุทเป็นสัญญาณเสียงจากไมค์โครโฟน แล้วส่งเอาท์พุตเป็นสัญญาณเสียงออกลำโพงครับ อยากทดลองง่ายๆแบบนี้ก่อนครับ ผมลองเขียน code ให้ส่งเอาท์พุทออกขา DAC0 แล้ว ไม่ได้ครับ รบกวนอาจารย์ให้คำแนะนำหน่อยครับ🙏🙏🙏
@@ภูวดลจําสูญ แนะนำให้หาโครงงานลักษณะเดียวกันนี้หรือคล้ายๆกันนี้ แล้วเอาโค้ดมาทดลอง จะเป็นวิธีที่เข้าใกล้ความเป็นจริงได้เร็วกว่าครับถ้ามันทำงานได้ในระดับนึงเราก็แก้ไขดัดแปลงโค้คครับ
ขอบคุณครับอาจารย์🙏🙏
#เรียนสอบถามครับ#ESP32 NodMCU32S โหลดไม่ผ่านขึ้น Compilation error: #error "Software Serial is not supported on the ESP32" ท่าไดพอมีแนวทางแก้ไขไหมครับ
ESP32 มี hardware Serial ถึง 3 ตัว Serial, Serial1, Serial2 ไม่ต้องไปใช้ Software serial ในโค้ดให้เปลี่ยนไปใช้ Serial2 เลยมีขากำหนดชัดเจน tx2 rx2 สำหรับบอร์ด ESP32-WROOM-32 รุ่น 30 pin ครับ
@@saroj1961 ขอบคุณครับ
ผมสร้างงานจาก stand alone มีจอ TFT Buzzer wifi และ อ่านค่า ADC มีปัญหา คือ เครื่องไม่สามารถเปิดบูตได้ ถ้าถอดสาย โปรแกรม USB ออก พยายามหาข้อมูลเกี่ยวกับการ GPIO Boot ก็ยังแก้ไขไม่ได้ครับ
เอาสาย usb แล้วจ่ายไฟเลี้ยงบอร์ด esp32 ทางไหนครับตรวจสอบว่า regulate 3.3V มีไฟเข้าทาง input หรือไม่
@@saroj1961 batt 7v4. Reg 3v3. ทุดครั้งที่เปิดเครื่อง ต้องมากดreset เองครับ
@@monchai61 ชุด power-on reset ไม่ทำงาน ลองตรวจสอบจากปุ่มรีเซท ไล่กลับไปน่าจะเจอชุด R-C ทำ power -on reset ครับ
c10ufกี่vครับอาจารย์
10v ก็ได้ครับ เนื่องจากไฟของบอร์ดแค่3.3-5v ครับ
มันสามารถอัพโหลด code ผ่าน สาย micro usb ได้เส้นเดียวไหมครับ หรือว่าต้อง ไปทำขั้วต่อ ผ่าน พอต UART ไปยัง usb กับคอมพิวเตอร์ อีก
ช่อง usb ที่ตัวบอร์ดนั่นแหละครับ มันพร้อมอัพโหลดแล้ว เพียงแต่ขนาดกระบวนการ trig เท่านั้นไม่ต้องกังวลครับ บอร์ด esp32 รุ่นหลังๆนี่ เขาจัดการมาให้เรียบร้อยหมดแล้วคลิปนี้ออกมานานแล้ว ผมซื้อบอร์ดมาก็เจอปัญหาเลย ทำตามนั้นแล้วใช้ได้ครับถ้าใครซื้อมาแล้วทดลองอัพโหลดโปรแกรมไฟกระพริบดูก่อนเลย
@@saroj1961 thanks
ในกรณีที่ผมกด bootแล้วเมื่อกับไม่เชื่อมต่อกันจะเกิดจากอะไรครับ
มีหลายปัจจัยนะครับ เอาแบบว่าเจอบ่อยๆ1. สาย usb ไม่ใช่สาย data2. ชิพ usb ช่วงที่เป็น uart ttl เสีย3. usb driver ไม่ทำงานต้องค่อย พิสูจน์ไปครับ
Esp32 ตัวไหนปัญหาน้อยสุดครับ
ผมไม่ได้ใช้ทุกตัวนะครับ ตัวที่ผเลือกใช้คือ ESP32-WROOM-32 และคำถามที่ว่าตัวไหนปัญหาน้อย ต้องตอบว่าตัวมันเองไม่น่าจะมีปัญหา เพียงแต่เราพามันไปอยู่ในสภาพแวดล้อมที่มีปัญหามากกว่าครับ การออกแบบในระบบเอื้อกับการทำงานเป็นการป้องกันปัญหาครับ
สามารถทำให้เชื่อมต่อ WiFi รหัส 2 ชั้นได้ไหมคับ
รหัส 2 ชั้นคือยังไงครับ
ยินดีครับขอบคุณที่ติดตามรับชม
ถ้าผมจะทำ faceunlock นี่ทำไงครับ
มีชาวอินเดียทำคลิปอยู่ครับ ลองหาดูอันที่จริงผมว่ามีทำกันเยอะนะ ส่วนใหญ่ก็ฝรั่งละครับถ้าผมทำได้แล้วจะเอามาลงครับ
ใส่ C 470 uf ได้มั้ยครับ
อยู่ในคลิปครับ
หา ไม่เจอ ว่าพอท ไหน ถอน แล้วเสียบก็เหมือนเดิม
มันก็เหมือนกับไม่ได้เสียบครับ สาเหตุ1. สาย usb ไม่ใช่สาย data2. driver ลงไม่สมบูรณ์ กรณ๊นี้จะมีเครื่องหมายตกใจ หรือ สามเหลี่ยมให้เราเห็น3. บอร์ดเสีย (อันนี้ถ้ามีตัวตัดสินอีกสักตัวก็จะฟันธงได้ง่าย)
@@saroj1961 ได้ละครับ จารย์ เปลี่ยนสายใหม่
@@ipaokub เยี่ยมครับ
พอขึ้นจุดๆๆ ไห้กด bootค้าง ซัก2วิครับ
ใช่ครับกับอีกย่างคือกดค้างไว้เลยพอขึ้น connect ด็ปล่อยมือขอบคุณสำหรับคำแนะนำ
ผมทำตามแล้วครับยังไม่ได้เลย เศร้ามากตอนนี้
ตรวจสอบทีละขั้นครับ1. IDE มองเห็น comport หรือยัง ..เช็คใน device manager ก่อนว่าใช่หรือไม่2. ถ้าเห็นคอมพอร์ต ให้ลองถอดดู คอมพอร์ตนั้นต้องหายไป ใส่กลับมันต้องกลับมาครับ
@@saroj1961 ขอบคุณครับ ยังไงถ้าไม่ได้ ผมจะทักเฟสไปครับ 🙏🏻
ทักทายครับพี่
ซื้อปุ๊บ คลิปนี้เด้งขึ้นมาปั๊บเลยครับ 5555
ยินดีครับถ้ามีประโยชน์ รุ่นหลังๆ ปัญหานี้ไม่มีแล้วครับ
ยังจำได้นะครับ
จำได้สิครับ ติดตามรายการอาหารอยู่นะ ผมก็ทำอาหารรับประทานเองอยู่บ่อยๆครับ
พี่ครับของผม ซื้อใหม่ๆ เลยครับ อัพโหลดได้แต่ โค้ดไม่ทำงาน แต่ อีกตัวโค้ดทำงานนี้ มันมีสาเหตุอะไรบ้างครับ
บอกไม่ได้หรอกครับ แต่มันมีวิธีการการหาปัญหาก็ต้องทำการ debug ครับ....คือการที่โปรแกรมไม่ทำงานเราต้องหาว่ามันไปหยุดตรงไหนเอา Serial.print("อะไรก็พิมพ์ออกไป") ตรงที่เราอยากรู้ว่าโปรแกรมมันทำงานมาถึงตรงนั้นหรือไม่ ถ้าไม่ถึงก็ไล่ย้อนกับไปเรื่อยๆ แล้วคุณจะเห็นว่าปัญหามันน่าจะมาจากส่วนไหน
รบกวนถามหน่อยครับ ผมซื้่อบอร์ด ที่ใช้ ESP32 WROOM 4 relay ใช้ CP2102 ต่อเขียนคำสั้งง่าย ๆ ดูจากคลิปอาจารย์ และกดปุ่ม D01 ที่อยู่ข้าง ๆ ปุ่ม EN แต่ก็ไม่สามารถconnectได้ครับ พอจะให้คำแนะนำเพิ่มเติมหรือเปล่าครับ
ปัญหามันมีหลายประการที่ทำให้อัพโหลดไม่ได้
1. pc มองเห็น comport หรือยัง?
- ดูไดรเวอร์ ดูสาย usb
2.ถ้าเห็น comport ให้เปิด Serial Monitor
- กดปุ่มรีเซท (en) ที่บอร์ด ต้องมีข้อมูลขึ้นที่ Sial monitor
- ถ้าไม่มีอะไรขึ้น ปัญหาอาจอยู่ที่การรับส่ง rx txจาก mcu ไป usb
3. ปุ่ม boot เองกดแล้ว อาจไม่จ่าย gnd ไปยังขา GPIO0
ฯลฯ
ใช้ Esp32 เหมือนกันครับ
ต้อนนี้ใช้วิธีจิ้มปุ่ม flash ระหว่าง upload เอาครับ
ต่อ C เข้าไปสักตัวชีวิตจะสะดวกขึ้นอีกหน่อย
เพิ่มเติมครับ
ที่เคยถามผมไว้เรื่อง Task (ถ้าไว้ในอีกคลิปหนึ่ง )
ผมเอามาตอบในคลิปนี้เพราะว่า multi thread มันทำได้บนบอร์ด ESP32 ซึ่งเป็น Dual core
ถ้าเร่งด่วน ก็ดูของเจ้านี้ได้เลยอธิบายละเอียดมาก
ua-cam.com/video/jpVcCmh8sig/v-deo.html
@@saroj1961
ขอบคุณครับ เดียวจะลองศึกษาดูครับ
ขอเล่านิดนึง นะครับ พอดี ตอนนี้ ผมทำ project Iot เพืออ่านค่า volt/amp ของ solar cell ที่บ้าน ด้วย ESP32/ESP8266
ใน code มีการทำงานหลักๆอยู่ 2 อย่าง คือ
- อ่านค่า volt/amp จาก PZEM
- และอีกอย่าง คือ รับคำสั่งจาก api เพือส้่งงาน RElay switch
ใน void loop() { .. } ผมใช้ delay เพือเป๋นการ หน่วงเวลาในการอ่านค่าจาก PZEM
ถ้าตั้งถี่ไป มันขอบอ่านค่าไม่ทัน หรือชอบค้าง เลยจำเป่้นต้อง Delay ไว้ประมาณ 3 วิ
ปัญหาคือ พอผมใส่ Deplay(3000) พอผมส่งงาน เพื่อให้ trigger Relay (บางที) มันไม่ทำงานทันที
เพราะมันต้องรอรอบ (รอบที่ผมใส่ delay 3 sec ไว้) กลายเป็นว่า มันต้องรอ ให้ครบ 3 วิ ก่อน ถึง ทำงาน step ต่อไป แทนที่มันจะ trigger relay ทันที
ถ้ามี Relay หลาายๆ ตัว นี้ กด สั่งพร้อมๆ กัน รู้สึกไม่ทันใจ เท่าไร
ผมเลยคิดว่า ถ้ามี task เข้ามาช่วยคงจะดี มันจะได้ทำงาน ทันทีหลังจาก call api เพือสั่งงาน Relay swich
โดย thead แยกกัน ระหว่าง อ่านค่าจาก device และ รับคำสั่ง relay
(PZEM ที่ผมใช้อยู่)
th.aliexpress.com/i/32913960037.html
ua-cam.com/video/-27RCMravCk/v-deo.html
@@watcharapongsri5484 โหทำได้ขนาดนี้มาตายตรง delay()
เข้าใจเลยครับ คือปัญหานี้ อาจแก้ด้วย thread
ใน ESP32 นะครับ (จากตัวอย่างใครลิงค์ที่แปะไว้ให้)
ได้แต่ปัญหาที่ตามมาแล้วผมยังไม่ได้ทดลองคือ แต่ละ Thread มันแยก working arear กันเลย ไม่รู้ว่ามันส่งผ่านตัวแปรข้ามไปหากันได้มั๊ย
...
แต่ถึงอย่างไรในแต่ละเรื่องที่ต้องผ่าน delay ก็จะเจอปัญหาอยู่ดี
ทางแก้ (ซึ่งต้องแก้ ไม่ว่าจะ มี multi thread)หรือไม่ คือ
การใช้ mills() มาจัดการแทน delay() ทุกตัว
มันคงคุยกันยาว inbox หาผมทาง facebook โทรคุยกันทาง massenger จะรู้เรื่องเร็วกว่าครับ
(ดูช่องทางการติดต่อ ในรายละเอียดใต้คลิปครับ)
@@saroj1961 เดียวจะลองเอา mills() มาใช้ดู ว่ามันจะแก้ปัญหาตรงนี้ได้ไหม ขอบคุณมากครับพี่
ขอบคุณมากๆ ครับ มีประโยชน์มากครับ
ยินดีครับ
ขอบคุณที่ติดตามชม และติดตามช่องนะครับ
eps32 พอถอดปลั๊กไฟเลี้ยงออก มันไม่กลับมาทำในเงื่อนไขใหม่เหรอครับ
อย่างเช่น 9.00 - 20.00 ให้ปริ้น ข้อความออกมา พอถอดปลั๊กเสียบใหม่ ไม่ทำในเงื่อนไขนี้แล้วครับ ไม่ปริ้นข้อความออกมาแล้วครับ
มีวิธีแก้ไขไหมครับ ขอบคุณครับ
มันไม่ใช่แค่ขา DTR ครับ แต่เปิดการทำงานของทั้ง DTR/RTS ร่วมกัน
ตามปกติ ESP32 หลังจากมันเริ่มทำงานหากขา 0 เป็น High มันจะเข้าสู่โหมด SPI Boot (โหมดทำงานปกติ)
แต่ถ้าขา 0 และ 2 เป็น Low มันจะเข้าสู่โหมด Download Boot (โหมดรอรับ Firmware)
ซึ่งไอ้ขา 0 นี่มันก็คือขา Boot นั่นแหละ ส่วนขา 2 มันมี R Pull-down อยู่ในตัวชิปอยู่แล้วจึงเป็น Low แน่นอน
ลองทดสอบโดยการเอาขา 2 ขึ้น High ดูจะเห็นว่ามันไม่เข้า Download Boot เช่นกัน
ทีนี้การใช้งานปกติเราก็แค่กดขา 0 (บนบอร์ดจะเขียนว่า Boot) ให้เป็น Low ตอนที่จ่ายไฟมัน มันก็จะพร้อมรับโปรแกรมแล้ว
แต่ที่ทั่วไปเราไม่ต้องกดด้วยตัวเองเป็นเพราะบอร์ดพัฒนาเหล่านี้มันลักไก่โดยการเอาขา DTR กับ RTS ไปเปิดทรานซิสเตอร์ไขว้ (XOR logic) ที่จะดึง EN กับ Boot ลง GND นั่นเอง
ทีนี้ก็อาศัยการเปิด Serial port ของ IC บนบอร์ดที่มาด้วยกัน (ส่วนใหญ่ CH340G ไม่ก็ CP2102) มันจะดึง RTS และ DTR ลงสลับกันตามลำดับ เท่ากับว่าเป็นเหมือนการกด Reset ตามด้วย Boot นั่นเอง
แต่บอร์ดที่มันมีปัญหาตามที่เห็น มันมาจาก esptool ที่คุณใช้มันเป็นตัวเก่า มันมีบัคที่ทำให้ Arduino มันไม่เปิดปิด serial port ซ้ำๆ เราจึงต้องกด Boot แช้แล้ว Reset ในระหว่างการโปรแกรม
และการที่เอา C ไปต่อเข้าขา EN ก็เป็นการเพิ่มระยะเวลาเปิดตัวของชิปเพื่อให้ตัวชิปมันเริ่มต้นช้าลงจะได้เปิดมาทันขา 0 โดน DTR ดึงลง GND พอดี
ต้องอธิบายเพิ่มนิดนึงทำไมต่อ C จาก EN ลง GND ถึงทำให้ชิปเริ่มทำงานช้าลง
ขา EN ของ ESP32 นั้นคือขา Chip Enable แปลว่า เปิดใช้งานชิป ซึ่งถ้ามันเป็น High ชิปก็จะทำงาน
ทีนี้ใน Datasheet ของ ESP32 เค้าแนะนำให้ทำวงจร RC delay ให้ขา EN เพื่อหน่วงเวลาการเปิดทำงานของชิป ซึ่งมีไว้ป้องกันไฟไม่นิ่งในระหว่างการเริ่มทำงาน
ขา EN ในบอร์ดส่วนใหญ่จึงมี R pull-up 10k กับ C 0.1uF ลง GND มาอยู่แล้ว (ค่าที่เค้าแนะนำใน Datasheet คือ 10k/1uF หรือก็คือ 63% ใน 10ms แต่ก็ปรับตามเสป็คแหล่งจ่ายของแต่ละคน)
ทีนี้พอเราเอา C ไปใส่ให้มันก็กลายเป็นว่าเราไปเพิ่มค่า C ลง GND ให้สูงขึ้น ส่งผลให้ชิปมันเริ่มทำงานช้าลง ทำให้มันเปิดมาทันการกดขา 0 ลง GND จาก DTR นั่นเอง
ขอบคุณครับ
ความรู้แน่น ๆ ขอบคุณมากครับ
ขออนุญาตสอบถามครับ ผมใช้บอร์ด Arduino DUE อยากส่งสัญญาณเสียงออกขา DAC ต้องเขียน code ยังไงครับ ขอบคุณครับ
เป็นคำถามที่ตอบยากที่สุดครับ
input-process-output
การที่เราจะเขียนโปรแกรมจะติดต่อกับสิ่งใดต้องรู้ว่าสิ่งนั้นต้องการอะไรเป็นอินพุท และคำสั่งที่จะสั่งการเขาเป็นอย่างไร
การทำงานจะเป็นแบบ รับอินพุทเป็นสัญญาณเสียงจากไมค์โครโฟน แล้วส่งเอาท์พุตเป็นสัญญาณเสียงออกลำโพงครับ อยากทดลองง่ายๆแบบนี้ก่อนครับ ผมลองเขียน code ให้ส่งเอาท์พุทออกขา DAC0 แล้ว ไม่ได้ครับ รบกวนอาจารย์ให้คำแนะนำหน่อยครับ🙏🙏🙏
@@ภูวดลจําสูญ แนะนำให้หาโครงงานลักษณะเดียวกันนี้หรือคล้ายๆกันนี้ แล้วเอาโค้ดมาทดลอง จะเป็นวิธีที่เข้าใกล้ความเป็นจริงได้เร็วกว่าครับ
ถ้ามันทำงานได้ในระดับนึงเราก็แก้ไขดัดแปลงโค้คครับ
ขอบคุณครับอาจารย์🙏🙏
#เรียนสอบถามครับ#
ESP32 NodMCU32S โหลดไม่ผ่านขึ้น Compilation error: #error "Software Serial is not supported on the ESP32" ท่าไดพอมีแนวทางแก้ไขไหมครับ
ESP32 มี hardware Serial ถึง 3 ตัว Serial, Serial1, Serial2
ไม่ต้องไปใช้ Software serial ในโค้ดให้เปลี่ยนไปใช้ Serial2 เลยมีขากำหนดชัดเจน tx2 rx2 สำหรับบอร์ด ESP32-WROOM-32 รุ่น 30 pin ครับ
@@saroj1961 ขอบคุณครับ
ผมสร้างงานจาก stand alone มีจอ TFT Buzzer wifi และ อ่านค่า ADC
มีปัญหา คือ เครื่องไม่สามารถเปิดบูตได้ ถ้าถอดสาย โปรแกรม USB ออก
พยายามหาข้อมูลเกี่ยวกับการ GPIO Boot ก็ยังแก้ไขไม่ได้ครับ
เอาสาย usb แล้วจ่ายไฟเลี้ยงบอร์ด esp32 ทางไหนครับ
ตรวจสอบว่า regulate 3.3V มีไฟเข้าทาง input หรือไม่
@@saroj1961 batt 7v4. Reg 3v3.
ทุดครั้งที่เปิดเครื่อง ต้องมากดreset เองครับ
@@monchai61 ชุด power-on reset ไม่ทำงาน
ลองตรวจสอบจากปุ่มรีเซท ไล่กลับไปน่าจะเจอชุด R-C ทำ power -on reset ครับ
c10ufกี่vครับอาจารย์
10v ก็ได้ครับ เนื่องจากไฟของบอร์ดแค่3.3-5v ครับ
มันสามารถอัพโหลด code ผ่าน สาย micro usb ได้เส้นเดียวไหมครับ หรือว่าต้อง ไปทำขั้วต่อ ผ่าน พอต UART ไปยัง usb กับคอมพิวเตอร์ อีก
ช่อง usb ที่ตัวบอร์ดนั่นแหละครับ มันพร้อมอัพโหลดแล้ว เพียงแต่ขนาดกระบวนการ trig เท่านั้น
ไม่ต้องกังวลครับ บอร์ด esp32 รุ่นหลังๆนี่ เขาจัดการมาให้เรียบร้อยหมดแล้ว
คลิปนี้ออกมานานแล้ว ผมซื้อบอร์ดมาก็เจอปัญหาเลย ทำตามนั้นแล้วใช้ได้ครับ
ถ้าใครซื้อมาแล้วทดลองอัพโหลดโปรแกรมไฟกระพริบดูก่อนเลย
@@saroj1961 thanks
ในกรณีที่ผมกด bootแล้วเมื่อกับไม่เชื่อมต่อกันจะเกิดจากอะไรครับ
มีหลายปัจจัยนะครับ เอาแบบว่าเจอบ่อยๆ
1. สาย usb ไม่ใช่สาย data
2. ชิพ usb ช่วงที่เป็น uart ttl เสีย
3. usb driver ไม่ทำงาน
ต้องค่อย พิสูจน์ไปครับ
Esp32 ตัวไหนปัญหาน้อยสุดครับ
ผมไม่ได้ใช้ทุกตัวนะครับ ตัวที่ผเลือกใช้คือ ESP32-WROOM-32
และคำถามที่ว่าตัวไหนปัญหาน้อย ต้องตอบว่าตัวมันเองไม่น่าจะมีปัญหา เพียงแต่เราพามันไปอยู่ในสภาพแวดล้อมที่มีปัญหามากกว่าครับ
การออกแบบในระบบเอื้อกับการทำงานเป็นการป้องกันปัญหาครับ
สามารถทำให้เชื่อมต่อ WiFi รหัส 2 ชั้นได้ไหมคับ
รหัส 2 ชั้นคือยังไงครับ
ขอบคุณครับ
ยินดีครับ
ขอบคุณที่ติดตามรับชม
ถ้าผมจะทำ faceunlock นี่ทำไงครับ
มีชาวอินเดียทำคลิปอยู่ครับ ลองหาดู
อันที่จริงผมว่ามีทำกันเยอะนะ ส่วนใหญ่ก็ฝรั่งละครับ
ถ้าผมทำได้แล้วจะเอามาลงครับ
ใส่ C 470 uf ได้มั้ยครับ
อยู่ในคลิปครับ
หา ไม่เจอ ว่าพอท ไหน ถอน แล้วเสียบก็เหมือนเดิม
มันก็เหมือนกับไม่ได้เสียบครับ สาเหตุ
1. สาย usb ไม่ใช่สาย data
2. driver ลงไม่สมบูรณ์ กรณ๊นี้จะมีเครื่องหมายตกใจ หรือ สามเหลี่ยมให้เราเห็น
3. บอร์ดเสีย (อันนี้ถ้ามีตัวตัดสินอีกสักตัวก็จะฟันธงได้ง่าย)
@@saroj1961 ได้ละครับ จารย์ เปลี่ยนสายใหม่
@@ipaokub เยี่ยมครับ
พอขึ้นจุดๆๆ ไห้กด bootค้าง ซัก2วิครับ
ใช่ครับ
กับอีกย่างคือกดค้างไว้เลยพอขึ้น connect ด็ปล่อยมือ
ขอบคุณสำหรับคำแนะนำ
ผมทำตามแล้วครับยังไม่ได้เลย เศร้ามากตอนนี้
ตรวจสอบทีละขั้นครับ
1. IDE มองเห็น comport หรือยัง ..เช็คใน device manager ก่อนว่าใช่หรือไม่
2. ถ้าเห็นคอมพอร์ต ให้ลองถอดดู คอมพอร์ตนั้นต้องหายไป ใส่กลับมันต้องกลับมาครับ
@@saroj1961 ขอบคุณครับ ยังไงถ้าไม่ได้ ผมจะทักเฟสไปครับ 🙏🏻
ทักทายครับพี่
ซื้อปุ๊บ คลิปนี้เด้งขึ้นมาปั๊บเลยครับ 5555
ยินดีครับถ้ามีประโยชน์ รุ่นหลังๆ ปัญหานี้ไม่มีแล้วครับ
ยังจำได้นะครับ
จำได้สิครับ
ติดตามรายการอาหารอยู่นะ ผมก็ทำอาหารรับประทานเองอยู่บ่อยๆครับ
พี่ครับของผม ซื้อใหม่ๆ เลยครับ อัพโหลดได้แต่ โค้ดไม่ทำงาน แต่ อีกตัวโค้ดทำงานนี้ มันมีสาเหตุอะไรบ้างครับ
บอกไม่ได้หรอกครับ แต่มันมีวิธีการ
การหาปัญหาก็ต้องทำการ debug ครับ
....
คือการที่โปรแกรมไม่ทำงานเราต้องหาว่ามันไปหยุดตรงไหน
เอา Serial.print("อะไรก็พิมพ์ออกไป") ตรงที่เราอยากรู้ว่าโปรแกรมมันทำงานมาถึงตรงนั้นหรือไม่
ถ้าไม่ถึงก็ไล่ย้อนกับไปเรื่อยๆ แล้วคุณจะเห็นว่าปัญหามันน่าจะมาจากส่วนไหน