[STM32F1] STM32F103C8T6使用hal库配置SPI模式

[复制链接]
2138|27
 楼主| heimaojingzhang 发表于 2025-7-9 15:13 | 显示全部楼层 |阅读模式
1.选择模式(我这里选择的是全双工主模式)
下面那个Hardware NsS Signal,意思就是SS引脚使用软件触发还是硬件触发,这里默认不使能,也就是采用软件触发。


77440686b7d9ea1fb2.png

一.这里先配置
1.帧格式(这里默认就行,不是很理解)
2.数据大小,使用8位
3.第一位电平,因为采用拉低电平作为开始,所以这里配置为高电平

38810686b7d9a4b6e8.png

63876686b7d9717966.png

三.配置时钟参数

76588686b7d9116448.png

43445686b7d89f3901.png

1.预分频系数(设置了128),这里要根据芯片时钟配置,由于SPI1的时钟频率为72Mhz,72M/128=562.5K,所以这里频率大概为500多K赫兹,
2.波特率,根据预分频系数变化的,不用管
3.下面两个用来配置采用哪一个模式的,这里是模式0


四、这里SS(CS)采用软件触发

76683686b7d7dafd9c.png

6818686b7d847d1e0.png

————————————————

                            版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

原文链接:https://blog.csdn.net/weixin_75150601/article/details/149114309

LOVEEVER 发表于 2025-7-29 23:36 | 显示全部楼层
hal库配置SPI模式
benjaminka 发表于 2025-8-4 11:50 | 显示全部楼层
SPI接口的引脚连接正确:

SCK(时钟线)
MOSI(主输出从输入)
MISO(主输入从输出)
NSS(片选线)
pentruman 发表于 2025-8-4 12:51 | 显示全部楼层
SPI引脚配置为复用推挽输出(对于SCK和MOSI)和浮空输入(对于MISO)。片选线(NSS)可以配置为普通推挽输出或硬件NSS。
lzmm 发表于 2025-8-4 14:44 | 显示全部楼层
SPI时钟分频不应过小,以免超出外设的最高工作频率限制。
qiufengsd 发表于 2025-8-4 15:38 | 显示全部楼层
对于大数据量传输,建议使用DMA模式
uptown 发表于 2025-8-4 16:37 | 显示全部楼层
根据从设备的数据手册设置以下参数:
Polarity(极性):决定时钟空闲电平(CPOL=0/1);
Phase(相位):决定第一个沿采样/输出数据(CPHA=0/1);
DataSize:8b 或 16b(多数设备为 8b);
FirstBit:MSB 优先或 LSB 优先(默认 MSB)。
claretttt 发表于 2025-8-4 20:25 | 显示全部楼层
时钟配置错误可能导致SPI无法正常工作
wangdezhi 发表于 2025-8-4 21:16 | 显示全部楼层
CPOL/CPHA不匹配、数据宽度设置错误、MISO引脚接收到干扰。
kkzz 发表于 2025-8-5 09:04 | 显示全部楼层
PI参数设置不当可能导致通信失败或数据错误。
robincotton 发表于 2025-8-5 12:27 | 显示全部楼层
SPI时钟频率需根据外设支持的最大频率设置,通常不超过STM32F103C8T6的SPI最大时钟频率(
sdlls 发表于 2025-8-5 13:20 | 显示全部楼层
先使能 SPI 时钟再操作寄存器
nomomy 发表于 2025-8-5 14:11 | 显示全部楼层
长距离或高速通信时,建议在SCK、MISO、MOSI线上加10kΩ上拉电阻。
iyoum 发表于 2025-8-5 15:51 | 显示全部楼层
用HAL_SPI_Transmit(),此时 MISO 线可悬空
febgxu 发表于 2025-8-7 09:46 | 显示全部楼层
用HAL_SPI_TransmitReceive()同时收发
plsbackup 发表于 2025-8-7 10:22 | 显示全部楼层
检查 MISO 引脚是否悬空或接上拉电阻
saservice 发表于 2025-8-7 12:00 | 显示全部楼层
可以通过调整波特率预分频器(BaudRatePrescaler)来控制时钟频率。
juliestephen 发表于 2025-8-7 15:45 | 显示全部楼层
如果需要使用中断或DMA进行数据传输,确保正确配置中断和DMA通道。
pl202 发表于 2025-8-7 17:09 | 显示全部楼层
​​CPOL/CPHA​​:必须与从设备的时钟极性和相位完全一致
sanfuzi 发表于 2025-8-8 11:06 | 显示全部楼层
检查CPOL/CPHA是否与外设匹配。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

110

主题

4357

帖子

4

粉丝
快速回复 在线客服 返回列表 返回顶部