Arduino ตอน10 วิธีใช้ Digital input/output ใน arduino

14 Jul 2019,
Share: 
Cover image

สวัสดีครับ ในบทความนี้เรามาเรียนรู้การใช้งาน Input และ Output ใน Arduino ซึ่งถือได้ว่าเป็นพื้นฐานของการเรียนรู้ Arduino หรือ Microcontroller เลยก็ว่าได้

เพื่อให้ง่ายต่อการทําความเข้าใจ มาลองทําตาม Workshop นี้ คือเราจะอ่านค่าจาก Digital input และส่งออกไปยัง Digital output

Step1: Digital input/output คืออะไร

Digital input/output หรือเรียกสั้นๆ Digital I/O เป็น Input/Output ที่จะมี State เป็น O หรือ 1 เท่านั้น 0 จะแทนด้วยไฟฟ้า 0 Volt และ 1 แทนด้วยไฟฟ้า 5 Volt (ระดับแรงดันจะขึ้นอยู่กับรุ่นของ Arduino)

Step2: อุปกรณ์ที่ต้องใช้

  • Arduino board UNO
  • LED
  • ตัวต้านทาน 1k โอห์ม
  • Witch

Step3: ต่อวงจร

ใน Workshop นี้เราจะอ่าน Digital input จาก Switch โดยมีตัวต้านทาน 1k โอห์ม Pull Down (สําหรับ ตัวต้านทาน Pull Down สามารถศึกษาเพิ่มเติมได้ที่นี่) เชื่อมต่อที่ Input และส่งค่า Input ที่อ่านได้ไปยัง Output ที่เราเชื่อมต่อกับ LED เพื่อแสดงผล เชื่อมต่อวงจรตามรูปด้านล่างได้เลย

Image

Step4: ลงมือ Coding

int ledPin = 11;
int inPin = 7;
int val = 0;

void setup() {
  pinMode(ledPin, OUTPUT);
  pinMode(inPin, INPUT);
}

void loop() {
  val = digitalRead(inPin);
  digitalWrite(ledPin, val);
}

ตาม Code ด้านบน เรากําหนด Pin 11 เป็น Digital output และ Pinn 7 เป็น Digital input โดยการทํางานของ Code เริ่มจากอ่านค่าจาก Input มาเก็บไว้ในตัวแปร val ด้วย funtion “val = digitalRead(inPin);” หลังจากนั้นก็นําค่าที่เก็บใน val ส่งออกไปยัง Output ด้วยคําสั่ง “digitalWrite(ledPin, val);”

ผลของการทํางานคือเมื่อเรากด Switch จะทําให้ LED สว่างขึ้น และเมื่อปล่อย Switch LED ก็จะดับ ประมาณนี้

Image

โดยปกติ Digital I/O จะนําไปใช้งานได้หลากหลายเช่น Digital input อ่านค่าจาก Switch, Digital output นําไปควบคุม ปิด-เปิด อุปกรณ์ไฟฟ้าต่างๆ ฯลฯ

ขอบคุณทุกทานที่อ่าน และ Share บทความนี้ แล้วเจอกันใหม่บทความหน้านะครับ :)

Suggestion blogs

วิธีการเข้ารหัส และถอดรหัส BASE64

BASE64 คืออะไรBASE64 คือ วิธีการเข้ารหัสข้อมูลรูปแบบหนึ่ง ที่จะเปลี่ยนข้อความ หรือข้อมูลต้นฉบับไปเป็นข้อความ หรือข้อมูลชุดใหม่ ที่ไม่สามารถอ่าน หรือรู้ว่าข้อมูลชุดนี้คืออะไร ซึ่งการเข้ารหัสชนิดนี้จะแทนที่ข้อมูลด้วยตัวอักษร 64 ตัว นั่นคือที่มาของ BASE64 ตามตารางImageวิธีการเข้ารหัส BASE64ยกตัวอย่างที่ต้องการเข้ารหัสข้อความนี้ "abcd" จะมีขั้นตอนคือ1.นําข้อมูลที่ต้องการเข้ารหัสมาแปลงเป็นเลขฐานสอง 8 bita = 01100001b = 01100010c = 01100011d = 011001002.นําเลขฐานสองที่ได้มาเรียงต่อกันตามลําดับดังนี้01100001 01100010 01100011 011001003.แบ่งเลขฐานสองออกเป็นชุด ชุดละ 6 bit กรณีที่ชุดสุดท้ายไม่ครบ ให้เติม 0 ไปจนครบ 6 bit จะได้ดังนี้01100001 01100010 01100011 01100100 00004. นําเลขฐานสองที่แบ่งไว้มาแปลงเป็นตัวอักษรตามตาราง BASE64 (ตามรูปด้านบน) โดยใน BASE64 จะนับ bit ที่ถูกเติมเข้าไปที่เป็น 00 แทนด้วย "="011000 = "Y"010110 = "W"001001 = "J"100011 = "j"011001 = "Z"000000 = "A=="** bit ที่ถูกเติมเข้าไปที่เป็น 00 แทนด้วย "=" 5.นําตัวอักษรมาเรียงต่อกันตามลําดับ YWJjZA==วิธีการถอดรหัส BASE64วิธีการถอดรหัส BASE64 ก็ไม่ยาก ทําย้อนกลับครับให้นําข้อมูลมาแปลงเป็นฐานสอง 6 bit มาเรียงต่อกันก่อน แล้วนํามาจัดกลุ่ม กลุ่มละ 8 bit โดย bit สุดท้ายที่เหลือไม่ครบ 8 bit ให้ตัดทิ้ง หลังจากนั้นก็แปลงเลขฐานสอง 8 bit แต่ละชุดเป็นข้อมูล ASCII เท่านี้ก็จะได้ข้อมูลต้นฉบับแล้วครับ

วิธีออกแบบระบบ โซล่าเซลล์

ในบทความนี้เป็นเรื่องเกี่ยวกับการออกแบบและคํานวณระบบโซล่าเซลล์ ซึ่งจะหาว่าถ้าเราใช้อุปกณ์ไฟฟ้าเท่านี้เราจะใช้โซล่าเซลล์ เท่าไร แบตเตอรรี่เท่าไร

Git commit message convention เขียน git commit message ให้เข้าใจง่าย

สวัสดีครับ บทความนี้เราจะมาเรียนรู้การเขียน Git commit message อย่างไรให้เข้าใจง่ายกันนะครับ (git commit message convention)


Copyright © 2019 - 2026 thiti.dev |  v1.60.0 |  Privacy policy | 

Build with ❤️ and Astro.

Github profile   Linkedin profile   Instagram   X profile   Nostr   Youtube channel   Telegram   Email contact   วงแหวนเว็บ