关于用F4的SPI写LD3320程序的时序问题

2019-07-20 02:31发布

搞了一天,发现移植官方的程序一直读LD_ReadReg(0x35)LD_ReadReg(0x1b)
LD_ReadReg(0xb3)
这几个寄存器都得到的是0,一直卡在LD_Check_ASRBusyFlag_b2()这个函数中的LD_ReadReg(0xb2)的值一直也是0,为繁忙
应该是时序问题导致的读写寄存器都出错,但是查了半天没查出来哪里的时序错误,官方源码是F1的,要移植到F4,不清楚两个关于SPI有什么注意的地方,有空的大神麻烦帮比较一下两者的初始化,要是有已经做过F4的LD3320,指点一下小的吧。

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
19条回答
soymilk
1楼-- · 2019-07-20 08:14
 精彩回答 2  元偷偷看……
Time_Zero
2楼-- · 2019-07-20 13:56
帮顶
greatxiaoguzi
3楼-- · 2019-07-20 17:36
 精彩回答 2  元偷偷看……
142zjb
4楼-- · 2019-07-20 20:38
greatxiaoguzi 发表于 2018-3-16 11:52
初始化时候SPI速度给慢点,播放语音的时候在给高就可以了

SPI_InitStructure.SPI_BaudRatePrescaler = SPI_BaudRatePrescaler_256;
256分频也试过了,我还没做到语音播报,单纯语音识别,你有用F4移植成功的程序吗
142zjb
5楼-- · 2019-07-21 00:09
F1和F4在SPI时序这方面还需要注意什么,或者有什么办法可以直观看到两个程序的时序差别吗?用F1板子测试过,模块和官方程序都是可以用的
142zjb
6楼-- · 2019-07-21 04:43
 精彩回答 2  元偷偷看……

一周热门 更多>