OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 18001|回复: 12

关于SPI概念的困惑,网上越查越迷,望原子哥帮忙...

[复制链接]

29

主题

53

帖子

0

精华

初级会员

Rank: 2

积分
189
金钱
189
注册时间
2013-8-4
在线时间
0 小时
发表于 2013-8-23 23:16:47 | 显示全部楼层 |阅读模式
SPI到底是一种总线,还是一个总线的接口??
参考手册说是串行外设接口,我把它理解为一个总线的接口,就像电脑的USB接口是外部设备通往USB总线的入口一样,问题就来了,参考手册说SPI可以工作在主从两种模式,它只是一个进入总线的入口,相当于从总线引出来了几条线,用于连接外部设备,那么怎么可以配置一个入口的工作模式呢,配置的不该是总线控制器嘛,总线控制器可以控制通过总线接口连接到总线的外部设备...
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

38

主题

2061

帖子

6

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
3273
金钱
3273
注册时间
2012-1-16
在线时间
37 小时
发表于 2013-8-24 00:03:59 | 显示全部楼层
SPI(Serial eripheral Interface--串行外设接口),这里接口就是遵循某种协议,只有具有相同的SPI的接口的设备,两者之间才能进行通信。因为他们遵循相同的协议。当然你也可以通过代码去模拟这个协议,使他成为一个接口。我自己的理解,欢迎大家指正,哈哈。
站在巨人的肩膀上不断的前进。。。
回复 支持 反对

使用道具 举报

10

主题

25

帖子

0

精华

初级会员

Rank: 2

积分
85
金钱
85
注册时间
2013-5-21
在线时间
0 小时
发表于 2013-8-24 00:25:41 | 显示全部楼层
    依小弟愚见,在stm32中用的是spi硬件来实现的。spi协议有几种模式,每种支持spi协议的芯片可能支持其中一种或者全部的模式,但是前提是通信双方选择的模式是相同的,要不然就会造成混乱。我们配置spi的寄存器就是在配置spi的其中一种模式,通过配置就可以使得硬件自动按照我们定义的方式进行通信,不需要通过IO管脚对它进行操作,而且其稳定性肯定更高
回复 支持 反对

使用道具 举报

29

主题

53

帖子

0

精华

初级会员

Rank: 2

积分
189
金钱
189
注册时间
2013-8-4
在线时间
0 小时
 楼主| 发表于 2013-8-24 09:45:23 | 显示全部楼层
回复【2楼】xiaoyan:
---------------------------------
那么这个接口到底是什么意思呢??是一个软件?硬件??还是只是一个协议?而且单片机有对应的MISO,MOSI等SPI线,这些线内部是连在了什么地方?是连在了内部SPI总线上??还是迷糊
回复 支持 反对

使用道具 举报

38

主题

2061

帖子

6

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
3273
金钱
3273
注册时间
2012-1-16
在线时间
37 小时
发表于 2013-8-24 10:07:50 | 显示全部楼层
建议看一下SPI的资料,然后使用一下,这个东西感觉不好解释啊
站在巨人的肩膀上不断的前进。。。
回复 支持 反对

使用道具 举报

76

主题

355

帖子

0

精华

高级会员

Rank: 4

积分
671
金钱
671
注册时间
2012-9-19
在线时间
5 小时
发表于 2013-8-24 10:30:10 | 显示全部楼层
SPI 就是三根线。。。I2C 不也是两根线么。。。。它又不是MODBUS协议那么困难。你要是非要理解成协议。那MODBUS485协议也可以理解成串口两根线。。。。。
具有资深STM32点灯技术,
回复 支持 反对

使用道具 举报

29

主题

53

帖子

0

精华

初级会员

Rank: 2

积分
189
金钱
189
注册时间
2013-8-4
在线时间
0 小时
 楼主| 发表于 2013-8-24 11:46:49 | 显示全部楼层
回复【6楼】敌害:
---------------------------------
我能不能这样理解??:
“SPI接口是一种硬件设备,这个设备是用来在单片机的控制下和外部设备进行数据交换用的,SPI协议则是外部设备和SPI接口交换数据时需要遵循的一种规则,这种规则是通过SPI接口内部的电路来实现的,当然也可以把具体规则的实现过程写到程序中,然后烧到单片机里,从而用软件来实现”
回复 支持 反对

使用道具 举报

29

主题

53

帖子

0

精华

初级会员

Rank: 2

积分
189
金钱
189
注册时间
2013-8-4
在线时间
0 小时
 楼主| 发表于 2013-8-24 11:52:22 | 显示全部楼层
回复【5楼】xiaoyan:
---------------------------------
我能不能这样理解??: 
“SPI接口是一种硬件设备,这个设备是用来在单片机的控制下和外部设备进行数据交换用的,SPI协议则是外部设备和SPI接口交换数据时需要遵循的一种规则,这种规则是通过SPI接口内部的电路来实现的,当然也可以把具体规则的实现过程写到程序中,然后烧到单片机里,从而用软件来实现”
回复 支持 反对

使用道具 举报

头像被屏蔽

52

主题

440

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1237
金钱
1237
注册时间
2013-1-9
在线时间
151 小时
发表于 2013-8-24 14:49:35 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

51

主题

1455

帖子

3

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
2613
金钱
2613
注册时间
2011-1-25
在线时间
176 小时
发表于 2013-8-24 19:32:54 | 显示全部楼层
支持全双工的串行总线协议。Serial eripheral Interface
一直努力就很好。
回复 支持 反对

使用道具 举报

38

主题

2061

帖子

6

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
3273
金钱
3273
注册时间
2012-1-16
在线时间
37 小时
发表于 2013-8-24 23:31:46 | 显示全部楼层
回复【8楼】蜗牛小安:
---------------------------------
好像差不多,呵呵,重点在于应用,会用就好,没必要纠结概念滴。
站在巨人的肩膀上不断的前进。。。
回复 支持 反对

使用道具 举报

76

主题

355

帖子

0

精华

高级会员

Rank: 4

积分
671
金钱
671
注册时间
2012-9-19
在线时间
5 小时
发表于 2013-8-30 10:29:18 | 显示全部楼层
回复【7楼】蜗牛小安:
---------------------------------
正解。
具有资深STM32点灯技术,
回复 支持 反对

使用道具 举报

5

主题

107

帖子

1

精华

中级会员

Rank: 3Rank: 3

积分
298
金钱
298
注册时间
2013-5-5
在线时间
0 小时
发表于 2013-8-30 12:07:38 | 显示全部楼层
SPI可以理解为普通话,英语,明白?
游走在生活里,你我都是涉世未深的旅人,前方有我们为之心怡的归宿,身后又是一片葱郁的往昔,让生活的零碎随风而来,又似过往的随风云烟而散,唯有这厮,方能守得云开,待到春花烂漫!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-7-14 05:27

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表