ผมเขียนโค้ดให้ NeW Blynk แสดงค่าเซนเซอร์วัดแสงไปที่จอLCD แต่ LCD แสดงค่าได้แปบเดียวแล้ว LCDก็เป็นภาษาต่างดาวครับ มันเกิดจากอะไรหรอครับ ผมลองหาวิธีแก้ก็ไม่มีเลย พี่ๆช่วยผมด้วยครับ

เดี๋ยวโค้ดผมเอามาวางให้ดูครับ

เบื้องต้นถ้าใช้​ esp32​ โดยการใช้​ task เข้ามาช่วย​ จอlcd ควรจะอยู่ที่​ core เดียวกันนะครับ​ ถ้าเอาโค้ด​ จอ​ lcd​ ไปวางต่าง​ core อีกกันมันจะทำงานได้สักพัก​ แล้วจะเกิดตัว​ อักษรเพี้ยน​ เนื่องจากโค้ดมันทำงาน​ 2 core พร้อมกัน​ มันทำไม่ทัน​ blynk​ ก็เช่นกันครับ

เป็นเหมือนผมเลย ผมเลยเลิกใช้lcdไปเลย
ขอ อนุญาติ จขกท.​แทรกถามหน่อยครับ
1ผมnodemcu8266 ซึ่ง มีcoreเดียว เป็นภาษาต่างดาวเหมือนกัน​
มีวิธีแก้ไหมครับ
2.ขอเป็นความรู้หน่อยว่า จะกำหนดอย่างไรให้มันทำงานในคอร์เดียวกัน​ในesp32
ขอบคุณ​ครับ​

อันนี้ไม่มีหลักการอะไรนะครับ​ แค่เล่าจากประสบการณ์
Eep8266​ ต้องดู
1.เรื่องโค้ดของเวลา​ ที่จะให้แสดงผลในจอแอลซีดี​ ทั้งใน​ Loop​ ทั้ง​ void function ย่อยๆ​ ว่า​ เร็วเกินไปมั๊ย​ แรกๆทำงานได้หลังๆ​ เพี้ยน
2.ถ้า​ข้อ​ 1. ผ่าน​ ก็ไปดูว่า​ esp8266​ ของเราต่อเข้ารีเลย์​ แล้วไปขับโหลดอะไรเช่น​ ถ้าต่อแต่ปิดเปิดหลอดไฟ​ ก็ไม่ค่อยมีปัญหาอะไร​ แต่ถ้าเอาไปเปิดโหลดมอเตอร์​ เช่นพัดลม​ หรือโหลด​ L บางครั้งมันจะเกิด​ สนามแม่เหล็กขึ้น​ ซึ่งส่งผลให้ esp8266​ รีสตาร์ทบ่อยเมื่อสั่งให้อุปกรณ์เหล่านี้ทำงาน​ โดยบางครังจะทำให้​ ข้อความในจอ​ lcd​ เพี้ยนด้วย

Esp32​
ก็ให้ทำงานที่​ core 1 ไปเลยก็ได้ครับ

ขอบคุณครับ