如何使SPI NSS引脚在发送数据时为低电平,发完拉高

2019-08-18 18:51发布

使用的是STM32 SPI1,是否是软件输入模式下使SSOE位置1,然后把PA4配置成通用IO,发送前置0,发送完置1,目前这么做了,但是PA4始终为低电平,大佬求解。(没有正原电子开发板资料)
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
6条回答
南有乔木
2019-08-18 19:51
xinghongyc 发表于 2017-5-25 17:03
电路板确定了,就是要在NSS上发送数据是为低电平,发完拉高。但是软件模式配置成主机时已经把SSI位置1, ...

从选择(NSS)脚管理
有2种NSS模式:
图211● 软件NSS模式:可以通过设置SPI_CR1寄存器的SSM位来使能这种模式(见)。在这种模式下NSS引脚可以用作它用,而内部NSS信号电平可以通过写SPI_CR1的SSI位来驱动
● 硬件NSS模式,分两种情况:
─ NSS输出被使能:当STM32F10xxx工作为主SPI,并且NSS输出已经通过SPI_CR2寄存器的SSOE位使能,这时NSS引脚被拉低,所有NSS引脚与这个主SPI的NSS引脚相连并配置为硬件NSS的SPI设备,将自动变成从SPI设备。 当一个SPI设备需要发送广播数据,它必须拉低NSS信号,以通知所有其它的设备它是主设备;如果它不能拉低NSS,这意味着总线上有另外一个主设备在通信,这时将产生一个硬件失败错误(Hard Fault)。
─ NSS输出被关闭:允许操作于多主环境。

软件模式下 NSS引脚就不使用了。
硬件模式  可以使用,但是使用条件已经给出了。作用就是用来配置主从设备的啊

至于你想直接操作PA4输出高低电平的意义是啥啊,只是单纯输出高低电平不就是普通IO口功能吗 ?和NSS也没有关系了。
你到底要NSS干嘛嘞

一周热门 更多>