mirror of
https://github.com/sweidac/kidsbox.git
synced 2025-07-27 19:31:54 +02:00
Adds rfid example code.
This commit is contained in:
17
.vscode/c_cpp_properties.json
vendored
Normal file
17
.vscode/c_cpp_properties.json
vendored
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
{
|
||||||
|
"configurations": [
|
||||||
|
{
|
||||||
|
"name": "Linux",
|
||||||
|
"includePath": [
|
||||||
|
"${workspaceFolder}/**",
|
||||||
|
"${workspaceFolder}/device/components/*"
|
||||||
|
],
|
||||||
|
"defines": [],
|
||||||
|
"compilerPath": "/usr/bin/gcc",
|
||||||
|
"cStandard": "gnu17",
|
||||||
|
"cppStandard": "gnu++17",
|
||||||
|
"intelliSenseMode": "linux-gcc-x64"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"version": 4
|
||||||
|
}
|
17
README.md
Normal file
17
README.md
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
# Kidsbox
|
||||||
|
|
||||||
|
### RFID
|
||||||
|
|
||||||
|
_The MISO/MOSI pins are not inverted on host/chip_
|
||||||
|
|
||||||
|
Connection Table:
|
||||||
|
|
||||||
|
|RC522 Pin|ESP32 Lyrat v4.3 Pin|GPIO Number|
|
||||||
|
|-|-|-|
|
||||||
|
|3.3v|3.3v|-|
|
||||||
|
|RST|3.3v|-|
|
||||||
|
|GND|GND|-|
|
||||||
|
|SDA|SCLK|5|
|
||||||
|
|SCK|SCK (I2C header)|23|
|
||||||
|
|MOSI|LRCK|25|
|
||||||
|
|MISO|DSDIN|26|
|
@@ -1,2 +1,2 @@
|
|||||||
idf_component_register(SRCS "Networking.cpp" "main.cpp" "WebInterface.cpp"
|
idf_component_register(SRCS "Networking.cpp" "main.cpp" "WebInterface.cpp" "RFIDInterface.cpp"
|
||||||
INCLUDE_DIRS ".")
|
INCLUDE_DIRS ".")
|
||||||
|
26
device/main/RFIDInterface.cpp
Normal file
26
device/main/RFIDInterface.cpp
Normal file
@@ -0,0 +1,26 @@
|
|||||||
|
#include "RFIDInterface.hpp"
|
||||||
|
|
||||||
|
#include <esp_log.h>
|
||||||
|
|
||||||
|
static const char* TAG = "rfid";
|
||||||
|
|
||||||
|
void tag_handler(uint8_t* sn) { // serial number is always 5 bytes long
|
||||||
|
ESP_LOGI(TAG, "Tag: %#x %#x %#x %#x %#x",
|
||||||
|
sn[0], sn[1], sn[2], sn[3], sn[4]
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
RFIDInterface::RFIDInterface() {
|
||||||
|
startConfig = (rc522_start_args_t){
|
||||||
|
.miso_io = 26,
|
||||||
|
.mosi_io = 25,
|
||||||
|
.sck_io = 23,
|
||||||
|
.sda_io = 5,
|
||||||
|
.callback = &tag_handler
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
void RFIDInterface::start() {
|
||||||
|
rc522_start(startConfig);
|
||||||
|
}
|
||||||
|
|
14
device/main/RFIDInterface.hpp
Normal file
14
device/main/RFIDInterface.hpp
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
#ifndef _RFID_INTERFACE_HPP
|
||||||
|
#define _RFID_INTERFACE_HPP
|
||||||
|
|
||||||
|
#include <rc522.h>
|
||||||
|
|
||||||
|
class RFIDInterface {
|
||||||
|
rc522_start_args_t startConfig;
|
||||||
|
|
||||||
|
public:
|
||||||
|
RFIDInterface();
|
||||||
|
void start();
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif
|
@@ -4,6 +4,7 @@
|
|||||||
|
|
||||||
#include "Networking.hpp"
|
#include "Networking.hpp"
|
||||||
#include "WebInterface.hpp"
|
#include "WebInterface.hpp"
|
||||||
|
#include "RFIDInterface.hpp"
|
||||||
|
|
||||||
extern "C" {
|
extern "C" {
|
||||||
void app_main();
|
void app_main();
|
||||||
@@ -11,6 +12,7 @@ extern "C" {
|
|||||||
|
|
||||||
Networking networking;
|
Networking networking;
|
||||||
WebInterface webInterface;
|
WebInterface webInterface;
|
||||||
|
RFIDInterface rfid;
|
||||||
|
|
||||||
void app_main(void) {
|
void app_main(void) {
|
||||||
initArduino();
|
initArduino();
|
||||||
@@ -18,6 +20,6 @@ void app_main(void) {
|
|||||||
Serial.begin(115200);
|
Serial.begin(115200);
|
||||||
|
|
||||||
networking.connectWifi();
|
networking.connectWifi();
|
||||||
|
|
||||||
webInterface.start();
|
webInterface.start();
|
||||||
|
rfid.start();
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user