relais added
This commit is contained in:
parent
8b58b3a443
commit
d354be1077
|
@ -23,7 +23,7 @@ pico_sdk_init()
|
|||
|
||||
# Add executable. Default name is the project name, version 0.1
|
||||
|
||||
add_executable(gbmanager gbmanager.cpp lcd.cpp ds18b20.cpp)
|
||||
add_executable(gbmanager gbmanager.cpp lcd.cpp ds18b20.cpp relais.cpp)
|
||||
|
||||
pico_set_program_name(gbmanager "gbmanager")
|
||||
pico_set_program_version(gbmanager "0.1")
|
||||
|
|
|
@ -8,11 +8,15 @@
|
|||
#include "config.h"
|
||||
#include "ds18b20.h"
|
||||
#include "lcd.h"
|
||||
#include "relais.h"
|
||||
|
||||
// GPIOs used
|
||||
constexpr uint I2C_SDA_PIN = 26;
|
||||
constexpr uint I2C_SCL_PIN = 27;
|
||||
constexpr uint DS18B20_PIN = 28;
|
||||
constexpr uint RELAIS_PIN = 18;
|
||||
|
||||
// Custom chars for the LCD
|
||||
constexpr char CUSTOM_CHAR_DEG = 0xDF;
|
||||
constexpr char CUSTOM_CHAR_AE = 0xE1;
|
||||
|
||||
|
@ -22,11 +26,16 @@ int main() {
|
|||
// Enable UART so we can print status output
|
||||
stdio_init_all();
|
||||
|
||||
// Initialize the LCD
|
||||
auto myLCD = LCD(i2c1, I2C_SDA_PIN, I2C_SCL_PIN);
|
||||
myLCD.clear();
|
||||
|
||||
// Initialize the temp sensor
|
||||
// DS18B20 ds = DS18B20(pio0, DS18B20_PIN);
|
||||
|
||||
// Initialize the relais
|
||||
Relais relais(RELAIS_PIN);
|
||||
|
||||
float temp_act{0};
|
||||
float temp_tgt{28.0};
|
||||
float temp_diff{0.5};
|
||||
|
@ -56,6 +65,8 @@ int main() {
|
|||
}
|
||||
isHeating ? heatInfo = ">H<" : heatInfo = " ";
|
||||
|
||||
relais.activate(isHeating);
|
||||
|
||||
lcdText.str("");
|
||||
lcdText.clear();
|
||||
lcdText.precision(4);
|
||||
|
|
|
@ -0,0 +1,23 @@
|
|||
#include "relais.h"
|
||||
|
||||
Relais::Relais(uint gpio) : gpio{gpio} {
|
||||
gpio_set_dir(gpio, true);
|
||||
gpio_init(gpio);
|
||||
off();
|
||||
}
|
||||
|
||||
void Relais::activate(bool active) {
|
||||
if (active) {
|
||||
gpio_pull_down(gpio);
|
||||
} else {
|
||||
gpio_pull_up(gpio);
|
||||
}
|
||||
}
|
||||
|
||||
void Relais::on() {
|
||||
activate(true);
|
||||
}
|
||||
|
||||
void Relais::off() {
|
||||
activate(false);
|
||||
}
|
Loading…
Reference in New Issue