Here Comes Siwat INC(R) DEVCON V3
This commit is contained in:
parent
7cde8d63dc
commit
435a92b5f8
|
@ -26,9 +26,11 @@
|
|||
#include <Adafruit_MCP23017.h>
|
||||
#include <Thread.h>
|
||||
#include <ThreadController.h>
|
||||
#include <AceButton.h>
|
||||
Adafruit_MCP23017 mcp;
|
||||
long tslr = 0;
|
||||
WiFiClient espClient;
|
||||
AceButton gpio0(0);
|
||||
PubSubClient client("siwatsystem.com", 1883, espClient);
|
||||
PubSubClientTools mqtt(client);
|
||||
ThreadController threadControl = ThreadController();
|
||||
|
@ -41,19 +43,23 @@ boolean lastsensorstate[12];
|
|||
boolean firstrun = true;
|
||||
FlowMeter sensor1 = FlowMeter(12);
|
||||
FlowMeter sensor2 = FlowMeter(13);
|
||||
boolean devcon=false;
|
||||
volatile boolean awakenByInterrupt = false;
|
||||
LiquidCrystal_I2C lcd(0x3F, 16, 2);
|
||||
int menu;
|
||||
void handleGPIO0(AceButton*, uint8_t, uint8_t);
|
||||
void writelcd(String line1, String line2){
|
||||
if(!devcon){
|
||||
lcd.clear();
|
||||
lcd.print(line1);
|
||||
lcd.setCursor(0,1);
|
||||
lcd.print(line2);
|
||||
Serial.print("Writing to LCD: "+line1+" "+line2+"\n");
|
||||
}
|
||||
}
|
||||
void updatelcd()
|
||||
{
|
||||
writelcd("1: "+String((int)sensor1.getCurrentFlowrate())+"L/h "+String(sensor1.getTotalVolume())+"L","2:"+String((int)sensor2.getCurrentFlowrate())+"L/h "+String(sensor2.getTotalVolume())+"L");
|
||||
if(!devcon)writelcd("1: "+String((int)sensor1.getCurrentFlowrate())+"L/h "+String(sensor1.getTotalVolume())+"L","2:"+String((int)sensor2.getCurrentFlowrate())+"L/h "+String(sensor2.getTotalVolume())+"L");
|
||||
}
|
||||
void ICACHE_RAM_ATTR read1() {
|
||||
sensor1.count();
|
||||
|
@ -113,6 +119,8 @@ void setup() {
|
|||
pinMode(14, INPUT_PULLUP);
|
||||
pinMode(12, INPUT);
|
||||
pinMode(13, INPUT);
|
||||
pinMode(0, INPUT_PULLUP);
|
||||
gpio0.setEventHandler(handleGPIO0);
|
||||
attachInterrupt(digitalPinToInterrupt(12), read1, RISING);
|
||||
attachInterrupt(digitalPinToInterrupt(13), read2, RISING);
|
||||
delay(1000);
|
||||
|
@ -158,4 +166,28 @@ void setup() {
|
|||
void loop() {
|
||||
if(online)client.loop();
|
||||
threadControl.run();
|
||||
gpio0.check();
|
||||
}
|
||||
void handleGPIO0(AceButton* , uint8_t eventType,
|
||||
uint8_t ) {
|
||||
switch (eventType) {
|
||||
case AceButton::kEventPressed:
|
||||
devcon=true; //no going back, Delete Waterish OS and Install Siwat INC(R) DEVCON OS
|
||||
lcd.print(" SIWAT INC(R) ","DEVCON OS V3.2.4");
|
||||
delay(1000);
|
||||
lcd.print("DEVCON TOOLKITS","3 Extension Load");
|
||||
delay(1000);
|
||||
lcd.print("Initia Extension","connectionchck.c");
|
||||
delay(2000);
|
||||
lcd.print("Initia Extension","hall_pid_tuner.c")
|
||||
delay(2000);
|
||||
lcd.print("Initia Extension","credit_display.c");
|
||||
delay(2000);
|
||||
lcd.print("DEVCON TOOLKITS","set WTOS at 0x3D");
|
||||
delay(1000);
|
||||
break;
|
||||
case AceButton::kEventReleased:
|
||||
//debounce
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue