orange 发表于 2025-6-14 14:38:50

在进行SPI通信的时候,引脚模式该怎么设置

设置成准双向模式,还是强推挽,还是高阻态模式;

我理解是,有输出功能的引脚全部设置为强推挽;
接收数据的引脚,设置成高阻态,不知道对不对

神农鼎 发表于 2025-6-19 11:48:01



AiCube自动生成【SPI,SPI-DMA,I2C,I2C-DMA】代码,驱动OLED-12864, @Ai8051U - AiCube@AIapp-ISP 最新版本, 强大的32位8051辅助开发工具 国芯技术交流网站 - AI32位8051交流社区

神农鼎 发表于 2025-6-19 11:50:48


都设置成 准双向口 也是可以的,或 【开漏 + 上拉电阻】


SPI / QSPI 编程外部串行Flash | 配合ISP软件中【工具 | 串行Flash编程器】,2/5 - QSPI/3组SPI/I2S/I2C,一线制温湿度传感器 国芯技术交流网站 - AI32位8051交流社区

_奶咖君_ 发表于 2025-6-14 14:47:36

还要关注从机器件的电平匹配,,,

如果不用考虑电平匹配的话,可以把输出脚(片选,MOSI,SCLK)设置为输出模式--准双向、开漏输出(电路上有上拉电阻)、推挽输出
输入脚(MISO)设置为可以接收的模式,-准双向(读取数据前需要让引脚对应的寄存器置一),开漏输出(输出高电平时IO≈高阻状态),高阻输入(最好是有上拉电阻保持电平稳定)

_奶咖君_ 发表于 2025-6-14 14:50:43

如果要考虑 电平匹配的话,,,

一个是增加电平匹配电路,,


如果不想额外增加电平匹配电路,且单片机这里电平比从机的电平高,,比如说 单片机是5V供电,但SPI连接的从机是3V3,那就可以把引脚都设置为开漏,加上上拉的3V3的上拉电阻就可以。

orange 发表于 2025-6-14 15:56:02

有没有大佬有调试好的测试程序,借鉴一下,ISP里面的测试代码没跑通

神农鼎 发表于 2025-6-14 17:56:37



https://www.stcaimcu.com/data/download/Datasheet/AI8051U.pdf
看实战的程序


https://www.stcaimcu.com/forum.php?mod=redirect&goto=findpost&ptid=15176&pid=170525

orange 发表于 2025-6-16 09:13:33

神农鼎 发表于 2025-6-14 17:56
https://www.stcaimcu.com/data/download/Datasheet/AI8051U.pdf
看实战的程序



感谢大佬

orange 发表于 2025-6-17 16:48:45

问一个问题,我现在用stc8h1k08做SPI通信主机,用示波器量时钟和数据都有
用STC8H8K64U做从机,接收SPI数据,连接之后,时钟和数据信号都没有了,通信不了,请问是什么问题
主机设置推挽,从机设置高阻状态,

神农鼎 发表于 2025-6-17 21:01:33

先都设置成准双向口,打开内部上拉

orange 发表于 2025-6-18 08:48:19

好的,我试试.

orange 发表于 2025-6-18 09:19:46

神农鼎 发表于 2025-6-17 21:01
先都设置成准双向口,打开内部上拉

试了,还是不行.这个STC8H8K64U一共有4组SPI功能脚,第一组和第二组时钟都会被拉下来,第三组不会,第四组还没试,会不会是前两组的引脚有问题
页: [1] 2 3
查看完整版本: 在进行SPI通信的时候,引脚模式该怎么设置