Customer:
I’ve been trying to connect a Croduino Basic2, OLED 128x64 display, and MQ3 sensor for several days now. Which pins do I connect the display and sensor to? I’m not getting any signal on the screen, nothing happens. I’m learning but this is driving me crazy.
Here’s my code:
#include
#include
#include
#include
#define OLED_RESET 4
int TIME_UNTIL_WARMUP = 900;
unsigned long time;
int analogPin = 0;
int val = 0;
Adafruit_SSD1306 display(OLED_RESET);
void setup() {
display.begin(SSD1306_SWITCHCAPVCC, 0x3C);
display.clearDisplay();
}
void loop() {
delay(100);
val = readAlcohol();
printTitle();
printWarming();
time = millis()/1000;
if(time<=TIME_UNTIL_WARMUP)
{
time = map(time, 0, TIME_UNTIL_WARMUP, 0, 100);
display.drawRect(10, 50, 110, 10, WHITE); //Empty Bar
display.fillRect(10, 50, time,10,WHITE);
}
display.display();
}
void printTitle()
{
display.clearDisplay();
display.setTextSize(1);
display.setTextColor(WHITE);
display.setCursor(22,0);
display.println("Breath Analyzer");
}
void printWarming()
{
display.setTextSize(2);
display.setTextColor(WHITE);
display.setCursor(0,20);
display.println("Warming up");
}
void printAlcohol(int value)
{
display.setTextSize(2);
display.setTextColor(WHITE);
display.setCursor(45,25);
display.println(val);
}
void printAlcoholLevel(int value)
{
display.setTextSize(1);
display.setTextColor(WHITE);
display.setCursor(10,55);
if(value =200 && value =280 && value =350 && value 450)
{
display.println("You are drunk!");
}
}
int readAlcohol()
{
int val = 0;
int val1;
int val2;
int val3;
display.clearDisplay();
val1 = analogRead(analogPin);
delay(10);
val2 = analogRead(analogPin);
delay(10);
val3 = analogRead(analogPin);
val = (val1+val2+val3)/3;
return val;
}
Original message (Croatian)
već nekoliko dana pkušavam spojiti vaš Croduino basic 2, OLED 128x64 ekran, mq3 senzor …
pitanje … na koje pinove spajam ekran i senzor …
nemam nikakav signal na ekranu, ništa se ne dešava.. ok nisam profesionalac… učim se … ali me izluđuje totalno …
LP
[name removed]
ovo je code
#include
#include
#include
#include
#define OLED_RESET 4
int TIME_UNTIL_WARMUP = 900;
unsigned long time;
int analogPin = 0;
int val = 0;
Adafruit_SSD1306 display(OLED_RESET);
void setup() {
display.begin(SSD1306_SWITCHCAPVCC, 0x3C);
display.clearDisplay();
}
void loop() {
delay(100);
val = readAlcohol();
printTitle();
printWarming();
time = millis()/1000;
if(time<=TIME_UNTIL_WARMUP)
{
time = map(time, 0, TIME_UNTIL_WARMUP, 0, 100);
display.drawRect(10, 50, 110, 10, WHITE); //Empty Bar
display.fillRect(10, 50, time,10,WHITE);
}
display.display();
}
void printTitle()
{
display.clearDisplay();
display.setTextSize(1);
display.setTextColor(WHITE);
display.setCursor(22,0);
display.println(“Breath Analyzer”);
}
void printWarming()
{
display.setTextSize(2);
display.setTextColor(WHITE);
display.setCursor(0,20);
display.println(“Warming up”);
}
void printAlcohol(int value)
{
display.setTextSize(2);
display.setTextColor(WHITE);
display.setCursor(45,25);
display.println(val);
}
void printAlcoholLevel(int value)
{
display.setTextSize(1);
display.setTextColor(WHITE);
display.setCursor(10,55);
if(value =200 && value =280 && value =350 && value 450)
{
display.println(“You are drunk!”);
}
}
int readAlcohol()
{
int val = 0;
int val1;
int val2;
int val3;
display.clearDisplay();
val1 = analogRead(analogPin);
delay(10);
val2 = analogRead(analogPin);
delay(10);
val3 = analogRead(analogPin);
val = (val1+val2+val3)/3;
return val;
}
Originally submitted via email support on 18 September 2017. Migrated to the forum for community visibility.