39 lines
828 B
C
39 lines
828 B
C
|
#ifndef UTILS_H
|
||
|
#define UTILS_H
|
||
|
|
||
|
#include "firmware.h"
|
||
|
|
||
|
#define CARD_BUFFER_LENGTH 14
|
||
|
#define CARD_DATA_LENGTH 10
|
||
|
#define CARD_CHECK_LENGTH 2
|
||
|
#define CARD_HEAD_BYTE 0x2
|
||
|
#define CARD_TAIL_BYTE 0x3
|
||
|
struct __attribute__((packed)) cardData {
|
||
|
char head;
|
||
|
char data[CARD_DATA_LENGTH];
|
||
|
char checksum[CARD_CHECK_LENGTH];
|
||
|
char tail;
|
||
|
};
|
||
|
|
||
|
extern char cardBuffer[CARD_BUFFER_LENGTH];
|
||
|
|
||
|
bool greenButton();
|
||
|
bool redButton();
|
||
|
void relayOn();
|
||
|
void relayOff();
|
||
|
void greenLEDOn();
|
||
|
void greenLEDOff();
|
||
|
void redLEDOn();
|
||
|
void redLEDOff();
|
||
|
|
||
|
int8_t charToNum(char input);
|
||
|
bool checksum(struct cardData *cardData);
|
||
|
void checkCard();
|
||
|
|
||
|
String serializeLockJson(uint8_t lockState);
|
||
|
String deserializeLockJson(String input);
|
||
|
String serializeLog();
|
||
|
void deserializeInfoJson(String input, uint8_t *processed, uint32_t *unixTime, String *version);
|
||
|
|
||
|
#endif
|