SST25VF016B的FLASH根据野火及网络资料修改的基于IAR的SPI通信.pdf

SST25VF016B的FLASH根据野火及网络资料修改的基于IAR的SPI通信.pdf

  1. 1、本文档共21页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
SST25VF016B的FLASH根据野火及网络资料修改的基于IAR的SPI通信

实验目的:将数据写入外部FLASH 中,然后再读出来 FLASH :SST25VF016B FLASH硬件接口:(其中野火的CE 口为PA4 ,此处我的为PE6 ) 操作指令: 主要代码: Main.c #include stdio.h #include usart1.h #include spi_flash.h #define sFLASH_ID 0xBF2541 //SST25VF016B #define FLASH_WriteAddress 0x00000 #define FLASH_ReadAddress FLASH_WriteAddress #define FLASH_SectorToErase FLASH_WriteAddress #define countof(a) (sizeof(a) / sizeof(*(a))) #define BufferSize (countof(Tx_Buffer)-1) __IO uint32_t DeviceID = 0; __IO uint32_t FlashID = 0; /* 发送缓冲区初始化*/ uint8_t Tx_Buffer[] = abcdefg; uint8_t Rx_Buffer[BufferSize]; main(void) { #if 1 /* 配置串口1为:115200 8-N-1 */ //USART1_Config(); //SST25VF016B 初始化 SPI_FLASH_Init(); /* Get SPI Flash Device ID */ DeviceID = SPI_FLASH_ReadDeviceID(); delay_us( 200 ); /* Get SPI Flash ID */ FlashID = SPI_FLASH_ReadID(); //printf(\r\n FlashID is 0x%x, Manufacturer Device ID is 0x%x\r\n,FlashID,DeviceID); /* Check the SPI Flash ID */ if (FlashID == sFLASH_ID) { /* Erase SPI FLASH Sector to write on */ SPI_FLASH_SectorErase(FLASH_SectorToErase); /* 将发送缓冲区的数据写到flash 中*/ SPI_FLASH_BufferWrite(Tx_Buffer, FLASH_WriteAddress, BufferSize); /* 将刚刚写入的数据读出来放到接收缓冲区中*/ SPI_FLASH_BufferRead(Rx_Buffer, FLASH_ReadAddress, BufferSize); }// if (FlashID == sFLASH_ID) else { //printf(\r\n 获取不到SST25VF016B ID!\n\r); } #endif } Spi_flash.c /****************************************************************************** **** * 文件名 :spi_flash.c * 描述 :spi 底层应用函数库 * 实验平台:STM32 * 硬件连接 * * 库版本 :ST3.5.0 * 参考 :野火 * 作者 :Linx ******************************************************************************* ***/ #include spi_flash.h /* Private typedef */ //使用的由256改为4096 ,说是4k 的原因,没有深入研究 #define SPI_FLASH_PageSize 4096 #define SPI_FLASH_PerWritePageSize 4096 //#define SPI_FLASH_PageSize

文档评论(0)

xxj1658888 + 关注
实名认证
内容提供者

教师资格证持证人

该用户很懒,什么也没介绍

领域认证该用户于2024年04月12日上传了教师资格证

1亿VIP精品文档

相关文档