Image
Image

chenqiang10

+ 关注

粉丝 1     |     主题 39     |     回帖 940

[申精]中秋献礼,开源基于STM32H7的小掌机,PCB和源码都有哦
2021-4-2 21:06
  • ST MCU
  • 251
  • 29837
  膜拜大佬  
stm32+spi+w25q
2019-10-1 13:58
  • ST MCU
  • 28
  • 3113
  spi驱动如下  
  //唤醒 void W25QXX_WAKEUP(void) { W25QXX_CS=0; //使能器件 ...  
  //进入掉电模式 void W25QXX_PowerDown(void) { W25QXX_CS=0; //使能 ...  
  //等待空闲 void W25QXX_Wait_Busy(void) { while((W25QXX_ReadSR()&0x01)==0x01); // 等待BUSY ...  
  //擦除一个扇区 //Dst_Addr:扇区地址 根据实际容量设置 //擦除一个山区的最少时间:150ms void W25QXX_Erase ...  
  //擦除整个芯片 //等待时间超长... void W25QXX_Erase_Chip(void) { ...  
  //写SPI FLASH //在指定地址开始写入指定长度的数据 //该函数带擦除操作! //pBuffer:数据存储区 //WriteA ...  
  //无检验写SPI FLASH //必须确保所写的地址范围内的数据全部为0XFF,否则在非0XFF处写入的数据将失败! //具 ...  
  //SPI在一页(0~65535)内写入少于256个字节的数据 //在指定地址开始写入最大256字节的数据 //pBuffer:数据存 ...  
  //读取SPI FLASH //在指定地址开始读取指定长度的数据 //pBuffer:数据存储区 //ReadAddr:开始读取的地址( ...  
  //读取芯片ID //返回值如下: //0XEF13,表示芯片型号为W25Q80 //0XEF14,表示芯片型号为W25Q16 ...  
  //W25QXX写禁止 //将WEL清零 void W25QXX_Write_Disable(void) { W25QXX_CS=0; ...  
  //W25QXX写使能 //将WEL置位 void W25QXX_Write_Enable(void) { W25QXX_CS=0; ...  
  //写W25QXX状态寄存器 //只有SPR,TB,BP2,BP1,BP0(bit 7,5,4,3,2)可以写!!! void W25QXX_Write_SR(u8 sr) ...  
  //读取W25QXX的状态寄存器 //BIT7 6 5 4 3 2 1 0 //SPR RV TB BP2 BP1 BP0 WEL BUSY //SPR ...  
  //4Kbytes为一个Sector //16个扇区为1个Block //W25Q128 //容量为16M字节,共有128个Block,4096个Sector ...  
  //SPIx 读写一个字节 //TxData:要写入的字节 //返回值:读取到的字节 u8 SPI2_ReadWriteByte(u8 TxData) { ...  
  //SPI 速度设置函数 //SpeedSet: //SPI_BaudRatePrescaler_2 2分频 //SPI_BaudRatePrescaler_8 8分 ...  
  void SPI2_Init(void) { GPIO_InitTypeDef GPIO_InitStructure; SPI_InitTypeDef SPI_InitStructure; ...  
2
3
近期访客