| 430 | } |
| 431 | |
| 432 | void SerialFlashChip::readSerialNumber(uint8_t *buf) //needs room for 8 bytes |
| 433 | { |
| 434 | if (busy) wait(); |
| 435 | SPIPORT.beginTransaction(SPICONFIG); |
| 436 | CSASSERT(); |
| 437 | SPIPORT.transfer(0x4B); |
| 438 | SPIPORT.transfer16(0); |
| 439 | SPIPORT.transfer16(0); |
| 440 | for (int i=0; i<8; i++) { |
| 441 | buf[i] = SPIPORT.transfer(0); |
| 442 | } |
| 443 | CSRELEASE(); |
| 444 | SPIPORT.endTransaction(); |
| 445 | // Serial.printf("Serial Number: %02X %02X %02X %02X %02X %02X %02X %02X\n", buf[0], buf[1], buf[2], buf[3], buf[4], buf[5], buf[6], buf[7]); |
| 446 | } |
| 447 | |
| 448 | uint32_t SerialFlashChip::capacity(const uint8_t *id) |
| 449 | { |
nothing calls this directly
no outgoing calls
no test coverage detected