2016-05-05 08:07 AM
Hi, If I configure NSS as hardware management, it it controlled by the SPI peripheral. However, from the manual, the NSS is low when the SPI is enabled, and NSS is changed to high only when SPI is disabled.
I think it is a stupid design, it is nor compatible with many ICs. I have to configure NSS as software management. The NSS pin is configured as a general output IO, and control it manually (Low before transaction, High when transaction is completed).Experiment platform: STM32F746ZGT6 #spi2016-05-05 09:14 AM
I think it is a stupid design
It is, the people designing it don't seem to be familiar with how the interface is used.
2016-05-06 02:17 AM
I agree, I hope that ST may change the SPI design in the future!
2016-05-12 02:32 PM
It is other chip designers doing it wrong.
SS is active low see:https://en.wikipedia.org/wiki/Serial_Peripheral_Interface_Bus2016-05-12 03:14 PM
Yeah, I know, but the ST doesn't auto-magically transition it H-L and L-H in a manner that is remotely useful, or sufficiently flexibly, to allow its efficient use in any prevalent application of the bus. A general purpose solution would be able to handle the generally used cases, with ease, not with me disabling the peripheral and manually counting bytes, or to send the CRC.
It doesn't do thisIf wikipedia is the threshold test, then sending a stream of 16 8-bit bytes does not transition SS on each byte.