21ic问答首页 - GD32配置硬件SPI时NSS一直为低电平(已解决)
GD32配置硬件SPI时NSS一直为低电平(已解决)
本帖最后由 成熟芒果箱 于 2025-4-28 11:05 编辑
在GD32F405RET6中配置SPI2,使用PA15 PC10 PC11 PC12分别作CS SCK MISO MOSI,使用硬件NSS模式时,PA15一直拉低,SCK和MOSI输出看起来都比较正常,请问下这是什么原因造成的,如何进行改进
在GD32F405RET6中配置SPI2,使用PA15 PC10 PC11 PC12分别作CS SCK MISO MOSI,使用硬件NSS模式时,PA15一直拉低,SCK和MOSI输出看起来都比较正常,请问下这是什么原因造成的,如何进行改进
赞0
谢谢
评论
2025-05-03
赞0
7楼有提,不使用硬件NSS,用PA15的通用输出模拟片选,项目中SPI只需要做配置,所以不需要考虑占用CPU,所以这个方法影响不大
评论
2025-04-30
赞0
评论
2025-04-29
赞0
我尝试过失能SPI,但是示波器仍然抓不到NSS拉高的状态,也可能是我示波器没配置好。
评论
2025-04-29
赞0
使用硬件SPI的NSS时,需要在传输结束时,失能SPI;在传输开始时,使能SPI。
因为一旦使能SPI,NSS就会一直为低电平,失能后才会变为高电平。
STM32、AT32等mcu也都是这个情况。
评论
2025-04-29
赞0
感谢,这个已经尝试过了,gd32f4的库函数版本里面没有这个库函数。不过问题已经解决了,不使用它的硬件NSS,使用GPIO通用输出模拟片选就可以了,它的硬件NSS可能有问题,后面NSS换了PA4好像仍然没有动作。
评论
2025-04-28
赞0
类似的问题,我之前在其他厂商MCU上还真遇到过;
那你加上下面代码再试试:
gpio_pin_remap_config(GPIO_SWJ_SWDPENABLE_REMAP, ENABLE)
评论
2025-04-28
赞0
好的,感谢,看了下原理图,PA15是直接连接的排针引出来的应该没有短路问题,目前怀疑是JTAG没有禁用, PA15引脚是JTAG中的JTDI引脚
评论
2025-04-28
赞0
你可以确认一下是否是NSS引脚外围的硬件电路拉低了,比如NSS与GND短路了等等
评论
2025-04-28
您需要登录后才可以回复 登录 | 注册