เลิก งง NodeMCU ทำไมมีหลายเวอร์ชั่นนัก

NodeMCU หลายท่านที่เข้ามาอ่านคงกำลังอยู่ในวังวนของความ งง ว่าทำไมชื่อ NodeMCU มันมีหลายเวอร์ชั่นจัง ซื้อมาแล้วเขาเรียกว่าอะไร มีข้อเสียยังไง แล้วควรเลือกตัวไหนดี บทความนี้จะเผยรายละเอียดทั้งหมดกับ NodeMCU ทั้งแต่ขั้นเบสิกจนไปถึงลึก ๆ จากประสบการณ์คนขาย NodeMCU ไปมากพอสมควร

Continue reading

CH340x จริง ๆ ก็ใช้ไม่ยาก แถมราคาถูก … ?

CH340x เป็นชิปไอซีแปลง USB เป็น UART ยอดนิยมจากประเทศจีน เรียกว่าแทบทุกบอร์ดที่มีวงจรแปลง USB to UART ต้องใช้เบอร์นี้แน่นอน (ไม่ก็ CP210x) หลาย ๆ คนที่ผมพอจะรู้จักก็ไม่แนะนำให้ใช้เบอร์นี้เท่าไร เพราะไม่เสถียร มักจะแนะนำให้ไปใช้พวกตะกูล FTDI เอา (ด้วยเหตุผลหลาย ๆ อย่าง) แต่ด้วยราคาของ FTDI ที่แพงเหลือคณานับ จึงอยากใช้ CH340x นี่แหละ ถูกดี

Continue reading

ปัญหากระแสรั่วไหลจากการขับทรานซิสเตอร์ไม่ถูกต้อง

ผมค้นพบปัญหานี้ด้วยตัวเองเมื่อตอนพยามจะทำวงจรตัดไฟให้กับ ESP8266 เพื่อให้ใช้กระแสไฟฟ้าจากแบตเตอรี่ให้น้อยที่สุดเท่าที่จะเป็นไปได้ ปัญหากระแสรั่วไหลจากการออกแบบวงจรโดยคาดไม่ถึงว่าคุณสมบัติของทรานซิสเตอร์จะทำให้เกิดปัญหากระแสรั่วไหล ไปขับมอสเฟสให้ปล่อยกระแส ผลคือมอสเฟสไม่ตัดวงจรสนิท ทำให้มีกระแสในระดับ 5mA รั่วไหลเข้าวงจร ทั้ง ๆ ที่ผลที่ได้ควรจะเป็น 0A โดยสมบูรณ์

Continue reading

ซิงโคนัส กับ อะซิงโคนัส ต่างกันอย่างไร ? (ฉบับเข้าใจคนเดียว)

เมื่อก่อนตอนเรียนหลาย ๆ วิชา คำว่า ซิงโคนัส อะซิงโคนัส มักจะโผล่มา และผมไม่เคยเข้าใจ 2 คำนี้เลยแม้แต่น้อย แม้จะได้ยินมาจากวิชาใด ๆ ก็ตาม แต่ไม่นานมานี้ (2 ปีที่แล้ว) ผมได้ศึกษารายละเอียดเกี่ยวกับการสื่อสารแบบอนุกรม และได้เข้าใจเสียทีว่าการสื่อสารแบบซิงโคนัส และอะซิงโคนัส ต่างกันอย่างไร เนื้อหาในย่อหน้าต่อไปนี้จึงพิมพ์ออกมาจากความเข้าใจส่วนตัวล้วน ๆ ไม่รับประกันว่าท่านจะเข้าใจหรือไม่นะ

Continue reading

[ESP32 Arduino] การแก้ตำแหน่งและขนาดของ partition

Partition เปรียบเสมือนไดร์ต่าง ๆ บนเครื่องคอมพิวเตอร์ของเรา เดิมพื้นที่โปรแกรมที่ 1 และ 2 ของ ESP32 ที่กำหนดไว้เป็นค่าเริ่มต้น กำหนดไว้อย่างละ 1310720 ไบต์ (1.25MB) ดังนั้นพื้นที่เก็บโปรแกรมที่ 1 และที่ 2 รวมกันจึงอยู่ที่ 2.5MB แต่หากโปรแกรมของท่านมีขนาดใหญ่ จำเป็นต้องแก้ตำแหน่ง (ผู้พัฒนาใช้คำว่า offset) และขนาด สามารถทำได้โดยมีขั้นตอนดังนี้

Continue reading

บันทึกผลการศึกษาเรื่องจอ LCD TFT ลึกระดับปานกลาง

ก่อนอื่นต้องขอบอกขอบเขตของบันทึกนี้ก่อนนะครับ

