[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
  }

Interface ที่เกี่ยวข้อง :


คำสั่งสำหรับการรับค่าที่สื่อสารกันผ่าน Serial monitor (ซึ่งเป็น Interface ระหว่างไมโครคอนโทรลเลอร์และคอมพิวเตอร์)


 if (Serial.available() > 0) {
    String incomingtext = Serial.readString();
    incomingtext.trim();
    Serial.print("test String text :");
    Serial.println(incomingtext);
 } 


อ่านบทความเพิ่มเติมเกี่ยวกับ uart



ให้นักเรียนนักศึกษาทำไปทีละข้อย่อยแล้วเรียกตรวจ พร้อมอธิบาย

  • 1. กำหนดให้นักเรียนนักศึกษาเชื่อมต่อไมโครคอนโทรลเลอร์แล้วทำการเขียนเริ่มการใช้งาน interface โดยใช้งาน Serial port ผ่านชุดคำสั่ง Serial monitor โดยกำหนดให้ พิมพ์ชื่อนักเรียนนักศึกษาแล้วแสดงผลผ่าน Serial monitor
  • 2. (ต่อ) จากข้อ 1 กำหนดให้มีข้อความ "techcom" แสดงผลต่อท้ายชื่ออัตโนมัติ ("techcom" ไม่ป้อนจาก keyboard)
  • 3. (ต่อ) จากข้อ 2 กำหนดให้กาารแสดงผลแบบข้อ 2 มีผล 1 ครั้งเท่านั้นเมื่อเราพิมพ์คำอื่นๆ ต่อไปคำเหล่านั้นจะไม่มี "techcom" ต่อท้าย
  • 4. กำหนดให้นักเรียนนักศึกษาเชื่อมต่อไมโครคอนโทรลเลอร์กับ led จำนวน 4 ดวงแล้วเขียนโปรแกรมใช้งาน interface ผ่านชุดคำสั่ง Serial monitor โดยกำหนดให้เขียนคำสั่งเพื่อควบคุม led เมื่อพิมพ์คำว่า "start" led ทั้ง 4 ดวงจะกระพริบติดและดับสลับกันครั้งละ 0.5 วินาทีแบบไม่กำหนดรอบ (คำอื่นๆ led ดับทั้งหมด)
  • 5. ต่อจากข้อย่อยที่ 2 ให้ทำการปรับปรุงโปรแกรมโดยกำหนดให้เพิ่มคำว่า "stop" แล้วโปรแกรมจะทำการกระพริบต่อไปอีก 3 ครั้งแล้วดับ(สามารถเริ่งการทำงานใหม่ได้ เมื่อมีการพิมพ์คำว่า "start")
  • 6. กำหนดให้นักเรียนนักศึกษาเชื่อมต่อไมโครคอนโทรลเลอร์กับ led จำนวน 4 ดวงแล้วเขียนโปรแกรมใช้งาน interface ผ่านชุดคำสั่ง Serial monitor โดยกำหนดให้เขียนคำสั่งเพื่อควบคุม led เมื่อพิมพ์คำว่า "type1" แล้วแสดงผล led 4 ทั้งดวงกระพริบ 3 ครั้งแล้วดับไป ,"type2" แล้ว led แสดงผลแบบดาวตก 3 รอบ ,"type3" แล้ว led แสดงผลแบบต่อแถวเมื่อครบทุกดวงแล้วทั้ง3ดวงกระพริบแล้วดับไป หากมีการพิมพ์คำอื่นๆที่ต่างออกไปให้แสดงผลคำว่า "ไม่พบการทำงาน " (จงเขียนโปรแกรมข้างต้นนี้ให้อยู่ในคำสั่ง switch case โดยแยกเป็น 3 case และเขียนให้ครบองค์ประกอบของ switch case)
  • 7.กำหนดให้นักเรียนนักศึกษาเชื่อมต่อไมโครคอนโทรลเลอร์กับ led จำนวน 4 ดวงแล้วเขียนโปรแกรมใช้งาน interface โดยใช้งาน Serial port ผ่านชุดคำสั่ง Serial monitor โดยกำหนดให้ โดยกำหนดให้เขียนคำสั่งเพื่อควบคุม led เมื่อพิมพ์ตัวเลขในช่วง 0 ถึง 100 หากตัวเลขที่ป้อนเข้าไปเป็นเลขคู่ ให้แสดงผล led 4 ดวงกระพริบ หากตัวเลขที่ป้อนเข้าไปเป็นเลขขี้ให้แสดงผล led แบบด้าวตก (led จะแสดงสถานะนั้นๆไว้จนกว่าจะมีการตรวจเจอรูปแบบการแสดงผลใหม่)

ความคิดเห็น

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

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

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

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