硬件spi相比软件spi的优势在哪里

软件spi和硬件spi程序好像都一样啊速度到底快在哪里... 软件spi和硬件spi程序好像都一样啊 速度到底快在哪里 展开
 我来答
学海识智渊2
2015-05-16 · TA获得超过327个赞
知道小有建树答主
回答量:170
采纳率:50%
帮助的人:104万
展开全部
首先软件SPI,这个毫无疑问你需要用IO模拟SPI时序,这个模拟过程全部是CPU在负责执行,为了稳定得存取数据,你可能会插入软件延时,这个时间在读取数据量不大的情况下并不明显,但是基本上你在读取过程中,其他非中断非异常程序是无法得到执行。
来说说硬件SPI,首先这个数据存储的过程是不需要CPU参与得,程序中配置好SPI的访问时序,开启中断,CPU就可以在中断函数中搬移数据,省下了软件模拟IO得存取时间。
仔细研究就会发现,CPU在进行SPI中断服务程序还是需要耽误时间得,这个过程在大数据量传输中还是很耗时,arm中cortex-m3内核得处理器在硬件SPI上加入了DMA,这个DMA直接从SPI的数据寄存器,软件配置好DMA之后,基本上整个传输都不要CPU参与,软件设计得好的话,整个数据传输都不要CPU参与,这个省下来CPU,你就可以干更多有意义的事情了。
上海灿态智能科技有限公司
2020-10-27 广告
 时序没有区别。  硬件SPI效率高些,写程序的时候只要把要发的数据写到寄存器里,硬件就自动给发了。  软件需要去实现时钟拉高拉低,数据串行输出等。  硬件的SPI必须要处理器支持才可以用。  软件SPI就不需要特定的要求了,一般的IO口就... 点击进入详情页
本回答由上海灿态智能科技有限公司提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式