Image
Image

自动化陈稳

+ 关注

粉丝 1     |     主题 106     |     回帖 1380

ST32之SPI与W25Qxx实验-1
2021-3-31 23:25
  • ST MCU
  • 19
  • 688
  指令是06H。 //SPI_FLASH写使能 //将WEL置位 void SPI_FLASH_Write_Enable(void) { SPI_FLASH_CS=0; ...  
  5)SPI_Flash写使能  
  先发指令01H,接着写要写入的字节。 //写SPI_FLASH状态寄存器 //只有SPR,TB,BP2,BP1,BP0(bit 7,5,4,3,2)可 ...  
  4)写状态寄存器  
  3) 读ID函数  
  2)读取状态寄存器 //读取SPI_FLASH的状态寄存器 //BIT7 6 5 4 3 2 1 0 //SPR RV TB BP2 B ...  
  2)底层函数驱动 1)//初始化SPI FLASH的IO口 void W25QXX_Init(void) { GPIO_InitTypeDef GPIO_InitS ...  
  /片选线定义 #define SPI_FLASH_CS PBout(12) //选中FLASH,电路上片选线接PB12。  
ST32之SPI与W25Qxx实验-2
2021-3-31 23:35
  • ST MCU
  • 16
  • 719
  11)//无检验写SPI FLASH ,从某个地址写数据,不管地址跨不跨页  
  先写指令02H,再写24位地址,再写数据。 //在指定地址开始写入最大256字节的数据(W25Q64一次最多256个数 ...  
  ......  
  10)SPI在一页(0~65535)内写入少于256个字节的数据 W25Q64 将 8M 的容量分为 128 个块(Block),每个块大 ...  
  u16 i; W25QXX_CS=0; //使能器件 SPI2_ReadWriteByte(W25X_Re ...  
  首先发送指令,然后发送读的24位起始地址,然后就是等待数据读出。 //在指定地址开始读取指定长度的数据 / ...  
  9)从一个地址读取SPI FLASH指定长度的数据 ,读数据指令是03H  
  //Dst_Addr:扇区地址 根据实际容量设置 //擦除一个山区的最少时间:150ms void W25QXX_Erase_Sector(u32 Dst ...  
  时序: 先写指令20H,然后要擦除哪个Sector就要写这个地址(24位),  
  8) 擦除一个扇区 指令 0x20H  
  7)读取ID //读取芯片ID W25X16的ID:0XEF14 u16 SPI_Flash_ReadID(void) { u16 Temp = 0; SPI_FLASH_CS= ...  
  5)SPI_Flash写禁止 指令04H。 //SPI_FLASH写禁止 //将WEL清零 void SPI_FLASH_Write_Disable(void) ...  
2
3
近期访客