spi 手册问题

2019-08-14 02:15发布

1.jpg 2.jpg

看了很久,表示无语,一个地方说软件控制片选模式就当普通IO用,而在寄存器的地方又说软件片选要根据SSI来配置,IO配置无效,看了看寄存器版的程序,是当成普通IO用的,有没有大神能解释一下
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
15条回答
SNEZSTM32
1楼-- · 2019-08-14 17:29
huanghan 发表于 2017-9-8 10:14
普通IO就可以了

我重新组织一下语言,我的不解是,我怎么能把SPI片选配置成硬件模式,怎么能把SPI配成软件模式,这里的软件模式指的是配置成SSM SSI控制或者普通IO控制,特别是如何配置成SSM SSI或IO控制,感觉特别不懂




SNEZSTM32
2楼-- · 2019-08-14 21:02
huanghan 发表于 2017-9-8 10:14
普通IO就可以了  注意SPI_InitStructure.SPI_NSS = SPI_NSS_Soft;的配置  

SPI_Cmd(SPI1, DISABLE);

我看了看,库函数的SPI_InitStructure.SPI_NSS = SPI_NSS_Soft; 本质是把SSM设置为1,按照我的理解,此时就应该用SSI来控制,怎么就可以当初普通IO呢,关键是SSI描述里面写了的,
当SSM为1时,NSS引脚的IO操作无效
huanghan
3楼-- · 2019-08-14 22:34
 精彩回答 2  元偷偷看……
SNEZSTM32
4楼-- · 2019-08-15 03:02
huanghan 发表于 2017-9-8 10:36
你提问那图说得很明白,配置成软件模式,像有SPIx_NSS功能的管脚可以作为IO口用,至于片选问题,去看看SP ...

我明白SPI片选为什么可以做普通IO,可我的问题是,我提问的第一幅图说片选引脚是作为普通  IO,而第二幅图却说,在SSM为1时(配置为软件模式),NSS的电平和IO无关,只与SSI有关。

所以我感觉手册自己说的都是对立的。

huanghan
5楼-- · 2019-08-15 06:45
SNEZSTM32 发表于 2017-9-8 10:45
我明白SPI片选为什么可以做普通IO,可我的问题是,我提问的第一幅图说片选引脚是作为普通  IO,而第二幅 ...

当SSM为1时,NSS引脚的IO操作无效,我个人理解是片选不用软件去写,内部自己给
SNEZSTM32
6楼-- · 2019-08-15 09:43
huanghan 发表于 2017-9-8 11:41
当SSM为1时,NSS引脚的IO操作无效,我个人理解是片选不用软件去写,内部自己给

嗯,我也是这样理解的,但是SPI_InitStructure.SPI_NSS = SPI_NSS_Soft这个操作也就是把SSM设为1,但是正点原子的程序就用IO操作了,不是说好不能用IO的吗

手册是不是有点问题,鉴定一下

一周热门 更多>