เขียนโปรแกรม Arduino ด้วยภาษาซี ตัวอย่างที่ 8
ตัวอย่างที่8 นี้เป็นการเรียนรู้
การเขียนโปรแกรมให้รับอินพุตแบบอะนาล็อก
สามารถนำไปใช้งานตรวจจับแรงดันไฟที่ไม่คงที่ได้ ทางพอร์ตอะนาล็อก
Port C ขา A0 โดยใช้อุปกรณ์ร่วมคือ ตัวต้านทานแบบวอลลุ่มหรือ Variable Resisror
ต่อขาเชื่อมเข้ากับบอร์ดดังรูป
เป็นการรับแรงดันที่มีการเปลี่ยนแปลงอยู่ระหว่าง 0 ถึง 5
โวลต์และแสดงข้อมูลส่งออกทาง Serial port
เปิดโปรแกรมขึ้นมาเขียน
เขียนโปรแกรมดังนี้
void setup() {
Serial.begin(9600);
// กำหนดค่าเริ่มต้น การส่งข้อมูลออกไป มอนิเตอร์:
}
void loop() {
int
sensorValue = 0;
sensorValue = analogRead(A0); // อ่านค่าอะนาล็อก pin 0:
float
voltage = sensorValue*(5.0/1023.0); // แปลงค่า 0 - 1023 ให้เป็นเลขแรงดัน 0 - 5V :
Serial.print("ค่าแรงดันที่อ่านได้ = "); // ส่งข้อมูลแสดงผล:
Serial.print(voltage);
Serial.println(" โวลต์ ");
delay(500);
//หน่วงเวลาแสดงค่าให้ช้าลงตามต้องการ:
}
รันโปรแกรม แล้วเปิดมอนิเตอร์ (ปุ่มแว่นขยายมุมขวาโปรแกรม) ลองปรับ VR
ดูค่าเปลี่ยนแปลง