chore: cleanup
This commit is contained in:
@@ -6,6 +6,14 @@
|
|||||||
#include "ch32v003fun.h"
|
#include "ch32v003fun.h"
|
||||||
#include "w5500.h"
|
#include "w5500.h"
|
||||||
|
|
||||||
|
// Options structure for client identification
|
||||||
|
typedef struct {
|
||||||
|
char* clientid;
|
||||||
|
char* username;
|
||||||
|
char* password;
|
||||||
|
int qos;
|
||||||
|
} ch32_mqtt_options_t;
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
Network network;
|
Network network;
|
||||||
MQTTClient client;
|
MQTTClient client;
|
||||||
|
|||||||
@@ -20,11 +20,11 @@ void spidma_read_buffer(uint8_t *buf, uint16_t len);
|
|||||||
// SPI DMA buffer write
|
// SPI DMA buffer write
|
||||||
void spidma_write_buffer(uint8_t *buf, uint16_t len);
|
void spidma_write_buffer(uint8_t *buf, uint16_t len);
|
||||||
|
|
||||||
// SPI (non-DMA) byte read
|
// // SPI (non-DMA) byte read
|
||||||
uint8_t spi_read_byte();
|
// uint8_t spi_read_byte();
|
||||||
|
|
||||||
// SPI (non-DMA) byte write
|
// // SPI (non-DMA) byte write
|
||||||
void spi_write_byte(uint8_t byte);
|
// void spi_write_byte(uint8_t byte);
|
||||||
|
|
||||||
// activate CS
|
// activate CS
|
||||||
void spi_select(void);
|
void spi_select(void);
|
||||||
|
|||||||
@@ -7,13 +7,16 @@
|
|||||||
|
|
||||||
// Macro definitions
|
// Macro definitions
|
||||||
#define APB1_CLOCK (FUNCONF_SYSTEM_CORE_CLOCK / 2) // APB1 is divided by 2
|
#define APB1_CLOCK (FUNCONF_SYSTEM_CORE_CLOCK / 2) // APB1 is divided by 2
|
||||||
#define UART_BRR_APB1 \
|
|
||||||
(((APB1_CLOCK) + (UART_BAUD_RATE / 2)) / (UART_BAUD_RATE)) // USART2
|
// USART2
|
||||||
#define UART_BRR_APB2 \
|
#define UART_BRR_APB1 (((APB1_CLOCK) + (UART_BAUD_RATE / 2)) / (UART_BAUD_RATE))
|
||||||
(((FUNCONF_SYSTEM_CORE_CLOCK) + (UART1_BAUD_RATE / 2)) / \
|
|
||||||
(UART1_BAUD_RATE)) // USART1
|
// USART1
|
||||||
|
#define UART_BRR_APB2 \
|
||||||
|
(((FUNCONF_SYSTEM_CORE_CLOCK) + (UART1_BAUD_RATE / 2)) / (UART1_BAUD_RATE))
|
||||||
|
|
||||||
// Function prototypes
|
// Function prototypes
|
||||||
|
|
||||||
void init_uart(int uart_brr);
|
void init_uart(int uart_brr);
|
||||||
|
|
||||||
#endif // UART_H
|
#endif // UART_H
|
||||||
|
|||||||
@@ -9,23 +9,11 @@
|
|||||||
#define DNS_SOCKET 1
|
#define DNS_SOCKET 1
|
||||||
#define TCP_SOCKET 2
|
#define TCP_SOCKET 2
|
||||||
|
|
||||||
// Options structure for client identification
|
|
||||||
typedef struct {
|
|
||||||
char* clientid;
|
|
||||||
char* username;
|
|
||||||
char* password;
|
|
||||||
int qos;
|
|
||||||
} ch32_mqtt_options_t;
|
|
||||||
|
|
||||||
extern volatile int ip_assigned;
|
extern volatile int ip_assigned;
|
||||||
|
|
||||||
// Initializes the W5500 chip
|
// Initializes the W5500 chip
|
||||||
void configure_network(void);
|
void configure_network(void);
|
||||||
|
|
||||||
// void configure_dhcp(void);
|
|
||||||
void dhcp_init(void);
|
|
||||||
void dhcp_process(void);
|
|
||||||
|
|
||||||
// resolves a domain name
|
// resolves a domain name
|
||||||
// void resolve_domain_name(const char* domain_name);
|
// void resolve_domain_name(const char* domain_name);
|
||||||
|
|
||||||
|
|||||||
@@ -12,7 +12,9 @@ static struct {
|
|||||||
char last_property[16];
|
char last_property[16];
|
||||||
} handler;
|
} handler;
|
||||||
|
|
||||||
static void on_modbus_response(uint8_t* buf, uint16_t len, uint16_t value) {
|
static void on_modbus_response(uint8_t* buf __attribute__((unused)),
|
||||||
|
uint16_t len __attribute__((unused)),
|
||||||
|
uint16_t value) {
|
||||||
if (handler.last_device_idx >= RS485_DEVICE_COUNT || !handler.value_cb) {
|
if (handler.last_device_idx >= RS485_DEVICE_COUNT || !handler.value_cb) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@@ -25,7 +27,7 @@ static void on_modbus_response(uint8_t* buf, uint16_t len, uint16_t value) {
|
|||||||
handler.last_property[0] = '\0';
|
handler.last_property[0] = '\0';
|
||||||
}
|
}
|
||||||
|
|
||||||
static void on_modbus_error(uint8_t error_code) {
|
static void on_modbus_error(uint8_t error_code __attribute__((unused))) {
|
||||||
// clear the context on error
|
// clear the context on error
|
||||||
handler.last_device_idx = 0xFF;
|
handler.last_device_idx = 0xFF;
|
||||||
handler.last_property[0] = '\0';
|
handler.last_property[0] = '\0';
|
||||||
|
|||||||
@@ -21,14 +21,6 @@
|
|||||||
#define HOMIE_STATE_DISCONNECTED "disconnected"
|
#define HOMIE_STATE_DISCONNECTED "disconnected"
|
||||||
#define MAX_PAYLOAD_LENGTH 256
|
#define MAX_PAYLOAD_LENGTH 256
|
||||||
|
|
||||||
// TODO:
|
|
||||||
// Property definitions
|
|
||||||
typedef enum {
|
|
||||||
PROP_STATE, // for relay
|
|
||||||
PROP_MOISTURE, // for soil sensor
|
|
||||||
PROP_TEMPERATURE, // for soil sensor and thermometer
|
|
||||||
} device_property_t;
|
|
||||||
|
|
||||||
// Parse Homie topic format: homie/node-id/device-name/property/[set|get]
|
// Parse Homie topic format: homie/node-id/device-name/property/[set|get]
|
||||||
// Returns: 1 if successful, 0 if invalid format or buffer overflow
|
// Returns: 1 if successful, 0 if invalid format or buffer overflow
|
||||||
static uint8_t parse_homie_topic(const char* topic, size_t topic_len,
|
static uint8_t parse_homie_topic(const char* topic, size_t topic_len,
|
||||||
|
|||||||
Reference in New Issue
Block a user