#pragma once #include "sd_card.h" #include "config.h" #define SCI_MODE 0x00 #define SCI_STATUS 0x01 #define SCI_CLOCKF 0x03 #define CMD_WRITE 0x02 #define CMD_READ 0x03 #define XRESET PIN_VS1053_XRESET #define DREQ PIN_VS1053_DREQ class Player { private: SDCard* _sd_card; void _reset(); void _init(); void _wait(); uint16_t _read_register(uint8_t address, uint32_t spi_speed, uint16_t t);//=SPI_CLOCK_DIV4); void _write_register(uint8_t address, uint16_t value, uint32_t spi_speed);//=SPI_CLOCK_DIV2); public: Player(SDCard* c); void vol_up(); void vol_down(); void track_next(); void track_prev(); };