Hey, I am connecting a pressure sensor with an Arduino as my school project. The pressure sensor takes in the readings from the surroundings and displays it on an LCD screen. I managed to do the connections and make up a code using other online resources but my project doesn't work for some reason. Can anyone point any issues in the code?
The pressure sensor I am using is as follows:
Company Name: Mouser Electronics
Mouser P/N: 785-SSCDRRN005PD2A3
Description: DIP, Dual Rad Barbed Honeywell Board Mount Pressure Sensor
The Arduino Board I am using is Arduino UNO R3 Compatible Atmega328P Board.
The LCD model is 1602 16x2 Character LCD Display Module HD44780 Controller Blue/Green screen Blacklight LCD1602 LCD monitor1602 5V.
Thank you for helping me out and apologies for any inconvenience.
The code is as follows:
#include <LiquidCrystal_I2C.h>
#include <Wire.h>
#include <SSC.h>
// For 2 Channel Relay
#define P1_PIN 4
#define P2_PIN 5
LiquidCrystal_I2C lcd(0x3f, 2, 1, 0, 4, 5, 6, 7, 3, POSITIVE);
// create an SSC sensor with I2C address 0x78 and power pin 8.
SSC ssc(0x78, 8);
int readingpin = 0;
int reading;
void setup(void)
{
//analogWrite(BACKLIGHT_PIN, 255 );
lcd.begin(16, 2);
lcd.clear();
Serial.begin(115200);
Wire.begin();
// setting min / max reading and pressure
ssc.setMinRaw(0);
ssc.setMaxRaw(16383);
int min_reading = ssc.setMinPressure(-150.0);
int max_reading = ssc.setMaxPressure(150.0);
// start the sensor
Serial.print("start()\t\t");
Serial.println(ssc.start());
lcd.setCursor(0, 1);
while (millis() < 5000) {
reading = analogRead(readingpin);
// record the maximum sensor value
if (reading > max_reading) {
max_reading = reading;
}
// record the minimum sensor value
if (reading < min_reading) {
min_reading = reading;
}
}
}
void loop(void)
{
Serial.print("update()\t");
Serial.println(ssc.update());
// print pressure
Serial.print("pressure()\t");
Serial.println(ssc.pressure());
reading = analogRead(readingpin);
reading = map( reading, min_reading, max_reading, 0.0, 10.0);
reading = constrain(reading, 0.0, 10.0);
lcd.setCursor(0, 1);
lcd.print("Pressure = ");
lcd.print(reading);
delay(1000);
}