
一个16位的ADC SCLK 周期为12.5ns。那么SPI的频率最低是80M。。 我把SPI3的MISO和MOSI连在了一起。 时钟和SPI配置如下: 遇到的问题是。当BaudRatePrescaler为4时(40M),可以正常读写,收发的数据也是对的。 当BaudRatePrescaler为2时(80),SPI读写函数返回值错误。后来把SPI的IO都调整为VeryHigh,读写返回值OK。。但是读写的数据不错。发送0x12 0x34 收到数据是0x1B 0X3A. |
对于stm32h7的SPI3来讲,支持到80M的位率是没有问题的。我看你目前好像是 基于SPI3自发自收,不知是通过中断方式还是DMA方式,如果是中断结束的话,可以改成DMA模式试试。另外,如果有飞线的话,这时就要注意接触良好,不要拉太长。 |
建议楼主用示波器量一下接收脚,这种速率普通飞线连接容易导致信号失真较大。 |
请教SPI用LL读取的问题
STM32H7使用HAL库如何控制外置USB HS PHY进入低功耗
请问如何在下载程序时保护flash中的用户数据不被覆盖?
H723ZG开发板的下载口可以使用串口功能吗
nanoEdgeAI部署在keil5出现的问题
stm32H755BIT6 TIM1中断问题
用cubemx配置好串口后,再配置一个adc输入就会卡在HardFault_Handler里不动了。
STM32H743使用DSP进行矩阵求逆计算出现的问题
STM32H750 定时器配置
求STM32H503或STMH723 SPI-DMA参考例程