SPI FLASH peklo!

Pri doplnení flash pamäte K SOCZ80 som narazil na zaujímavy problém. Aj keď  pamäte poznajú rovnaké príkazy nemusia ich rovnako realizovať. V mojom prípade je problematický „Page program 0x02“. Ktorý niektoré pamäte realizujú ako zápis jedného Bytu. Iné ako sekvenčný zápis bez obmedzenia veľkosti a ďalšie len z obmedzením na 256. Prikladám tabuľku z môjho čítania datashetou. Vybral som len príkazy ktoré sú „použiteľné“ v bežnej praxi.

Command code addres dummy data M25P40 W25Q32 SST25VF-16 MX25L6445 SOCZ80
Write Enable 0x06 0 0 0 O O O O O
Write Disable 0x04 0 0 0 O O O O X
Read ID 0x9f 0 0 1-20 O O O O O
read status 0x05 0 0 1-nekonecno O O O O O
write status 0x01 0 0 1 O O (data 2) O O X
read data 0x03 3 0 1-nekonecno O O O O X
read data (high speed) 0x0b 3 1 1-nekonecno O O O O O
Page program 0x02 3 0 1-256 O ? (data len 1) ? (data len 1) ? (Data len 256) O
Sector Erase (64kB) 0xd8 3 0 0 O O O O X
Bulk Erase 0xc7 0 0 0 O O O O X
Sector Erase (4kB) 0x20 3 0 0 X O O O O
Sector Erase (32kB) 0x52 3 0 0 X O O O X
Auto Increment Programing 0xAD 3 0 2-nekonecno X X O O X
Print Friendly, PDF & Email