完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
先给大佬们交代一下这个项目中我了解的关于spi的内容、本人碰到的问题的起因经过以及现在卡住的问题:
这个项目中用到了一个单片机和一个cpu,单片机用来检测按键、用串口通信接收几个传感器数据,然后通过spi发送这些从串口来的数据以及按键状态到cpu。 单片机作slave,多一根引脚是用作ready脚,拉高告诉主机cpu这边的spi准备好了,然后主机拉低nss脚之后建立通信。 问题的来源是碰到某一个电压的问题,需要在主机cpu掉电的情况下,把spi的ready脚以及nss脚状态更改,改完引脚之后那个电压问题的bug解掉了。 主机上电的时候之后我在做上电操作之前对spi的这两个引脚模式做了恢复,上电后主机也能正确接收到数据,但是很卡顿。按键反应也变慢了,应该是spi的传输速率变慢了。 ------------------------------------------------------ 这里想咨询的就是怎么样在改了引脚状态之后完美的恢复spi的通信。 ------------------------------------------------------- 另外我自己在进行尝试的时候碰到了让我摸不着头脑的怪事。 我尝试将spi的初始化函数重新调用一遍,就是恢复引脚模式之后的时候,deinit(&spi)和init(&spi)一下,结果导致无法与主机正常通信。赶紧回退版本。但是奇怪的事情出现了......回退到我没有做更改的版本之后仍然无法正常通信。 ------------------------------------------------------ 另外想问的就是这种情况下是stm32有什么保存配置的功能或者某种存储设备 又或者我是不是该考虑主机cpu在spi通讯中所做的操作,比如是不是保存了与从机的连接之类的 - |
|
|
|
只有小组成员才能发言,加入小组>>
3188 浏览 9 评论
2878 浏览 16 评论
3383 浏览 1 评论
8815 浏览 16 评论
3979 浏览 18 评论
9613浏览 3评论
984浏览 3评论
503浏览 2评论
const uint16_t Tab[10]={0}; const uint16_t *p; p = Tab;//报错是怎么回事?
506浏览 2评论
用NUC131单片机UART3作为打印口,但printf没有输出东西是什么原因?
2228浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-9-21 07:00 , Processed in 1.261768 second(s), Total 81, Slave 61 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号