(self, addr, buf)
| 130 | self._cs(1) |
| 131 | |
| 132 | def flash_write(self, addr, buf): |
| 133 | # Write in 256-byte chunks |
| 134 | length = len(buf) |
| 135 | pos = 0 |
| 136 | mv = memoryview(buf) |
| 137 | while pos < length: |
| 138 | size = min(length - pos, self.pagesize - pos % self.pagesize) |
| 139 | self._cs(0) |
| 140 | self._write_cmd(CMD_WRITE_ENABLE) |
| 141 | self._cs(1) |
| 142 | # _write_addr() sets _cs low |
| 143 | self._write_addr(self._cmds[_PROGRAM_PAGE_INDEX], addr) |
| 144 | self._spi.write(mv[pos:pos + size]) |
| 145 | self._cs(1) |
| 146 | self.wait() |
| 147 | |
| 148 | addr += size |
| 149 | pos += size |
| 150 | |
| 151 | def flash_erase(self, addr): |
| 152 | self._cs(0) |
no test coverage detected