| 88 | #define SPIFLASH_MACREAD 0x4B // read unique ID number (MAC) |
| 89 | |
| 90 | class SPIFlash { |
| 91 | public: |
| 92 | static uint8_t UNIQUEID[8]; |
| 93 | SPIFlash(uint8_t slaveSelectPin, uint16_t jedecID=0); |
| 94 | boolean initialize(); |
| 95 | void command(uint8_t cmd, boolean isWrite=false); |
| 96 | uint8_t readStatus(); |
| 97 | uint8_t readByte(uint32_t addr); |
| 98 | void readBytes(uint32_t addr, void* buf, uint16_t len); |
| 99 | void writeByte(uint32_t addr, uint8_t byt); |
| 100 | void writeBytes(uint32_t addr, const void* buf, uint16_t len); |
| 101 | boolean busy(); |
| 102 | void chipErase(); |
| 103 | void blockErase4K(uint32_t address); |
| 104 | void blockErase32K(uint32_t address); |
| 105 | void blockErase64K(uint32_t addr); |
| 106 | uint16_t readDeviceId(); |
| 107 | uint8_t* readUniqueId(); |
| 108 | |
| 109 | void sleep(); |
| 110 | void wakeup(); |
| 111 | void end(); |
| 112 | protected: |
| 113 | void select(); |
| 114 | void unselect(); |
| 115 | uint8_t _slaveSelectPin; |
| 116 | uint16_t _jedecID; |
| 117 | uint8_t _SPCR; |
| 118 | uint8_t _SPSR; |
| 119 | #ifdef SPI_HAS_TRANSACTION |
| 120 | SPISettings _settings; |
| 121 | #endif |
| 122 | }; |
| 123 | |
| 124 | #endif |
nothing calls this directly
no outgoing calls
no test coverage detected