xuyejin 发表于 2019-11-29 22:12:26

STM32L011 SPI 使能怎么会清除master位?

各位大侠,您们好!

               使用STM32L011F4,使用SPI1, 为什么在使能的时候,会清除master位?
程序如下:

        SPI1->CR1 = SPI_CR1_MSTR|SPI_CR1_BR_1|SPI_CR1_BR_0|SPI_CR1_CPOL|SPI_CR1_CPHA;
        SPI1->CR1 |= SPI_CR1_SPE;


我没有使用软件库,直接操作的寄存器




xuyejin 发表于 2019-11-29 22:13:12

还望各位大侠不吝指教

xuyejin 发表于 2019-11-29 22:18:22

STM32系列,我使用过103207407,从来没有在SPI的使用上出问题,晕死

发表于 2019-11-30 11:38:06

楼主请注意看一下SPI手册中提示的部分,需要配置MSTR。理解可能有误,我们一起讨论一下。
Configure the MSTR bit (in multimaster NSS configuration, avoid conflict state on NSS if master is configured to prevent MODF error).

aiherong 发表于 2019-12-2 06:33:25

全改成寄存器,库函数都有先清零再依据结构体设置的做法
MASTER还有别的需要设置吗?

butterflyspring 发表于 2019-12-10 15:35:19

如"安”所提示的手册内容,这是为了避免冲突,先设成slave模式再启动。一个技巧而已。另一方面也说明软件库的方便性:P
页: [1]
查看完整版本: STM32L011 SPI 使能怎么会清除master位?