KiCad文件
全屏
内容介绍
内容介绍
模块设计
根据2025 Make Blocks第二期任务7,来设计一款I2C扩展GPIO的模块。当IO引脚受限时,使用I2C扩展出GPIO是个不错的选择,甚至可以用软件模拟I2C进行扩展。本次选用的芯片是PCF8574AT/3,518,这是一款NXP的数字芯片,可将一路I2C扩展出八个IO,可靠耐用。

原理图和PCB

H2为5个2.54mm排针,分别引出INT、SDA-1、SCL-1、VCC和GND引脚,可在不用INT的情况下直接插入4针OLED屏幕的模块。H3为3个确定模块I2C地址的IO,非必须连接。I2C地址选择的三个接口,也可以不用配置,直接使用上下拉电阻进行配置。SCL、SDA可通过4K7电阻上拉至VCC,INT可通过10K电阻上拉至VCC。R2电阻可进行地址线和数据线的更改换向,避免去修改PCB。U1是PCF8574AT/3,518,16脚位置放置100nF电容来进行滤波。H1是扩展出的IO接口,其中1和10脚是GND,方便进行地平面的参考。

PCB设计选用2层板,进行大面积铺铜。其中,上下拉电阻的部分,每个地址引脚使用三个0603焊盘,使用0603电阻只能同时焊接上拉或者下拉,避免出现短路的问题
调试软件
使用的工具链:
MDK-ARM V5.36
STM32CubeMX V6.14.1
工具:万用表一个
时间紧迫,就拿万用表来简单测量一下IO口的电平。
焊接完成的图片

使用万用表,来测试扩展出的IO端口电平状态

代码


这是PCF8574的驱动代码

主函数逻辑
PC13作为系统状态灯,闪烁来指示系统的运行状态
心得体会
第一把没调试通,三个地址选择的引脚没焊接,后来结合网上的资料,还是得要焊接才可以,事实证明偷懒还是不行的。
附件下载
ProPrj_D-02-2-I2C扩展_2025-07-19.kicad_pcb
ProPrj_D-02-2-I2C扩展_2025-07-19.kicad_sch
F1-PCF8574-02.zip
团队介绍
由种花家刘氓兔完成
评论
0 / 100
查看更多
猜你喜欢
2025 Make Blocks阶段1 设计一款通过I2C扩展IO的模块该项目使用了PCF8574,实现了I2C扩展IO的设计,它的主要功能为:使用PCF8574通过I2C扩展IO口。
冲向天空的猪
193
2025 Make Blocks阶段1 - 基于TCA9535PWR芯片的I2C扩展IO模块该项目使用了TCA9535PWR,实现了扩展IO口的设计,它的主要功能为:IO口扩展,中断输出功能和I2C地址可选。
Tide
91
2025 Make Blocks阶段2 - 用PCF8574实现I2C扩展IO口该项目使用了PCF8574,实现了I2C扩展IO口的设计,它的主要功能为:该项目使用了PCF8574实现了I2C扩展IO口控制小灯亮灭。
冲向天空的猪
47