ใบงานไมโครลคอนโทรลเลอร์ สัปดาห์ที่ 9

ใบงานประจำสัปดาห์ที่ 9 ไมโครคอนโทรลเลอร์และไมโครโปรเซสเซอร์ และ พื้นฐานการอิเตอร์เฟส


จงเขียนไมโครคอนโทรลเลอร์ โดยกำหนดให้เชื่อมต่อกับ led โดยใช้งานคำสั่งที่ส่ง output สัญญาณ digital เพื่อควบคุม led ให้ได้ตามโจทย์ที่กำหนด. โดยใช้ความรู้ในการเขียนโปรแกรมพื้นฐานที่เรียนในสัปดาห์ที่ผ่านมา นำมาประยุกต์ใช้งาน if , if else , while ,for , switch case ให้นักเรียนนักศึกษาทำไปทีละข้อย่อย จนครบโจทย์ที่สมบูรณ์

1. กำหนดให้นักเรียนนักศึกษาเชื่อมต่อ ไมโครคอนโทรลเลอร์ กับ led จำนวนทั้งหมด 4 ดวงและมีการเชื่อมต่อกับ ปุ่มกด button จำนวน 1 ปุ่ม ข้อควรระวัง การต่อใช้งานกับโมดูล button นั้น มีทั้งแบบ common HIGH และแบบ common LOW นักศึกษาต้องทำการตรวจสอบว่าโมดูล ปุ่มกดที่ได้ไปนั้นเป็นประเภทไหนจะได้ทำการเขียนโปรแกรมควบคุมได้อย่างถูกต้อง

เมื่อนักเรียนนักศึกษาทำการ ต่อไมโครคอนโทรลเลอร์เข้ากับ led และปุ่มกดแล้ว ให้ทำการเช็คโมดูลปุ่มกดนั้นเป็น Active HIGH หรือ Active LOW โดยทดลองเขียน code ดังต่อไปนี้


int button 11;
void setup(){
	pinMode(button,INPUT);
}
void loop() {
	if(digitalRead(button)==HIGH){
		Serial.println("button is Active HIGH");
   	 }
      delay(500);
}

เมื่อนักเรียนนักศึกษาใช้งาน code ด้านบนแล้วลองกดปุ่ม แล้วปรากฏคำว่า button is Active HIGH ที่หน้า Serial monitor แสดงว่าโมดูลที่นักเรียนต่ออยู่นั้นถูกต้อง และเป็นชนิด Actiove HIGH

int button 11;
void setup(){
	pinMode(button,INPUT);
}
void loop() {
	if(digitalRead(button)==LOW){
		Serial.println("button is Active LOW");
   	 }
      delay(500);
}

เมื่อนักเรียนนักศึกษาใช้งาน code ด้านบนแล้วลองกดปุ่ม แล้วปรากฏคำว่า button is Active LOW ที่หน้า Serial monitor แสดงว่าโมดูลที่นักเรียนใช้งานนั้นถูกต้อง และเป็นชนิด Actiove LOW

ให้นักเรียนนักศึกษาทำไปทีละข้อย่อย จนครบโจทย์ที่สมบูรณ์

  • 1. กำหนดให้นักเรียนนักศึกษาเชื่อมต่อไมโครคอนโทรลเลอร์กับ led จำนวนทั้งหมด 4 ดวง และปุ่มกดจำนวน 1 ปุ่ม
  • 2. กำหนดให้กดปุ่ม 1 ครั้ง led ทั้งหมดติดและดับ 4 ดวงพร้อมกัน
  • 3. กำหนดให้กดปุ่ม 1 ครั้ง led ดวงที่ 1 ติดค้าง และเพิ่มขึ้นเรื่อยๆครั้งละ 1 step จากทางขวาไปทางซ้าย(จำนวน led จะติดเพิ่มขึ้นทุกครั้งที่กดจนครบ 4 ดวง)
  • 4. (ต่อ) เมื่อครบทั้ง 4 ดวงแล้ว led ทั้งหมดจะกระพริบติดและดับสลับกันโดยใช้งาน for loop จำนวน 20 รอบ
  • 5. (ต่อ) บอกจำนวนครั้งเมื่อนับครบ 5 รอบ แสดงคำว่า "led blink : 5" ที่ Sarial monitor ( จะแสดงคำว่า led blink : 5 , 10 , 15 , 20) แค่ 4 ครั้ง
  • หัวข้อย่อยที่ 6,7 เริ่มที่เวลา 10.30


เมื่อนักเรียนนักศึกษาเสร็จข้อย่อยที่ 7. แล้ว ให้ทำการจดบันทึก code และ อธิบายสรุปทำความเข้าใจลงสมุด

test
ทดสอบเวลา
ใบงานนี้เป็นส่วนหนึ่งของ รายวิชาไมโครคอนโทรลเลอร์ 20128-2003 เขียนโดย วีรภัทร ปล้องใหม่

ความคิดเห็น

โพสต์ยอดนิยมจากบล็อกนี้

ใบงาน รายวิชาโปรแกรมโครงสร้าง(ซัมเมอร์)

[16/07/67] ใบงานรายวิชาไมโครโปรเซสเซอร์และ ไมโครคอนโทรลเลอร์ สัปดาห์ที่ 9

[11/08/2567] ใบงานรายวิชาไมโครคอนโทรลเลอร์และโปรเซส สัปดาห์ที่ 13