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

STM32CUBEMX使用硬件SPI和软件SPI的区别

[复制链接]
Magic-Pi 提问时间:2024-10-29 15:49 / 未解决

在使用CUBEMX生成的代码 使用硬件SPI的速度 比 使用软件模拟的SPI速度要慢几倍 (已经在硬件SPI配置成2分频 )按概念来说不应该是硬件SPI比软件模拟的SPI速度要快很多么?使用了示波器也测两者速度差很多 硬件的SPI要快很多 ,但不使用cubemx的时候 直接使用HAL库的硬件SPI 也只是比软件模拟的SPI快一倍多一点。这是什么原因呢?

收藏 评论1 发布时间:2024-10-29 15:49

举报

1个回答
xmshao 回答时间:前天 16:57
应该说,SPI的工作跟CubeMx工具是没有关系的;


你说硬件SPI速率比软件模拟的SPI速率慢或说慢几倍,这恐怕要具体来看。


对于片内硬件SPI,其速率是根据配置来的,在不超规格前提下,配置多少就多少。
软件模拟也是可控的,可快可慢,快慢跟CPU主频和你的代码设计息息相关,不能简单
断定谁一定快谁就一定慢。


你看看配置的SPI外设的时钟到底是多少,先确定硬件SPI是否能根据配置正
常工作,然后尝试软件模拟跟硬件SPI的最高速率做些比较。


退一步讲,即使你现在所用芯片能通过软件方式模拟出高于硬件SPI的速率也可以理解,
毕竟软件模拟意味中CPU只能忙这件事了或主要忙这件事了,而硬件SPI的工作相对CPU是独立的。
关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版