บันทึกนี้เป็นบันทึกที่จะใช้ “รื้อฟื้น” ความรู้ทั้งหมดที่ได้ศึกษาในช่วงนี้ เนื่องจากข้อมูลที่เข้ามาในแต่ละวันมีมากมายเหลือเกิน จึงเป็นเรื่องปกติที่มนุษย์เราจะพยายามลืมบางอย่างเพื่อให้สมองไม่บอบช้ำ การแก้ปัญหาของผมจึงเน้นไปที่การเขียนบทความในสิ่งที่ตกเองรู้ แล้วเผยแพร่ออกสู่สาธาณะ เพื่อให้มั่นใจได้ว่า ความรู้ที่มีอยู่จะไม่สูญหาย และสามารถเรียกกลับมาใช้ได้ตลอดเวลา

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

Continue reading

while() คำสั่งที่มือใหม่ต้องรู้จัก

สวัสดีครับ ~~ หลังจากที่ไม่ได้อัพบล็อกไปนาน ครั้งนี้กลับมาอัพบล็อกเรื่องเล็ก ๆ น้อย ๆ เกี่ยวกับคำสั่ง while() ใน Arduino หรือ ไมโครคอนโทรลเลอร์ครับ

Continue reading

RFID + Arduino ปลดล็อกเครื่องคอมพิวเตอร์

ก่อนหน้านี้ประมาณ 3 – 4 วันก่อน มีไอเดียเกี่ยวกับความปลดภัยผุดขึ้นมา เป็นไอเดียการปลดล็อกเครื่องคอมพิวเตอร์สำหรับห้องปฎิบัติการคอมพิวเตอร์ ในสถานศึกษา แนะคิดคือการป้องกันไม่ให้ใครก็ได้เข้ามาใช้งานเครื่อง PC หากไม่ใช่คนที่มีสิทธิ์จริง ๆ หนึ่งในสิ่งของที่นักเรียน นักศึกษา ต้องมี คือบัตรประจำตัวนักศึกษา และในตอนนี้บัตรประจำตัวนักศึกษาส่วนใหญ่ก็เป็นแบบ RFID แล้วด้วย เหมาะสำหรับนำมาใช้งานเกี่ยวกับการยืนยันตัวตนอยู่แล้ว ผมจึงได้เลือกใช้บัตร RFID มาควบคุมการเข้าใช้งานคอมพิวเตอร์ (เป็นตัวอย่างเพื่อนำไปประยุกต์ แก้ไขให้ดียิ่งขึ้น)

Continue reading

[Advanced Arduino] เมื่อ digitalWrite() digitalRead() ช้าเกินไป

เมื่อไม่นานมานี้ผมได้ศึกษาเกี่ยวกับการสื่อสารข้อมูลแบบ One Wire กับไอซีวัดอุณหภูมิ DHT11 แล้วก็พบว่ามันเป็นโปรโตคอลสื่อสารที่มีรูปแบบการรับ – ส่งข้อมูลที่ใช้ยากพอสมควร จะต้องเข้าใจทามมิ่งไดอแกรม และต้องใช้ความเร็วสูงมากในการอ่านค่าข้อมูล ซึ่งผมได้ลองทำไลบารี่ขึ้นมาแล้วใช้คำสั่ง digitalWrite() digitalRead() ไม่ Work อย่างมากครับ ทั้ง 2 คำสั่งนี้ใช้เวลาในการอ่านค่าและเขียนค่านานมากๆ ต้องใช้คลื่นหลายไซเคิลมากกว่าจะสามารถอ่าน – เขียนได้ ดังนั้นเพื่อความรวดเร็วจึงต้องหันไปใช้งานรีจิสเตอร์แทน ซึ่งผมทดสอบแล้วได้ความเร็วที่สุดยอดมากครับ ใช้ไซเคิลเดียวในการอ่านค่า หรือเขียนค่า ทำให้สามารถนำไปทำไลบารี่ One Wire ได้ครับ

Continue reading

พรีวิว LAMBDA บอร์ด Arduino Compatible ของไทยในราคาน่าคบ

Preview LAMBDA Board

*** บอร์ด LAMBDA ที่ผมได้มาเป็นรุ่น Beta Test ได้มาจากงานเปิดตัว รุ่นขายจริงจะมีการแก้ไข ***

วันที่ 2 เมษาที่ผ่านมา เป็นวัน Genuino (หรือ Arduino) Day ที่จัดขึ้นพร้อมกับทั่วโลก ที่ประเทศไทยของเราได้จัดขึ้นกันที่ PINN Creative Space และได้มีการเปิดตัวบอร์ด Arduino Compatible อยู่ 2 ตัวด้วยกัน (และบอร์ดอื่นๆ) หนึ่งในบอร์ด Arduino Compatible ที่เปิดตัวก็คือ บอร์ด LAMBDA

Continue reading