Important Announcement
PubHTML5 Scheduled Server Maintenance on (GMT) Sunday, June 26th, 2:00 am - 8:00 am.
PubHTML5 site will be inoperative during the times indicated!

Home Explore การใช้งาน Arduino สัญญาณ Digital InPut รับค่าการกดปุ่มสวิตช์ ควบคุมเปิดปิดหลอดไฟ LED

การใช้งาน Arduino สัญญาณ Digital InPut รับค่าการกดปุ่มสวิตช์ ควบคุมเปิดปิดหลอดไฟ LED

Published by kunakorn.im, 2021-03-03 03:27:58

Description: การใช้งาน Arduino สัญญาณ Digital InPut รับค่าการกดปุ่มสวิตช์ ควบคุมเปิดปิดหลอดไฟ LED

Search

Read the Text Version

การเขยี นโปรแกรมเบอ้ื ง้ตน การ้ใชงาน Arduino สญั ญาณ Digital InPut รบั ้คา การกด้ปุมสวติ ้ช ควบคมุ ้เปด้ปดหลอดไฟ LED

Arduino่อาน่คาการกด่ปมุ โดย่ใชคาสัง่ digitalRead() การ่ตอสวิต่ชมี 2 แบบ คือ pull up โดย่จายสัญญาณ 1 ่ใหกบั สวติ่ช อีกแบบคือ pull down โดย่จายสญั ญาณ 0 ่ใหกับสวิต่ช โดย่ผานต่วั ตานทานเพื่อ่ใชค่งคาสถานะ่ปองกนั ไฟ 5V และ 0V ชนกันลัดวงจร

การ้ตอสวิต้ชมี 2 แบบคอื 1. Pull UP คือการค่งคาสัญญาณ 1 ่ใหกับขา Digital Arduino ทม่ี ่าตอกับสวติ่ช เม่อื สวิต่ชถกู กดจะ่ใหสัญญาณ 0 2. Pull Down คือ การคง่คาสญั ญาณ 0 ่ใหกบั ขา Digital Arduino ทม่ี ่าตอกบั สวิต่ช เม่ือสวิต่ชถกู กดจะ่ให สญั ญาณ 1 คาสัง่ Digital Read ้เปนคาสงั่ ท้ี่ใช้อา้คาสถานะขาดจิ ติ อลของ Arduino้วา้เปน 5V หรือ 0V HIGH คอื ลอจิก 1 ป่ลอยไฟออกแรงดนั 5V LOW คือลอจกิ 0 กาหนดขานน้ั ่ให่เปนกร่าวด 0V digitalRead(PiN) PiN หมายถึง ขา Digital ของ Arduino ท่ต่ี องกา่รอาน ตัวอ่ยางคาส่งั Digital Read ้ตองการ้อาน้คา สถานะขา 13้วา้เปน 1 หรือ 0 เกบ็ ในตวั แปล Val Val = digitalRead(13)

อุปกร้ณท้ต่ี อง้ใช การเขียนโปรแกรมเบื้อง้ตนกบั Arduino สญั ญาณ Digital InPut รับ้คาการกด้ปมุ สวติ ้ช ควบคุม้เปด้ปดหลอดไฟ LED • Arduino + สายUSB • LED ขนาด 5mm จานวน 3 ดวง (เขยี ว,เหลือง,แดง) • บอ้รดทดลอง Breadboard • Resistor ตัว้ตานทาน 330 Ohm • Resistor ตัว้ตานทาน 4.7 K Ohm • สวิต้ช กดติดป้ลอยดบั ขนาด 12x12x6 mm push switch • สายไฟจมั เปอ้ร

วิธกี าร้ตออุปกร้ณ การเขยี นโปรแกรมเบอ้ื ง้ตนกับ Arduino สัญญาณ Digital InPut รับ้คาการกด้ปมุ สวติ ้ช ควบคุม้เปด้ปดหลอดไฟ LED Arduino -> หลอดไฟ LED • ขา2 -> LED1 Arduino -> สวิต่ช • ขา3 -> สวติ่ช

ใ้ห้ตออุปกร้ณตามรปู ้ขางบน แ้ลว อพั โหลด ้โคดตวั อ้ยาง้ดาน้ลางลง Arduino

้ถายัง้ไมกดสวติ ้ช ไฟ LED จะ้ไมส้วาง สถานะขา 3 ท้ต่ี อกบั สวติ ้ช จะ้เปน LOW หรือ ลอจิก 0 ไฟ LED จะ้ไมตดิ

้ถากดสวิต้ช สถานะขา 3 ท้ีต่ อกบั สวิต้ช จะ้เปน HIGH หรอื ลอจิก 1 ไฟ LED จะติด arduino จะ้อาน้คาการกดปมุ ของเรา ไปสัง่ ้ใหไฟ LED ติด

สรุป • จากตวั อ่ยางจะ เหน็่วาเราจะ่ใชคาสง่ั buttonState = digitalRead(buttonPin); ในการ่อาน่คาสวิต่ชท่ต่ี ออ่ยกู บั ขา3 มาเกบ็ ในตวั แปล buttonState เพือ่ เอาไปตรวจสอบการกดสวิต่ช แ่ลว่ใชคาสัง่ if (buttonState == HIGH) และ else ในการส่ังงาน่ให LED ติดหรือดับ digitalWrite(led1, HIGH);่ถากาหนด HIGH ไฟจะตดิ digitalWrite(led1, LOW);่ถากาหนด LOW ไฟจะดับ

ใบงาน • จากตวั อ้ยาง้ขาง้ตน ใ้หนกั เรียน้ตอ push switch 3้ปมุ และ้ใช LED 3สี ้เชน 1. กด้ปมุ push switch สเี ขียว LED สีเขียวติด ป้ลอย LED สเี ขียวดับ 2. กด้ปมุ push switch สีเหลอื ง LED สีเหลืองติด ป้ลอย LED สเี หลอื งดับ 3. กด้ปมุ push switch สแี ดง LED สแี ดงตดิ ป้ลอย LED สีแดงดบั