我正在尝试学习SPI协议是如何工作的,我正在做一个使用STM32F407G-Discovery板的基本项目。
该主板有一个内置的加速度计(LIS3DSH),并且它使用SPI协议。在用户手册中,它说明了以下内容:
LIS3DSH具有±2g/±4g/±6g/±8g/±16g全量程动态选择,能够以3.125 Hz至1.6 kHz的输出数据速率测量加速度。
此加速度计使用连接到APB2的SPI1。我使用STM32CubeMX生成初始化代码(包括时钟配置),看起来APB2外设时钟的默认值为84 Mhz。
这是否意味着我需要将APB2外设时钟配置为介于3.125 Hz和1.6 kHz之间的值?我无法想象这是真的,因为我无法在STM32CubeMX中获得足够低的值,因为如果我的值太低,它会抛出错误。
我还考虑了波特率控制SPI寄存器,它允许您将波特率控制到最低的f-PCLK/256
。
换句话说,我对使用哪种时钟频率和使用哪种波特率控制有点困惑。
我还在学习嵌入式编程,所以我的术语可能是不正确的。
https://stackoverflow.com/questions/50594838
复制相似问题