Compare commits
2 Commits
b5de72a6d1
...
79e5760d19
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
79e5760d19 | ||
|
|
dcbe637ccc |
@@ -79,7 +79,7 @@ void TimerEvent_handling(Timing_RTC event){
|
||||
}
|
||||
printf("\r\nCHx Closs : ");
|
||||
for (j = 0; j < Relay_Number_MAX; j++) {
|
||||
if(*(&(event.Relay_CH1)+j) == STATE_Closs)
|
||||
if(*(&(event.Relay_CH1)+j) == STATE_Close)
|
||||
printf("CH%d ", j+1);
|
||||
}
|
||||
if(Retain_channels){
|
||||
@@ -233,7 +233,7 @@ void TimerEvent_CHxn_Set(datetime_t time,Status_adjustment *Relay_n, Repetition_
|
||||
for (int i = 0; i < Relay_Number_MAX; i++) {
|
||||
if(Relay_n[i] == STATE_Open)
|
||||
printf("Open ");
|
||||
else if(Relay_n[i] == STATE_Closs)
|
||||
else if(Relay_n[i] == STATE_Close)
|
||||
printf("Closs ");
|
||||
else if(Relay_n[i] == STATE_Retain)
|
||||
printf("Retain ");
|
||||
@@ -253,7 +253,7 @@ void TimerEvent_CHxn_Set(datetime_t time,Status_adjustment *Relay_n, Repetition_
|
||||
for (int i = 0; i < Relay_Number_MAX; i++) {
|
||||
if (Relay_n[i] == STATE_Open)
|
||||
len += snprintf(Event_content + len, sizeof(Event_content) - len, "Open ");
|
||||
else if(Relay_n[i] == STATE_Closs)
|
||||
else if(Relay_n[i] == STATE_Close)
|
||||
len += snprintf(Event_content + len, sizeof(Event_content) - len, "Closs ");
|
||||
else if(Relay_n[i] == STATE_Retain)
|
||||
len += snprintf(Event_content + len, sizeof(Event_content) - len, "Retain ");
|
||||
@@ -312,7 +312,7 @@ void TimerEvent_printf(Timing_RTC event){
|
||||
}
|
||||
printf("\r\nCHx Closs : ");
|
||||
for (j = 0; j < Relay_Number_MAX; j++) {
|
||||
if(open[j] == STATE_Closs)
|
||||
if(open[j] == STATE_Close)
|
||||
printf("CH%d ", j+1);
|
||||
}
|
||||
printf("\r\nCHx Retain : ");
|
||||
|
||||
@@ -11,7 +11,7 @@ bool Relay_Open(uint8_t CHx)
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
bool Relay_Closs(uint8_t CHx)
|
||||
bool Relay_Close(uint8_t CHx)
|
||||
{
|
||||
if(!Set_EXIO(CHx, false)){
|
||||
printf("Failed to Closs CH%d!!!\r\n", CHx);
|
||||
@@ -35,7 +35,7 @@ bool Relay_CHx(uint8_t CHx, bool State)
|
||||
if(State)
|
||||
result = Relay_Open(CHx);
|
||||
else
|
||||
result = Relay_Closs(CHx);
|
||||
result = Relay_Close(CHx);
|
||||
if(!result)
|
||||
Failure_Flag = 1;
|
||||
return result;
|
||||
@@ -233,12 +233,12 @@ void Relay_Immediate_CHxn(Status_adjustment * Relay_n, uint8_t Mode_Flag)
|
||||
else if(Mode_Flag == RTC_Mode)
|
||||
printf("RTC Data :\r\n");
|
||||
for (int i = 0; i < 8; i++) {
|
||||
if(Relay_n[i] == STATE_Open || Relay_n[i] == STATE_Closs){
|
||||
if(Relay_n[i] == STATE_Open || Relay_n[i] == STATE_Close){
|
||||
Relay_Flag[i] = (bool)Relay_n[i];
|
||||
ret = Relay_CHx(i+1,Relay_n[i]);
|
||||
if(Relay_n[i] == STATE_Open)
|
||||
printf("|*** Relay CH%d on ***|\r\n",i+1);
|
||||
else if(Relay_n[i] == STATE_Closs)
|
||||
else if(Relay_n[i] == STATE_Close)
|
||||
printf("|*** Relay CH%d off ***|\r\n",i+1);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -36,7 +36,7 @@
|
||||
#define RTC_Mode 6
|
||||
|
||||
typedef enum {
|
||||
STATE_Closs = 0, // Closs Relay
|
||||
STATE_Close = 0, // Closs Relay
|
||||
STATE_Open = 1, // Open Relay
|
||||
STATE_Retain = 2, // Stay in place
|
||||
} Status_adjustment;
|
||||
@@ -44,7 +44,7 @@ typedef enum {
|
||||
extern bool Relay_Flag[8]; // Relay current status flag
|
||||
|
||||
void Relay_Init(void);
|
||||
bool Relay_Closs(uint8_t CHx);
|
||||
bool Relay_Close(uint8_t CHx);
|
||||
bool Relay_Open(uint8_t CHx);
|
||||
bool Relay_CHx_Toggle(uint8_t CHx);
|
||||
bool Relay_CHx(uint8_t CHx, bool State);
|
||||
|
||||
@@ -11,7 +11,7 @@ namespace drivers
|
||||
|
||||
const bool TCA9554PWR::writeRegister(const uint8_t reg, const uint8_t val)
|
||||
{
|
||||
if (m_i2c.Write(m_address, reg, {val}))
|
||||
if (m_i2c.write(m_address, reg, {val}))
|
||||
return true;
|
||||
log_e("Unable to write register: reg[%d], val[%d] ", reg, val);
|
||||
return false;
|
||||
@@ -20,7 +20,7 @@ namespace drivers
|
||||
const bool TCA9554PWR::readRegister(const uint8_t reg, uint8_t &val)
|
||||
{
|
||||
std::vector<uint8_t> data;
|
||||
if (m_i2c.Read(m_address, reg, 1, data))
|
||||
if (m_i2c.read(m_address, reg, 1, data))
|
||||
{
|
||||
val = data.back();
|
||||
return true;
|
||||
|
||||
@@ -15,7 +15,7 @@ namespace drivers
|
||||
isInitialized = true;
|
||||
}
|
||||
|
||||
const bool I2C::Read(const uint8_t deviceAddr, const uint8_t deviceReg, const uint8_t len, std::vector<uint8_t> &data)
|
||||
const bool I2C::read(const uint8_t deviceAddr, const uint8_t deviceReg, const uint8_t len, std::vector<uint8_t> &data)
|
||||
{
|
||||
busy.try_lock();
|
||||
Wire.beginTransmission(deviceAddr);
|
||||
@@ -49,7 +49,7 @@ namespace drivers
|
||||
return true;
|
||||
}
|
||||
|
||||
const bool I2C::Write(const uint8_t deviceAddr, const uint8_t deviceReg, const std::vector<uint8_t> &data)
|
||||
const bool I2C::write(const uint8_t deviceAddr, const uint8_t deviceReg, const std::vector<uint8_t> &data)
|
||||
{
|
||||
busy.lock();
|
||||
Wire.beginTransmission(deviceAddr);
|
||||
|
||||
@@ -19,8 +19,8 @@ namespace drivers
|
||||
I2C(void);
|
||||
~I2C(void);
|
||||
|
||||
const bool Read(const uint8_t deviceAddr, const uint8_t deviceReg, const uint8_t len, std::vector<uint8_t> &data);
|
||||
const bool Write(const uint8_t deviceAddr, const uint8_t deviceReg, const std::vector<uint8_t> &data);
|
||||
const bool read(const uint8_t deviceAddr, const uint8_t deviceReg, const uint8_t len, std::vector<uint8_t> &data);
|
||||
const bool write(const uint8_t deviceAddr, const uint8_t deviceReg, const std::vector<uint8_t> &data);
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -191,3 +191,67 @@ void datetime_to_str(char *datetime_str, datetime_t time)
|
||||
sprintf(datetime_str, " %d.%d.%d %d:%d:%d %s", time.year, time.month,
|
||||
time.day, time.hour, time.minute, time.second, Week[time.dotw]);
|
||||
}
|
||||
|
||||
namespace drivers
|
||||
{
|
||||
|
||||
PCF85063::PCF85063(I2C &i2c, const uint8_t address) : m_i2c(i2c), m_address(address)
|
||||
{
|
||||
}
|
||||
|
||||
const bool PCF85063::reset(void)
|
||||
{
|
||||
}
|
||||
|
||||
const bool PCF85063::setTime(datetime_t time)
|
||||
{
|
||||
}
|
||||
|
||||
const bool PCF85063::setDate(datetime_t date)
|
||||
{
|
||||
}
|
||||
|
||||
const bool PCF85063::setDatetime(datetime_t datetime)
|
||||
{
|
||||
}
|
||||
|
||||
const bool PCF85063::readDate(datetime_t &datetime)
|
||||
{
|
||||
}
|
||||
|
||||
const bool PCF85063::readTime(datetime_t &datetime)
|
||||
{
|
||||
}
|
||||
|
||||
const bool PCF85063::readDatetime(datetime_t &datetime)
|
||||
{
|
||||
}
|
||||
|
||||
const bool PCF85063::enableAlarm(const bool enable)
|
||||
{
|
||||
}
|
||||
|
||||
const bool PCF85063::setAlarm(datetime_t time)
|
||||
{
|
||||
}
|
||||
|
||||
const bool PCF85063::readAlarm(datetime_t &time)
|
||||
{
|
||||
}
|
||||
|
||||
const bool PCF85063::getAlarmFlafs(uint8_t &flags)
|
||||
{
|
||||
}
|
||||
|
||||
const std::string PCF85063::datetime2str(datetime_t &time)
|
||||
{
|
||||
}
|
||||
|
||||
const uint8_t PCF85063::decToBcd(int val)
|
||||
{
|
||||
}
|
||||
|
||||
const int PCF85063::bcdToDec(uint8_t val)
|
||||
{
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
#pragma once
|
||||
|
||||
#include "I2C_Driver.h"
|
||||
#include <string>
|
||||
|
||||
// PCF85063_ADDRESS
|
||||
#define PCF85063_ADDRESS (0x51)
|
||||
@@ -90,3 +91,48 @@ void PCF85063_Set_Alarm(datetime_t time);
|
||||
void PCF85063_Read_Alarm(datetime_t *time);
|
||||
|
||||
void datetime_to_str(char *datetime_str, datetime_t time);
|
||||
|
||||
namespace drivers
|
||||
{
|
||||
|
||||
class PCF85063
|
||||
{
|
||||
I2C &m_i2c;
|
||||
uint8_t m_address;
|
||||
|
||||
typedef struct
|
||||
{
|
||||
uint16_t year;
|
||||
uint8_t month;
|
||||
uint8_t day;
|
||||
uint8_t dotw;
|
||||
uint8_t hour;
|
||||
uint8_t minute;
|
||||
uint8_t second;
|
||||
} datetime_t;
|
||||
|
||||
public:
|
||||
PCF85063(I2C &i2c, const uint8_t address, const uint8_t ctrl1, const uint8_t ctrl2);
|
||||
|
||||
const bool reset(void);
|
||||
|
||||
const bool setTime(datetime_t time);
|
||||
const bool setDate(datetime_t date);
|
||||
const bool setDatetime(datetime_t datetime);
|
||||
|
||||
const bool readDate(datetime_t &datetime);
|
||||
const bool readTime(datetime_t &datetime);
|
||||
const bool readDatetime(datetime_t &datetime);
|
||||
|
||||
const bool enableAlarm(const bool enable);
|
||||
const bool setAlarm(datetime_t time);
|
||||
const bool readAlarm(datetime_t &time);
|
||||
const bool getAlarmFlafs(uint8_t& flags);
|
||||
|
||||
private:
|
||||
const std::string datetime2str(datetime_t &time);
|
||||
const uint8_t decToBcd(int val);
|
||||
const int bcdToDec(uint8_t val);
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -18,7 +18,7 @@ void setup() {
|
||||
Flash_test();
|
||||
GPIO_Init(); // RGB . Buzzer GPIO
|
||||
//I2C_Init();
|
||||
RTC_Init();// RTC
|
||||
//RTC_Init(); // RTC
|
||||
SD_Init();
|
||||
Serial_Init(); // UART(RS485/CAN)
|
||||
MQTT_Init();// MQTT
|
||||
|
||||
Reference in New Issue
Block a user