ST意法半导体
直播中

李慎梓

7年用户 1386经验值
私信 关注
[问答]

STM32 HAL API不使用CR1寄存器中的SSI位是哪里出错了?

你好呀,
假设我的设备配置为带有软件 NSS 引脚的 SPI 从属设备。STM32 HAL API 根本不使用 CR1 寄存器中的 SSI 位。我想知道,当我手动设置或清除该位时,SPI 外设实际上发生了什么?如果我调用 HAL_SPI_TransmitReceive_IT,然后调用 CLEAR_BIT(spis->hSpi->Instance->CR1, SPI_CR1_SSI),这是否意味着任何时钟输入 SPI 从属设备的数据都将被忽略而不影响 SPI 从属外设的状态?我实际上正在尝试实现此功能——在系统中,有一个主控,可以通过单独的 NSS 引脚选择任意多个从属。在我的从设备代码中,我手动处理 NSS 信号作为 EXti 输入,我想设置/清除那里的 SSI 位。这种方法是否正确,还是我不明白?

回帖(1)

张玉兰

2023-2-3 15:00:27
如果 SSM 被置位,SSI 的功能与 SSM 被清除时 NSS 引脚的功能相同。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分