สิ่งที่ผมจะทำเป็นตู้หนังสือที่นับหนังสือเองได้โดยใช้เซ็นเซอร์ตรวจจับวัตถุ ผมอยากจะให้เมื่อหยิบหนังสือเข้าไปวาง จะเพิ่มจำนวน แต่เมื่อเอาออกจะลบจำนวน ผมเขียนโค้ดและหาข้อมูลบางส่วนแล้ว แต่ส่วนมากเป็นการนับเพียงครั้งเดียว ผมอยากจะให้เขาลดลงด้วย ผมลองใส่โค้ดซ้อนก็แล้ว มันก็ยังไม่นับ นี่ ถ้าช่วยแนะนำได้ จะขอบคุณเป็นอย่างสูงครับ คือโค้ดบางส่วนครับ
#include <Wire.h>
#include <LiquidCrystal_PCF8574.h>
LiquidCrystal_PCF8574 lcd(0x27);
int digitalPin1 = 8;
int val1 = 0;
int a = 0;
int b = 0;
int c = 0;
String abc = "sensor ";
void setup()
{
{
pinMode(digitalPin1, INPUT); // sets the pin as input
Serial.begin(9600);
lcd.begin(16, 2);
lcd.setBacklight(255);
lcd.setCursor(0, 0);
lcd.print(" Book Counting ");
lcd.setCursor(0, 1);
lcd.print(" ");
delay(1500);
}
}
void loop()
{
val1 = digitalRead(digitalPin1);
Serial.print("val1 = ");
Serial.println(val1);
delay(5000);
if (val1==1)
if (val1 == 0)
a = a+1;
lcd.setCursor(8, 1);
lcd.print(a);
if (val1==0)
if (val1 == 1)
a = a-1;
lcd.setCursor(8, 1);
lcd.print(a);
}
ปล. ลงไลบราลี่เรียบร้อยแล้วครับ
ปล2. ถ้าเอา if ที่ซ้อน if ออก มันจะนับเรื่อยๆเลยครับ
Arduino ช่วยแก้ปัญหาเขียนโค้ดเกี่ยวกับการใช้เซ็นเซอร์นับสิ่งของเข้าออก
#include <Wire.h>
#include <LiquidCrystal_PCF8574.h>
LiquidCrystal_PCF8574 lcd(0x27);
int digitalPin1 = 8;
int val1 = 0;
int a = 0;
int b = 0;
int c = 0;
String abc = "sensor ";
void setup()
{
{
pinMode(digitalPin1, INPUT); // sets the pin as input
Serial.begin(9600);
lcd.begin(16, 2);
lcd.setBacklight(255);
lcd.setCursor(0, 0);
lcd.print(" Book Counting ");
lcd.setCursor(0, 1);
lcd.print(" ");
delay(1500);
}
}
void loop()
{
val1 = digitalRead(digitalPin1);
Serial.print("val1 = ");
Serial.println(val1);
delay(5000);
if (val1==1)
if (val1 == 0)
a = a+1;
lcd.setCursor(8, 1);
lcd.print(a);
if (val1==0)
if (val1 == 1)
a = a-1;
lcd.setCursor(8, 1);
lcd.print(a);
}
ปล. ลงไลบราลี่เรียบร้อยแล้วครับ
ปล2. ถ้าเอา if ที่ซ้อน if ออก มันจะนับเรื่อยๆเลยครับ