打印
[STM32F1]

spi接受中断

[复制链接]
510|18
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
happy_10|  楼主 | 2021-7-4 10:20 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
看到一段话,SPI设备间的数据传输之所以又被称为数据交换,是因为SPI协议规定一个SPI设备不能在数据通信过程中仅仅只充当一个"发送者(Transmitter)"或者"接收者(Receiver)"。在每个Clock周期内,SPI设备都会发送并接收一个bit大小的数据,相当于该设备有一个bit大小的数据被交换了,
那每次我发送一个字节的数据后,是否就会接受到一个字节的数据,那这个没有用的数据会不会触发接收中断呢

使用特权

评论回复
沙发
午夜粪车| | 2021-7-4 10:22 | 只看该作者
有一个接受缓冲非空的中断的,但是如果你需要使用这个的话需要使能。

使用特权

评论回复
板凳
yszong| | 2021-7-4 10:25 | 只看该作者
一般来说,你作为主机,发送一个数据出去的同时会收到一个数据,你只需发送一个字节后,把接受到的数据读取即可。

使用特权

评论回复
地板
stly| | 2021-7-4 10:27 | 只看该作者
一般来说接受中断用于单片机作为从机的情况,因为时钟是外部的控制的,单片机不知道什么时候回有数据进来,所以这时最好使用中断接收数据。

使用特权

评论回复
5
supernan| | 2021-7-4 10:30 | 只看该作者
如果仅仅用于单向发送,建议从机把上次收到数据的发送回来,这样便于主机进行数据校验。

使用特权

评论回复
6
happy_10|  楼主 | 2021-7-4 10:31 | 只看该作者
我的从机设置为接受中断,那如果主机想启动发送,是不是要先发送一个启动时钟的信号,我才能去接受

使用特权

评论回复
7
happy_10|  楼主 | 2021-7-4 10:33 | 只看该作者
是双向传输的,想法是主机发什么从机就接受什么,从机发什么主机也就接受什么,不会有其他的dumy data

使用特权

评论回复
8
yszong| | 2021-7-4 10:35 | 只看该作者
一个主机和从机,同一时刻可以相互发送数据。

使用特权

评论回复
9
songqian17| | 2021-7-4 10:36 | 只看该作者
器件时没有办法判断什么有用或者什么没用,只要收到数据,都会一致处理

使用特权

评论回复
10
dingy| | 2021-7-4 10:42 | 只看该作者
如果你是从机,那么就等着主机发数据过来吧。主机随时都可以发过来,也没有所谓的启动时钟信号,一般按照规定的时序,比如拉低CS,CLK相应变化而已。如果你用硬件SPI的话,那么在主机发数据过来之前应准备好数据放到缓冲里去。

使用特权

评论回复
11
happy_10|  楼主 | 2021-7-4 10:44 | 只看该作者
嗯嗯 那如果我作为从机想发送数据给主机,我需要通知主机接受吗,时钟信号是由主机产生的还是一直都在

使用特权

评论回复
12
chuxh| | 2021-7-4 10:46 | 只看该作者
从机不能主动发数据给主机的,因为时钟是需要主机想发数据的时候才会有;这个需要就定义好相应的协议以上传下传数据了。

使用特权

评论回复
13
juventus9554| | 2021-7-4 10:48 | 只看该作者
SPI通讯从机无法主动发起通讯,只能是把数据存着,主机发时钟过来的时候才能返回数据。但是有的从机芯片是这么干的:数据准备好了,作为spi从机还有一个额外的IO与主机相连,从机数据准备好了就拉低这个IO  主机那边设置外部中断,检测到中断就发起SPI通讯,把数据读回来。  具体实现方式可以参考一下TI的ADS1292。

使用特权

评论回复
14
juventus9554| | 2021-7-4 10:50 | 只看该作者
楼主不要疑问,直接用就是了,不放心,跑一个试试。

使用特权

评论回复
15
stly| | 2021-7-4 10:53 | 只看该作者
个人认为应该会的

使用特权

评论回复
16
llljh| | 2021-7-4 10:56 | 只看该作者
变更一下操作时序就可以改进

使用特权

评论回复
17
yinxiangh| | 2021-7-4 10:58 | 只看该作者

好像是配置有问题

使用特权

评论回复
18
morrisk| | 2021-7-4 11:00 | 只看该作者
只要是数据 都会触发

使用特权

评论回复
19
happy_10|  楼主 | 2021-7-4 11:01 | 只看该作者
好的,我明天去单位试一下,多谢各位大侠了哈

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

744

主题

7973

帖子

6

粉丝