中级会员
 
- 积分
- 337
- 金钱
- 337
- 注册时间
- 2014-10-30
- 在线时间
- 98 小时
|
1金钱
各位大神好!
最近在测试STM32H750 的 SPI ,发现时钟波形失真,主要是最后一个时钟脉宽变的很窄,正常的是2.5us, 最后一个只有0.7us, 这会导致当SPI总线负载比较大时,丢失一个脉冲而出错。
寄存器都检查过,且试改过,没有效果。 哪位大神指点下,多谢! SPI代码如下。
hspi6.Instance = SPI6;
hspi6.Init.Mode = SPI_MODE_MASTER;
hspi6.Init.Direction = SPI_DIRECTION_2LINES;
hspi6.Init.DataSize = SPI_DATASIZE_8BIT;
hspi6.Init.CLKPolarity = SPI_POLARITY_LOW;
hspi6.Init.CLKPhase = SPI_PHASE_1EDGE;
hspi6.Init.NSS = SPI_NSS_SOFT;
hspi6.Init.NSSPMode=SPI_NSS_PULSE_DISABLE;
hspi6.Init.MasterKeepIOState=SPI_MASTER_KEEP_IO_STATE_ENABLE;
hspi6.Init.BaudRatePrescaler = SPI_BAUDRATEPRESCALER_256;
hspi6.Init.FirstBit = SPI_FIRSTBIT_MSB;
hspi6.Init.TIMode = SPI_TIMODE_DISABLED;
hspi6.Init.CRCCalculation = SPI_CRCCALCULATION_DISABLED;
hspi6.Init.CRCPolynomial = 10;
HAL_SPI_Init(&hspi6);
|
|