You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
This repo is archived. You can view files and clone it, but cannot push or open issues/pull-requests.

42 lines
832 B
C

#ifndef __MQTT_INTERFACE_H_
#define __MQTT_INTERFACE_H_
#include <stdint.h>
typedef struct Timer Timer;
struct Timer
{
uint32_t systick_period;
uint32_t end_time;
};
typedef struct Network Network;
struct Network
{
int32_t my_socket;
int32_t (*mqttread) (Network*, uint8_t*, int32_t, int32_t);
int32_t (*mqttwrite) (Network*, uint8_t*, int32_t, int32_t);
void (*disconnect) (Network*);
};
void InitTimer(Timer*);
/*
void MilliTimer_Handler(void);
*/
int8_t expired(Timer*);
void countdown_ms(Timer*, uint32_t);
void countdown(Timer*, uint32_t);
int32_t left_ms(Timer*);
int32_t w5500_read(Network*, uint8_t*, int32_t, int32_t);
int32_t w5500_write(Network*, uint8_t*, int32_t, int32_t);
void w5500_disconnect(Network*);
void NewNetwork(Network*);
int32_t ConnectNetwork(Network*, uint8_t*, uint16_t);
#endif