-
N32G430与STM32F407 SPI通信问题 sos
用STM32F407作为主机,N32G430作为从机,主机发送一个8位数据,从机通过SPI2接收并存到变量rec里。目前主机信号发送正常,从机程序每次都跑死在 while (SPI_I2S_Flag_Status_Get(SPI_SLAVE, SPI_I2S_FLAG_RNE) == RESET)这一步。查了用户手册说这个标志位会在接收数据后硬件清除,不知道怎么回事。贴出部分程序,求大神解答qwq。 SPI_Initializes_Structure(&SPI_InitStructure); SPI_InitStructure.DataDirection = SPI_DIR_DOUBLELINE_FULLDUPLEX; SPI_InitStructure.SpiMode = SPI_MODE_SLAVE; SPI_InitStructure.DataLen = SPI_DATA_SIZE_8BITS; SPI_InitStructure.CLKPOL = SPI_CLKPOL_LOW; SPI_InitStructure.CLKPHA = SPI_CLKPHA_FIRST_EDGE; SPI_InitStructure.NSS = SPI_NSS_SOFT; /* It is recommended that the SPI master mode of the C version chips should not exceed 18MHz */ SPI_InitStructure.BaudRatePres = SPI_BR_PRESCALER_8; SPI_InitStructure.FirstBit = SPI_FB_MSB; SPI_InitStructure.CRCPoly = 7; SPI_Initializes(SPI2, &SPI_InitStructure); SPI_Set_Nss_Level(SPI2, SPI_NSS_LOW); SPI_CRC_Enable(SPI_SLAVE); SPI_ON(SPI_SLAVE); while (1) { while (SPI_I2S_Flag_Status_Get(SPI_SLAVE, SPI_I2S_FLAG_RNE) == RESET) rec = SPI_I2S_Data_Get(SPI_SLAVE); }
1292浏览量 0回复量 关注量 -
can通讯相关问题
n32g430使用can例程进行相关测试,can数据分析仪,发送数据失败接收数据也失败,加了个收发器TJA1043T3将stb对应引脚拉低也不能进行通讯,请问大伙知道是什么原因吗?求求求
1245浏览量 2回复量 关注量