arduino pir sensor
ใบรายงานผลการปฏิบัติงาน
Code
#include <LiquidCrystal_I2C.h> // การอ่านไฟล์จากไดเร็กทอรี หรือโฟลเดอร์ที่กำหนดไว้
LiquidCrystal_I2C lcd(0x27,16,2); //ฟังก์ชั่นของ lcd กำหนดให้ ตัวอักษรที่16 แถวที่2
int PIRpin = 8; // ตัวแปรพื้นฐานที่เก็บตัวเลขโดยไม่มีจุดทศนิยม
void setup() // ฟังก์ชั่นใช้ในการประกาศค่าเริ่มต้น
{
lcd.begin(); // ไฟเเบคไลท์
pinMode(PIRpin,INPUT); //การกำหนดหน้าที่ของขาว่าเป็นอินพุตหรือเอาต์พุต
lcd.home();
lcd.print("Waiting for PIR");
delay(10000); // หน่วงเวลา
lcd.clear(); // ล้างหน้าจอ
}
void loop() // ฟังก์ชั่นใช้ในการเขียนโค้ดโปรแกรมการทำงานของArduinoเป็นฟังก์ชั่นการวนลูปไปเรื่อยๆ
{
int x = digitalRead(PIRpin);
lcd.home(); // ใช้ปรับให้เคเซอร์กลับไปอยู่ที่ตำแหน่งแรกด้านซ้าย
lcd.print("PIR = ");
lcd.print(x);
delay(100);
}
ภาพจำลองการทำงานด้วยโปรแกรม Proteus
Code
#include <LiquidCrystal_I2C.h> // การอ่านไฟล์จากไดเร็กทอรี หรือโฟลเดอร์ที่กำหนดไว้
LiquidCrystal_I2C lcd(0x27,16,2); //ฟังก์ชั่นของ lcd กำหนดให้ ตัวอักษรที่16 แถวที่2
int PIRpin = 8; // ตัวแปรพื้นฐานที่เก็บตัวเลขโดยไม่มีจุดทศนิยม
void setup() // ฟังก์ชั่นใช้ในการประกาศค่าเริ่มต้น
{
lcd.begin(); // ไฟเเบคไลท์
pinMode(PIRpin,INPUT); //การกำหนดหน้าที่ของขาว่าเป็นอินพุตหรือเอาต์พุต
lcd.home();
lcd.print("Waiting for PIR");
delay(10000); // หน่วงเวลา
lcd.clear(); // ล้างหน้าจอ
}
void loop() // ฟังก์ชั่นใช้ในการเขียนโค้ดโปรแกรมการทำงานของArduinoเป็นฟังก์ชั่นการวนลูปไปเรื่อยๆ
{
int x = digitalRead(PIRpin);
lcd.home(); // ใช้ปรับให้เคเซอร์กลับไปอยู่ที่ตำแหน่งแรกด้านซ้าย
lcd.print("PIR = ");
lcd.print(x);
delay(100);
}
ภาพจำลองการทำงานด้วยโปรแกรม Proteus
อธิบายการทำงานของโปรแกรม
เมื่อกดให้ PIR งานขึ้นค่าเเสดงผลบน LCD เเสดงตัวอักษรเเละตัวเลข
ความคิดเห็น
แสดงความคิดเห็น