Home work
งานที่ 2
โปรแกรมไฟกระพริบสลับกัน LED 2 ดวง
บทความที่แล้วเราทำโปรแกรม โปรแกรมไฟกระพริบ LED 2 ดวง กันไปแล้วโดย LED ติดดับพร้อมกันไม่ยากอย่างที่คิดเลยใช่มั๊ยล่ะครับ ทีนี้เรามาเขียนโปรแกรมให้ LED ติดดับสลับกันบ้างครับ
ขั้นตอนที่ 1
ประกอบวงจรตามรูปด้านล่าง ลงในโปรแกรม Proteus ครับ
คำสั่งที่ใช้ในการโปรแกรม
while() เป็นคำสั่งทำงานซ้ำแบบมีเงื่อนไขครับ ซึ่งจะทำงานวนซ้ำไปเรื่อยๆจนกว่าเงื่อนไขจะเป็นเท็จ
output_x(...) เป็นคำสั่งส่งข้อมูลออกทางเอาต์พุตในพอร์อตที่ต้องการตามค่าที่กำหนด เช่น output_b(0x01);
delay_ms(...) เป็นคำสั่งหน่วงเวลา เช่น delay_ms(500); โปรแกรมจะหน่วงเวลา 500ms ซึ่งค่านี้เราสามารถเปลี่ยนแปลงได้ตามความต้องการครับ
ขั้นตอนที่ 2
เริ่มเขียนโปรแกรมกันเลยครับ
#include<16F84A.h>
#use delay(clock=4000000)
#fuses XT,NOWDT
void main()
{
while(true) // คำสั่งวนซ้ำแบบมีเงื่อนไข
{
output_b(0x01); // คำสั่งส่งข้อมูลออกทางเอาต์พุตพอร์ต b0
delay_ms(1000); // คำสั่งหน่วงเวลา 1 วินาที
output_b(0x02); // คำสั่งส่งข้อมูลออกทางเอาต์พุตพอร์ต b1
delay_ms(1000); // คำสั่งหน่วงเวลา 1 วินาที
}
}
การทำงานของโปรแกรม
เมื่อโปรแกรมเริ่มทำงาน LED ทั้งสองดวง จะติดและดับสลับกัน โดยหน่วงเวลาในการติด 1 วินาที และหน่วงเวลาในการดับ 1 วินาที
ขั้นตอนที่ 1
ประกอบวงจรตามรูปด้านล่าง ลงในโปรแกรม Proteus ครับ
คำสั่งที่ใช้ในการโปรแกรม
while() เป็นคำสั่งทำงานซ้ำแบบมีเงื่อนไขครับ ซึ่งจะทำงานวนซ้ำไปเรื่อยๆจนกว่าเงื่อนไขจะเป็นเท็จ
output_x(...) เป็นคำสั่งส่งข้อมูลออกทางเอาต์พุตในพอร์อตที่ต้องการตามค่าที่กำหนด เช่น output_b(0x01);
delay_ms(...) เป็นคำสั่งหน่วงเวลา เช่น delay_ms(500); โปรแกรมจะหน่วงเวลา 500ms ซึ่งค่านี้เราสามารถเปลี่ยนแปลงได้ตามความต้องการครับ
ขั้นตอนที่ 2
เริ่มเขียนโปรแกรมกันเลยครับ
#include<16F84A.h>
#use delay(clock=4000000)
#fuses XT,NOWDT
void main()
{
while(true) // คำสั่งวนซ้ำแบบมีเงื่อนไข
{
output_b(0x01); // คำสั่งส่งข้อมูลออกทางเอาต์พุตพอร์ต b0
delay_ms(1000); // คำสั่งหน่วงเวลา 1 วินาที
output_b(0x02); // คำสั่งส่งข้อมูลออกทางเอาต์พุตพอร์ต b1
delay_ms(1000); // คำสั่งหน่วงเวลา 1 วินาที
}
}
การทำงานของโปรแกรม
เมื่อโปรแกรมเริ่มทำงาน LED ทั้งสองดวง จะติดและดับสลับกัน โดยหน่วงเวลาในการติด 1 วินาที และหน่วงเวลาในการดับ 1 วินาที
ไม่มีความคิดเห็น:
แสดงความคิดเห็น