嵌入式硬件通信接口协议-SPI(三)模拟接口应用

掘芯
关注

验证模拟SPI接口的正确性,通过读取SPI-FLASH芯片的厂商ID,校验读到的数据与手册是否一致。

FLASH功能模块属于模块库层,介于应用层和驱动层之间。因此对SPI-FLASH模块的源码封装成lib层。

创建源码文件:

dclib_spiflash.c

dclib_spiflash.h

同样的也需要对该FLASH设计初始化,此时需要调用BSP层的模拟SPI接口初始化,设置与FLASH芯片匹配的SPI通信配置项:数据宽度、时钟极性(CPOL)、时钟相位(CPHA)、数据bit位大小端选择。

完成SPI初始化,直接对FLASH器件发起通信。最简单的指令(0x9F)可以读取FLASH芯片的厂商ID。

把程序烧入单片机运行查看读取效果,初步验证通信的正确性。

对比手册中的描述,读取到的JEDEC ID与手册里的完全一直。

至此,可确定使用GPIO模拟的SPI接口可进行正确通信。

更多关于SPI-FLASH的操作,可以用心阅读数据手册,需要参考实现的源码,可以从开源平台检索相关的源码来参考。

声明: 本文由入驻OFweek维科号的作者撰写,观点仅代表作者本人,不代表OFweek立场。如有侵权或其他问题,请联系举报。
侵权投诉

下载OFweek,一手掌握高科技全行业资讯

还不是OFweek会员,马上注册
打开app,查看更多精彩资讯 >
  • 长按识别二维码
  • 进入OFweek阅读全文
长按图片进行保存