[KungFu32位 MCU] 【已解决】KF32F350的SPI_FLASH例程,我试下来会有乱码?

[复制链接]
11467|6
 楼主| 编号10086 发表于 2021-7-13 15:24 | 显示全部楼层 |阅读模式
本帖最后由 编号10086 于 2021-7-23 11:40 编辑

【问题描述】:如图所示,官方的例程,官方的开发板。不知道我是不是个例,大哥们如果也有这块板子的,麻烦试一下,给我个反馈。。。

QQ图片20210713151634.png 2021.7.23 更新:
【解决方法】:
7435360fa2d54e47c9.png
把官方例程中的
  1. SPI_CKE_1EDGE

改为
  1. SPI_CKE_2EDGE



【说明】
经过另外一个群友的测试,他的板子也有这个问题,所以这个应该不是个例。
后来查阅了官方开发板上的SPI_FLASH型号,我这块应该是W25Q128JVSIQ
数据手册 1489627409956.pdf (1.98 MB, 下载次数: 2)

查阅数据手册中的时序图
7771660fa31e38e2bf.png

这款SPI_FLASH支持模式0和模式3。
9141660fa3239360d0.png

那理论上按照官方说明的配置应该是没错的呀...应该就是 CPOL 0 ,CPHA 0就行了。。

但是实际上我用逻辑分析仪观察,这是我发读芯片的ID的时序图,我发的是9F 00 00 00 ,
7842060fa36f721bb2.png

其中9F用模式0去解码
1090460fa3764c12f5.png

用模式2去解码
886060fa379980695.png

也就是说
  1. SPI_CKE_1EDGE
其实代表了模式CPHA 1,


  1. SPI_CKE_2EDGE
其实代表了CPHA 0??

带着疑问,看一下手册
8068460fa38de6bb0a.png

对比一下别的芯片的手册(GD32,STM32等)
2452560fa391be01b7.png
左边为KF32,右边为GD32

4622460fa39dc8ecf5.png
好吧,人家是采集数据,你是发送数据。
所以应该是例程里面写错了,我们需要第二个时钟沿,发送数据(也就是第一个时钟沿采集数据。)
 楼主| 编号10086 发表于 2021-7-13 15:24 | 显示全部楼层
例程目录
  1. KF32Fxxx_EVL_Examples\SPI\SPI_FLASH
lidi911 发表于 2021-7-14 08:44 来自手机 | 显示全部楼层
工程配置哪里不对
单片小菜 发表于 2021-7-14 15:03 | 显示全部楼层
我感觉你的配置是有问题的。不知道为什么?
 楼主| 编号10086 发表于 2021-7-14 15:26 | 显示全部楼层
单片小菜 发表于 2021-7-14 15:03
我感觉你的配置是有问题的。不知道为什么?

你用你的开发板试过吗?我没改官方例程的。就是用的官网的例程和官网的开发板。
KF32F350
自己造声卡 发表于 2021-7-14 16:29 | 显示全部楼层
我感觉好像是GB代码的问题,别的没有什么了。
 楼主| 编号10086 发表于 2021-7-19 18:54 | 显示全部楼层
自己造声卡 发表于 2021-7-14 16:29
我感觉好像是GB代码的问题,别的没有什么了。

GB代码指什么?
是指汉字字库编码方式有问题吗?

这个应该不是字库的问题,字库的问题的话,应该是全乱的。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

15

主题

76

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部