你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

STM32F051寄存器方式读写SPI的DR寄存器

[复制链接]
海迹天涯 提问时间:2017-1-11 15:12 /
HAL库的SPI接口效率较低,想试试用寄存器方式配置SPI外设,然后用SPI接口读取外部FLASH。结果配置好后读取到的数据全为0,通过仿真发现配置的寄存器都是正确的,使用断点调试SPI接口能读取到正确的数据。对比HAL对寄存器的操作,发现没有落下哪个步骤,但是使用寄存器方式读取数据始终是0,程序如下图
收藏 1 评论8 发布时间:2017-1-11 15:12

举报

8个回答
海迹天涯 回答时间:2017-1-11 15:13:20
忘记程序截图了
[TB}JM7LPZ}DPK[4$3LNGF1.png
xmshao 回答时间:2017-1-11 17:17:41
F0的 SPI 有个FIFO 阈值需要配置, FRXTH@spi_cr2  配置为1后测试下。

评分

参与人数 1ST金币 +2 收起 理由
zero99 + 2

查看全部评分

Dylan疾风闪电 回答时间:2017-1-11 17:21:22
试下3楼的建议。
若还是不行,建议可以把初始化代码上传,大家帮你看。

评分

参与人数 1ST金币 +2 收起 理由
zero99 + 2

查看全部评分

jackten 回答时间:2017-1-11 17:25:03
过来学习学习                 
海迹天涯 回答时间:2017-1-12 08:42:14
xmshao 发表于 2017-1-11 17:17
F0的 SPI 有个FIFO 阈值需要配置, FRXTH@spi_cr2  配置为1后测试下。

恩,配置为4分之1个字也就是8位,但是还是一样的问题。在寄存器和HAL库配置完SPI后所有寄存器都是一样的。
海迹天涯 回答时间:2017-1-12 08:43:28
Dylan疾风闪电 发表于 2017-1-11 17:21
试下3楼的建议。
若还是不行,建议可以把初始化代码上传,大家帮你看。

这个有点不方便,如果你想试试的话你可以使用HAL库的初始化函数然后把发送接收改成我这样测试就知道了
Dylan疾风闪电 回答时间:2017-1-12 14:58:17
海迹天涯 发表于 2017-1-12 08:43
这个有点不方便,如果你想试试的话你可以使用HAL库的初始化函数然后把发送接收改成我这样测试就知道了 ...

不去试了,你贴出来的这个函数不存在问题。

评分

参与人数 1ST金币 +2 收起 理由
zero99 + 2

查看全部评分

海迹天涯 回答时间:2017-1-12 15:41:03
Dylan疾风闪电 发表于 2017-1-12 14:58
不去试了,你贴出来的这个函数不存在问题。

那就奇怪了,初始化没问题,读写函数也没问题,为啥读出来就是0了呢

所属标签

相似问题

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32Cube扩展软件包
意法半导体边缘AI套件
ST - 理想汽车豪华SUV案例
ST意法半导体智能家居案例
STM32 ARM Cortex 32位微控制器
关注我们
st-img 微信公众号
st-img 手机版