♨ ไมโครคอนโทรลเลอร์ (MCU)

การเขียนโปรแกรม ด้วย ไมโครคอนโทรลเลอร์ microcontroller คือ ชิพประมวลผลชนิดหนึ่ง เป็นสมองของหุ่นยนต์ ไมโครคอนโทรลเลอร์ช่วยให้นักออกแบบในการติดต่อเซ็นเซอร์ เพื่อควบคุมอุปกรณ์ต่างๆ ให้ทำงานได้.  (มักย่อว่า µC, uC หรือ MCU) คือ อุปกรณ์ควบคุม. ขนาดเล็ก ซึ่งบรรจุความสามารถที่คล้ายคลึงกับระบบคอมพิวเตอร์ .

Internet of Things แสดงผลอุณหภูมิ DHT11

Internet of Things แสดงผลอุณหภูมิ DHT11 บทความนี้เราจะเรียนรู้วิธีการเชื่อมต่อเซ็นเซอร์อุณหภูมิและความชื้นยอดนิยม DHT11 กับไมโครคอนโทรลเลอร์ ESP32 โดย DHT11 เป็นเซ็นเซอร์วัดอุณหภูมิและความชื้น เพื่อวัดอุณหภูมิและความชื้นของบรรยากาศในสภาพแวดล้อมเฉพาะหรือในพื้นที่ปิดที่ จำกัด และ แสดงผลผ่านทางเครือข่ายอินเตอร์เน็ต ดูได้ทั่วโลก ที่เว็บไซต์ http://www.iotsiam.net/ ด้วยเทคโนโลยี…

การติดตั้ง Driver CH340G บน Windows 10

การติดตั้ง Driver CH340G บน Windows 10 สำหรับการติดต่อสื่อสารหรือจะอัปโหลดโปรแกรมลงบอร์ด PLC หรือบอร์ดอื่นๆ ที่ใช้ชิป USB to Serial CH340 หรือ CH340G นั้น บนระบบปฏิบัติการ Windows จำเป็นต้องติดตั้ง…

การใช้งานจอ LCD 1602 กับ Arduino Keyestudio PLUS

การใช้งานจอ LCD 1602 กับ Arduino บทความนี้ กล่าวถึงขั้นตอนการใช้งานจอ I2C LCD 1602 กับ Arduino Keyestudio PLUS โดยใช้ Character LCD เป็นจอที่แสดงผลเป็นตัวอักษรตามช่องแบบตายตัว เช่น จอ LCD…

การใช้งาน ATmega32 ภาษาซี กับ 7 Segment

การใช้งาน ATmega32 ภาษาซี กับ 7 Segment Seven Segment Display (SSD) เป็นอุปกรณ์แสดงผลแบบคลาสสิกสำหรับอุปกรณ์อิเล็กทรอนิกส์ดิจิทัลระดับล่าง 7 Segment คือหน้าจอแสดงผลตัวเลข – ตัวอักษร (ได้บางตัว) ที่มีหน้าจอทำมาจากการจัดวางหลอด LED ในแนวยาว…

โปรแกรมแรก ภาษาปาสคาล กับ Arduino

โปรแกรมแรก ภาษาปาสคาล กับ Arduino ตัวอย่างง่ายๆซึ่งจะใช้ช่องทางติดต่อการสื่อสารผ่านพอร์ทอนุกรม (Serial Port) จากคอมพิวเตอร์ไปที่ Arduino UNO R3 เพื่อทำการควบคุมการทำงาน เปิด/ปิด หลอดไฟ LED ที่เชื่อมต่อกับขา 13 ซึ่งมาพร้อมกับบอร์ดอยู่แล้ว โดยใช้ แอปพลิเคชั่นลาซารัส…

เปิดปิดไฟ LED ของ Arduino ด้วยภาษา C#

เปิดปิดไฟ LED ของ Arduino ด้วยภาษา C# ตัวอย่างง่ายๆซึ่งจะใช้ช่องทางติดต่อการสื่อสารผ่านพอร์ทอนุกรม (Series Port) จากคอมพิวเตอร์ไปที่ Arduino UNO R3 เพื่อทำการควบคุมการทำงาน เปิด/ปิด หลอดไฟ LED ที่เชื่อมต่อกับขา 13 ซึ่งมาพร้อมกับบอร์ดอยู่แล้ว…

โปรแกรมแรก กับ ATmega32 Board

โปรแกรมแรก กับ ATmega32 Board สำหรับไมโครคอนโทรลเลอร์ Atmega328 เป็นไอซีไมโครคอนโทรลเลอร์ของบริษัท Atmel มีโครงสร้าง ภายในเป็นแบบ RISC (Reduced instruction set Computer) มีหน่วยความจำโปรแกรมภายในเป็นแบบแฟลช สามารถเขียน-ลบโปรแกรมใหม่ได้หลายครั้ง โปรแกรมข้อมูลเป็นแบบ In-System programmable…

