[2/2567] ใบงานรายวิชาการประยุกไมโครคอนโทรลเลอร์ สัปดาห์ที่ 6
ใบงานประจำสัปดาห์ รายวิชาการประยุกต์ไมโครคอนโทรลเลอร์
จงเขียนไมโครคอนโทรลเลอร์ โดยกำหนดให้เชื่อมต่อกับ led โดยใช้งานคำสั่งที่ส่ง output สัญญาณ digital เพื่อควบคุม led ให้ได้ตามโจทย์ที่กำหนด. โดยใช้ความรู้ในการเขียนโปรแกรมพื้นฐานที่เรียนในสัปดาห์ที่ผ่านมา นำมาประยุกต์ใช้งาน if , if else , while ,for , switch case
กำหนดให้นักเรียนนักศึกษา ทำการต่อ arduino uno r3 กับ led จำนวน 4 ดวง ดังรูป
ตัวอย่างคำสั่ง
รูปแบบการเขียนคำสั่ง if
if(condition){
statement
}
รูปแบบการเขียนคำสั่ง if else
if(condition){
statement
}else{
statement
}
รูปแบบการเขียนคำสั่ง if else..if
if(condition){
statement
}else if(condition){
statement
}
รูปแบบการเขียนคำสั่ง switch case
switch (variable)
{
case VALUE_1:
// statements
break;
case VALUE_2:
// statements
break;
case VALUE_3:
// statements
break;
default:
// statements
}
รูปแบบการเขียนคำสั่ง while
whlie(condition){
//statement
}
รูปแบบการเขียนคำสั่ง do..while
do{
// statements
}while(condition);
รูปแบบการเขียนคำสั่ง for
for(variable; condition; variable +){
//statement
}
ให้นักเรียนนักศึกษาทำไปทีละข้อย่อยแล้วเรียกตรวจ พร้อมอธิบาย
- 1 กำหนดให้นักเรียนนักศึกษาเชื่อมต่อ ไมโครคอนโทรลเลอร์กับ led จำนวน 4 ดวงแล้วเขียนโปรแกรมให้ led ทั้ง 4 ดวงแสดงผลแบบต่อแถวกัน led จะกระพริบจากด้านใดด้านหนึ่งไปยังฝั่งตรงข้ามแล้วเมื่อถึงตำแหน่งสุดท้ายจะติดค้างเพิ่มจำนวนขึ้นเลื่อยๆจนครบ 4 ดวงเขียนใน void loop (กำหนดการหน่วงเวลา 0.5 วินาที)
- 2 ต่อจากข้อ 1 กำหนดให้เมื่อ led ทั้ง 4 ดวงติดทั้งหมดแล้ว ค้างไว้ 2 วินาทีแล้วดับไป (ดับหายไปเลย)
- 3 ต่อจากข้อ 2 ปรับปรุงแก้ไขโปรแกรมให้การทำงานวนซ้ำโดยเมื่อจบแค่ละรอบ (ค้างไว้ 2 วินาที) ให้แสดงผลคำออกทาง monitor ด้วยคำกว่า "รอบที่ ?" ? = จำนวนรอบที่เพิ่มขึ้นเรื่อยๆ
- 4 กำหนดให้นักเรียนนักศึกษาเชื่อมต่อ ไมโครคอนโทรลเลอร์กับ led จำนวน 4 ดวงแล้วเขียนโปรแกรมให้ led กระพริบติดและดับสลับกัน,ไฟดาวตก,ไฟต่อแถวโดยใช้งานคำสั่ง switch case ให้กำหนดตัวแปรที่ใช้ในการเลือกเคสคือตัวอักษร a = ไฟกระพริบ ,b = ไฟดาวตก , c = ไฟต่อแถว เขียนให้ครบองค์ประกอบของ switch case (เฉพาะไฟกระพริบ แสดงผลแค่ 5 ครั้งเท่านั้น ไฟแบบอื่นๆแสดงผลแบบไม่กำหนดรอบ)
- 5 กำหนดให้นักเรียนนักศึกษาปรับปรุงโปรแกรมจาก ข้อย่อยที่ 1 (ไฟต่อแถว) ให้ใช้งาน if และ if else โดยเขียนคำสั่งทั้งหมดให้อยู่ใน void loop และจำกัดการใช้งานคำสั่ง digitalWrite(HIGH) กับ digitalWrite(LOW) แค่อย่างละ 1 คำสั่ง( 1 บรรทัด) เท่านั้น
ความคิดเห็น
แสดงความคิดเห็น