First Commit
This commit is contained in:
parent
602dd5e325
commit
229b54105d
25
RoomyState/Counter.cpp
Normal file
25
RoomyState/Counter.cpp
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
#include "Counter.h"
|
||||||
|
|
||||||
|
void Counter::inc() {
|
||||||
|
if(init >= up_lim){
|
||||||
|
init = 0;
|
||||||
|
} else{
|
||||||
|
++init;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
int Counter::getInit(){
|
||||||
|
return this->init;
|
||||||
|
}
|
||||||
|
|
||||||
|
Counter::Counter(int i, int up) {
|
||||||
|
up_lim = up;
|
||||||
|
if(i > up){
|
||||||
|
init = up;
|
||||||
|
}else if(i < 0){
|
||||||
|
init = 0;
|
||||||
|
}else{
|
||||||
|
init = i;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
13
RoomyState/Counter.h
Normal file
13
RoomyState/Counter.h
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
class Counter {
|
||||||
|
|
||||||
|
public:
|
||||||
|
Counter(int i, int up);
|
||||||
|
void inc();
|
||||||
|
int getInit();
|
||||||
|
~Counter() = default;
|
||||||
|
|
||||||
|
private:
|
||||||
|
int init;
|
||||||
|
int up_lim;
|
||||||
|
|
||||||
|
};
|
||||||
31
RoomyState/RoomyState.ino
Normal file
31
RoomyState/RoomyState.ino
Normal file
@ -0,0 +1,31 @@
|
|||||||
|
#include "lcd.h"
|
||||||
|
int buttonState = 0;
|
||||||
|
Counter c (0, 3);
|
||||||
|
|
||||||
|
void setup() {
|
||||||
|
lcdAwake();
|
||||||
|
pinMode(BI, INPUT);
|
||||||
|
}
|
||||||
|
|
||||||
|
void loop() {
|
||||||
|
buttonState = digitalRead(BI);
|
||||||
|
|
||||||
|
if(buttonState){
|
||||||
|
c.inc();
|
||||||
|
delay(300);
|
||||||
|
}
|
||||||
|
|
||||||
|
switch(c.getInit()){
|
||||||
|
case 0:
|
||||||
|
setHome();
|
||||||
|
case 1:
|
||||||
|
setAway();
|
||||||
|
case 2:
|
||||||
|
setBusy();
|
||||||
|
case 3:
|
||||||
|
setCome();
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
43
RoomyState/lcd.cpp
Normal file
43
RoomyState/lcd.cpp
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
#include "lcd.h"
|
||||||
|
|
||||||
|
void lcdAwake(){
|
||||||
|
lcd.begin(16, 2);
|
||||||
|
lcd.clear();
|
||||||
|
lcd.setCursor(0, 1);
|
||||||
|
lcd.print(" LCD awake ");
|
||||||
|
delay(1500);
|
||||||
|
lcd.clear();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void setHome(){
|
||||||
|
lcd.clear();
|
||||||
|
lcd.setCursor(0, 1);
|
||||||
|
lcd.print(" Currently ");
|
||||||
|
lcd.setCursor(1, 1);
|
||||||
|
lcd.print(" Home ");
|
||||||
|
}
|
||||||
|
|
||||||
|
void setAway(){
|
||||||
|
lcd.clear();
|
||||||
|
lcd.setCursor(0, 1);
|
||||||
|
lcd.print(" Currently ");
|
||||||
|
lcd.setCursor(1, 1);
|
||||||
|
lcd.print(" Not Home ");
|
||||||
|
}
|
||||||
|
|
||||||
|
void setBusy(){
|
||||||
|
lcd.clear();
|
||||||
|
lcd.setCursor(0, 1);
|
||||||
|
lcd.print(" Currently ");
|
||||||
|
lcd.setCursor(1, 1);
|
||||||
|
lcd.print(" Busy ");
|
||||||
|
}
|
||||||
|
|
||||||
|
void setCome(){
|
||||||
|
lcd.clear();
|
||||||
|
lcd.setCursor(0, 1);
|
||||||
|
lcd.print(" Free... ");
|
||||||
|
lcd.setCursor(1, 1);
|
||||||
|
lcd.print(" Come in! ");
|
||||||
|
}
|
||||||
14
RoomyState/lcd.h
Normal file
14
RoomyState/lcd.h
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
#include "lib.h"
|
||||||
|
|
||||||
|
LiquidCrystal lcd(RS, ENA, D4, D5, D6, D7);
|
||||||
|
|
||||||
|
void lcdAwake();
|
||||||
|
|
||||||
|
//Displaying functions
|
||||||
|
void setHome();
|
||||||
|
|
||||||
|
void setAway();
|
||||||
|
|
||||||
|
void setBusy();
|
||||||
|
|
||||||
|
void setCome();
|
||||||
5
RoomyState/lib.h
Normal file
5
RoomyState/lib.h
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
#include <LiquidCrystal.h>
|
||||||
|
#include "Counter.h"
|
||||||
|
#include <Arduino.h>
|
||||||
|
|
||||||
|
enum pinOut { RS, ENA, D4, D5, D6, D7, BI};
|
||||||
Loading…
x
Reference in New Issue
Block a user