Remove some magic numbers
This commit is contained in:
parent
1627ffe639
commit
d2d63146da
|
@ -18,6 +18,8 @@ char cardBuffer[CARD_BUFFER_LENGTH];
|
|||
|
||||
#define CARD_DATA_LENGTH 10
|
||||
#define CARD_CHECK_LENGTH 2
|
||||
#define CARD_HEAD_BYTE 0x2
|
||||
#define CARD_TAIL_BYTE 0x3
|
||||
typedef struct __attribute__((packed)) cardData {
|
||||
char head;
|
||||
char data[CARD_DATA_LENGTH];
|
||||
|
@ -48,6 +50,7 @@ typedef struct __attribute__((packed)) cardData {
|
|||
#define LED_ERROR_BLINK_TIME 50
|
||||
|
||||
#define EEPROM_SIZE 4095
|
||||
#define EEPROM_END_MARKER '$'
|
||||
|
||||
enum wifiStates
|
||||
{
|
||||
|
@ -117,7 +120,7 @@ void tickerLoop()
|
|||
|
||||
if (readChar == -1) {
|
||||
break;
|
||||
} else if (readChar == 0x2) {
|
||||
} else if (readChar == CARD_HEAD_BYTE) {
|
||||
bufPos = 0;
|
||||
}
|
||||
|
||||
|
@ -127,7 +130,7 @@ void tickerLoop()
|
|||
|
||||
cardBuffer[bufPos++] = readChar;
|
||||
|
||||
if (readChar == 0x3 && bufPos == CARD_BUFFER_LENGTH) {
|
||||
if (readChar == CARD_TAIL_BYTE && bufPos == CARD_BUFFER_LENGTH) {
|
||||
if (lockState == LOCK_OFF && LEDState == LED_OFF) checkCard();
|
||||
break;
|
||||
}
|
||||
|
@ -177,7 +180,10 @@ void checkCard()
|
|||
{
|
||||
cardData_t *cardData = (cardData_t *) cardBuffer;
|
||||
|
||||
if (cardData->head == 0x2 && cardData->tail == 0x3 && checksum(cardData)) {
|
||||
if (cardData->head == CARD_HEAD_BYTE &&
|
||||
cardData->tail == CARD_TAIL_BYTE &&
|
||||
checksum(cardData)) {
|
||||
|
||||
String cardStr = String();
|
||||
String authorizedCards = String();
|
||||
|
||||
|
@ -188,7 +194,7 @@ void checkCard()
|
|||
for (uint16_t i = 0; i < EEPROM_SIZE; i++) {
|
||||
char tmp = EEPROM.read(i);
|
||||
authorizedCards += tmp;
|
||||
if (tmp == '$') break;
|
||||
if (tmp == EEPROM_END_MARKER) break;
|
||||
}
|
||||
|
||||
if (LOGGING) Serial.println("[INFO] Good scan from card: " + cardStr);
|
||||
|
@ -457,7 +463,7 @@ void getCards()
|
|||
if (cardHTTPCode == HTTP_CODE_OK) {
|
||||
if (LOGGING) Serial.print("[INFO] Resource found, parsing response: ");
|
||||
String cardPayload = cardHTTP.getString();
|
||||
cardPayload += "$"; // Mark the end
|
||||
cardPayload += String(EEPROM_END_MARKER);
|
||||
if (LOGGING) Serial.println(cardPayload);
|
||||
|
||||
noInterrupts(); // commit() disables interrupts, but we want an atomic EEPROM buffer write
|
||||
|
|
Loading…
Reference in New Issue
Block a user