โปรแกรมแรก กับ บอร์ด micro:bit

โปรแกรมแรก กับ บอร์ด micro:bit ในโลกของการเขียนโปรแกรม “Hello World” คือ คำที่นิยมใช้เวลาเริ่มเขียนโปรแกรมแรก (มักเป็นโปรแกรมง่ายๆ เพื่อทดสอบการทำงาน ว่าสามารถทำงานได้จริง) ในโลกของอิเล็กทรอนิกส์ก็เช่นกัน “Hello World” ก็คือ การทำ “ไฟกระพริบ” ด้วยตัวอย่างโปรแกรมแรก กับ…

ภาษาแอสเซมบลี ปุ่มขัดจังหวะ interrupt

AVR ภาษาแอสเซมบลี #6 ปุ่มขัดจังหวะ interrupt

ภาษาแอสเซมบลี ปุ่มขัดจังหวะ interrupt อินเตอร์รัพท์ (Interrupt) คือการขัดจังหวะการทำงานของโปรแกรมปกติ เมื่อเกิดเหตุการณ์บางอย่างขึ้น ทำให้ซีพียูไปทำงานที่กำหนดไว้เมื่อเกิดอินเตอร์รัพท์ คำสั่ง Interrupt ใน ATtiny13 คือ การขัดจังหวะ คำสั่งนี้มีประโยชน์มาก โดยเมื่อ ATtiny13 ได้รับสัญญาณ Interrupt แจ้งเข้ามา…

AVR ภาษาแอสเซมบลี #5 ควบคุมความสว่าง LED ด้วย PWM

ภาษาแอสเซมบลี ควบคุมความสว่าง LED ด้วย PWM จนถึงตอนนี้เราใช้ไฟ LED กะพริบ ตอนนี้เรากะพริบต่อไป แต่ด้วยความถี่สูง ด้วยการกะพริบนั้นเราจะเปลี่ยนมาควบคุมความสว่างของหลอดไฟ LED และนี่เป็นลักษณะเชิงเส้นที่แน่นอน ความรู้เบื้องต้นเกี่ยวกับโหมด PWM ของตัวจับเวลา การมอดูเลตความกว้างพัลส์ PWM หมายถึงการมอดูเลตความกว้างของพัลส์ ในการทำเช่นนี้ตัวจับเวลาในการรีสตาร์ทตั้งค่าหรือล้างเอาต์พุต…

AVR ภาษาแอสเซมบลี #4 ไฟกระพริบ ด้วย Timer

ภาษาแอสเซมบลี ไฟกระพริบ ด้วย Timer ในบทความนี้จะโบกมือลาให้กับการนับลูปที่ยาวและน่าเบื่อ เราปล่อยให้ตัวจับเวลาภายในทำหน้าที่ในการนับให้เป็นอิสระจากการดำเนินการของโปรแกรม ความรู้เบื้องต้นเกี่ยวกับฮาร์ดแวร์จับเวลา ตัวจับเวลาในตัว (exact: timer/counter, TC0) เป็นส่วนประกอบฮาร์ดแวร์ภายในที่ใช้บ่อยที่สุด ในฐานะที่เป็นองค์ประกอบที่หลากหลายจึงมีโหมดต่างๆมากมายขึ้นอยู่กับความต้องการของเรา เราจะใช้ตัวจับเวลาในการอธิบายในภายหลังดังนั้นในการอธิบายครั้งต่อไปเราจะใช้ตัวจับเวลานี้ในโหมดต่างๆเพื่อควบคุม LED อุปกรณ์ AVR ที่แตกต่างกันมีตัวนับจำนวนที่แตกต่างกัน สิ่งเหล่านี้มีชื่อว่า TC0, TC1…

AVR ภาษาแอสเซมบลี Blink ไฟกระพริบ LED

AVR ภาษาแอสเซมบลี #3 Blink ไฟกระพริบ LED

AVR ภาษาแอสเซมบลี Blink ไฟกระพริบ LED บทความนี้ จะกล่าวถึงการทำให้ LED ที่อยู่เชื่อมต่ออยู่ที่ ขา PB0 ของ ATtiny13 ให้กระพริบได้ ด้วยการหน่วงเวลา หรือเว้นระยะ ในการ เปิดไฟ LED ซึ่งพื้นฐานของการสลับพอร์ตเอาต์พุตได้อธิบายไว้แล้วในบทความก่อนหน้านี้ว่า:…