这个模块的核心逻辑是 “接口选通 电平适配”:
左侧 P1 是对外通用接口,兼容 IIC(SCL/SDA)和 UART(TX/RX)信号;
中间 Q1、Q2(2N7002 MOS 管)做信号选通,避免两种接口的信号串扰;
U5、U6 负责电平转换,解决外设与主控的 3V/5V 电平差异;
右侧 U4(STM8S003)做模式切换逻辑、状态检测,搭配按键、拨码开关做配置。
1
接口选通:用 MOS 管替代专用开关芯片
一开始想直接用电平开关芯片,但成本偏高,且我们的信号速率不高(IIC≤400kHz、UART≤115200bps),最终选了 2N7002 N 沟道 MOS 管,导通电阻仅几欧姆,信号损耗可以忽略。
电路里 Q1、Q2 的栅极配合通道切换信号:当 S1 拨到 IIC 档时,MOS 管导通,SCL/SDA 信号通到 P1;切 UART 档时则断开 IIC,通 TX/RX。
这里踩过三极管的坑:之前用 NPN 管做选通,截止态漏电流偶尔会触发 IIC 总线误动作,换 2N7002 后,其截止态漏电流<1μA,串扰问题直接解决。
2
电平转换:双向适配的关键
U5、U6 是双向电平转换芯片,SEL 脚接 S1 开关实现通道切换:S1 拨 IIC 档时 SEL 高电平,芯片切 IIC 通道;拨 UART 档时 SEL 低电平,切 UART 通道。
电源脚 VDD 接 3V(主控电平),配合 MOS 管可实现 “外设 5V→主控 3V” 或 “主控 3V→外设 5V” 的双向转换。
电源脚旁的 100nF 去耦电容必须贴紧芯片引脚,我画 PCB 时一开始把电容放远了,上电时电压波动导致电平转换出错,挪到芯片脚旁后稳定性立刻提升。
这个模块成本控制在十几块,试接 IIC 温湿度传感器和 UART 蓝牙模块都很顺畅。

扫码关注


















![[完整开源]有刷电机闭环控制-匹敌无刷FOC效果_自制_硬核](https://api.fanyedu.com/uploads/image/f6/f1b22e78b20477d12df5ba99d623e6.jpg)





















