ใบงานรายวิชาไมโครโปรเซสเซอร์และคอนโทรลเลอร์ ปวส 1(ม.6) สัปดาห์ที่ 10
ใบงานประจำสัปดาห์ รายวิชาการประยุกต์ไมโครคอนโทรลเลอร์
จงเขียนไมโครคอนโทรลเลอร์ โดยกำหนดให้เชื่อมต่อกับ led โดยใช้งานคำสั่งที่ส่ง output สัญญาณ digital เพื่อควบคุม led ให้ได้ตามโจทย์ที่กำหนด. โดยใช้ความรู้ในการเขียนโปรแกรมพื้นฐานที่เรียนในสัปดาห์ที่ผ่านมา นำมาประยุกต์ใช้งาน if , if else , while ,for , switch case และการติดต่อสื่อสารระหว่างอุปกรณ์ ซึ่งเป็นการ interface ระหว่างกันผ่าน Serial port
กำหนดให้นักเรียนนักศึกษา ทำการต่อ 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 กำหนดให้นักเรียนนักศึกษาเชื่อมต่อไมโครคอนโทรลเลอร์แล้วทำการเขียนโปรแกรมสื่อสารกันระหว่างอุปกรณ์ interface โดยใช้งาน Serial Port กำหนดให้แสดงผลผ่าน Serial Monitor เป็นชื่อนักเรียนนักศึกษาเป็นภาษาอังกฤษขึ้นมาครั้งละ 1 วินาที
- 2 (ต่อ) จากข้อย่อยที่ 1 ให้ทำการปรับปรุงโปรแกรมเพิ่มเติ่ม โดยให้มีการแสดงผลตัวเลขไว้ที่หน้าชื่อนักเรียนนักศึกษาด้วย เช่น "1 veerapat" เป็นต้น และตัวเลขที่อยู่ด้านหน้าจะต้องเพิ่มขึ้น 1 หน่วยครั้งละ 1 วินาที (แบบไม่กำหนดรอบ)
- 3 กำหนดให้นักเรียนนักศึกษาเชื่อมต่อ ไมโครคอนโทรลเลอร์กับ led จำนวน 4 ดวงแล้วเขียนโปรแกรมให้ led ทั้ง 4 ดวงกระพริบครั้งละ 1 วินาทีแบบไม่กำหนดรอบเมื่อ led ดับแล้วให้แสดงผลผ่าน Serial Monitor เป็นตัวเลขจำนวน เพิ่มขึ้นครั้งละ 1 หน่วย
- 4 กำหนดให้นักเรียนนักศึกษาเชื่อมต่อ ไมโครคอนโทรลเลอร์กับ led จำนวน 4 ดวงแล้วเขียนโปรแกรมให้ led ทั้ง 4 ดวงแสดงผลแบบดาวตกโดยมีการหน่วงเวลาครั้งละ 1 วินาที และแสดงตัวเลขที่ Serial monitor เป็นตำแหน่งของ led ว่าดวงไหนกำลังติดอยู่ (ledมี 4 ดวง เท่ากับมี 4 ตำแหน่ง เช่น "led 1" ครั้งถัดไป "led 2")
- 5 (ต่อ) จากข้อย่อยที่ 4 ให้ทำการปรับปรุงโปรแกรมเพิ่มเติม โดยกำหนด led แสดงผลแบบดาวตกแบบไปและกลับตำแหน่งเดิม เขียนให้อยู่ในคำสั่ง for loop
- 6 (ต่อ) จากข้อย่อยที่ 5 ให้ทำการปรับปรุงโปรแกรมเพิ่มเติมโดยกำหนด led ไปกลับจำนวน 5 รอบและเมื่อถึง 5 รอบแล้วให้ทำการแสดงคำว่า "ครบ 5 รอบแล้ว " จากนั้นหน่วงเวลา 3 วินาทีกลับไปเริ่มต้นการทำงานใหม่
ความคิดเห็น
แสดงความคิดเห็น