Playing and controlling MP3s works great. \o/

This commit is contained in:
2019-08-06 20:50:11 +02:00
parent 2a7dd5d8a1
commit b8d4d6bb92
12 changed files with 432 additions and 193 deletions

View File

@ -1,17 +1,49 @@
#include "controller.h"
#include "spi_master.h"
void Controller::vol_up() {
_player->vol_up();
Controller::Controller(Player* p) {
_player = p;
_rfid = new MFRC522(PIN_RC522_CS, MFRC522::UNUSED_PIN);
SPIMaster::enable(PIN_RC522_CS);
Serial.println("Initializing MFRC522...");
_rfid->PCD_Init();
_rfid->PCD_DumpVersionToSerial();
SPIMaster::disable();
}
void Controller::vol_down() {
_player->vol_down();
void Controller::loop() {
_check_rfid();
_check_serial();
}
void Controller::track_next() {
_player->track_next();
void Controller::_check_rfid() {
SPIMaster::enable(PIN_RC522_CS);
if (!_rfid->PICC_IsNewCardPresent()) {
return;
}
if (!_rfid->PICC_ReadCardSerial()) {
return;
}
_rfid->PICC_DumpToSerial(&(_rfid->uid));
SPIMaster::disable();
}
void Controller::track_prev() {
_player->track_prev();
void Controller::_check_serial() {
if (Serial.available() > 0) {
char c = Serial.read();
if (c == 'n') {
_player->track_next();
} else if (c=='p') {
_player->track_prev();
} else if (c=='s') {
_player->stop();
} else if (c=='+') {
_player->vol_up();
} else if (c=='-') {
_player->vol_down();
} else if (c==' ') {
_player->play_album("12345678");
}
}
}