W25Q16自学笔记

使用STM32F407VET6的硬件SPI1读写W25Q16

对应引脚

SCK:PA5;

MISO:PA6

MOSI:PA7

CS:PB0

初始化SPI的函数

创建对应的结构体并设置参数

初始化引脚

SPI_1的发送和读取函数

W25Q16相关操作函数

主函数

测试

错误总结:

1:由于在SMT32F4中文手册中没有找到SPI引脚的配置模式,一开始参考了STM32F103的手册中的引脚配置模式,配置MISO引脚为上拉输入,测试结果一直读不到数据。后面将其配置为复用功能,才能正常接收数据。

2:一开始编写W25Q16的相关函数并没有加入延时函数,导致只能读取ID号,不能擦除和写入数据。本人在网络上搜索到的解决办法,也不能解决不能写入的问题,最后多次尝试发现写入一个短暂的延时可以正常擦除和写入。W25Q16的SPI时钟最大应该支持的是80MHZ,本笔记中的SPI的时钟设置为42MHZ,但是主时钟是168MHZ,可能是程序执行的速度快了,函数操作之间加延时可以正常读写W25Q16。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值