NMOS双向转换电路实测以及上升沿尖峰处理
- NMOS双向转换电路
- 🔧采用的是5V供电的STC8H单片机输出PWM波形,经过上面的电平转换电路测量低压端的波形。
- 🌿下面橙色的是STC8H输出的原始pwm波形,下面紫色的是经过BSS138 NMOS转换后的电路。
- 🔖STC8H IO引脚配置的是准双向弱上拉模式测得.
/************************ IO口配置 ****************************/
void GPIO_config(void)
{
GPIO_InitTypeDef GPIO_InitStructure; //结构定义
GPIO_InitStructure.Pin = GPIO_Pin_0; //指定要初始化的IO, GPIO_Pin_0 ~ GPIO_Pin_7, 或操作
GPIO_InitStructure.Mode = GPIO_PullUp; //指定IO的输入或输出方式,GPIO_PullUp,GPIO_HighZ,GPIO_OUT_OD,GPIO_OUT_PP
GPIO_Inilize(GPIO_P2,&GPIO_InitStructure); //初始化
GPIO_InitStructure.Pin = GPIO_Pin_All; //指定要初始化的IO, GPIO_Pin_0 ~ GPIO_Pin_7, 或操作
GPIO_InitStructure.Mode = GPIO_PullUp; //指定IO的输入或输出方式,GPIO_PullUp,GPIO_HighZ,GPIO_OUT_OD,GPIO_OUT_PP
GPIO_Inilize(GPIO_P1,&GPIO_InitStructure); //初始化
}
🌿将STC8H输出PWM波形的IO口配置成开漏输出模式,并进行测试。
void GPIO_config(void)
{
GPIO_InitTypeDef GPIO_InitStructure; //结构定义
GPIO_InitStructure.Pin = GPIO_Pin_0; //指定要初始化的IO, GPIO_Pin_0 ~ GPIO_Pin_7, 或操作
GPIO_InitStructure.Mode = GPIO_OUT_OD; //指定IO的输入或输出方式,GPIO_PullUp,GPIO_HighZ,GPIO_OUT_OD,GPIO_OUT_PP
GPIO_Inilize(GPIO_P2,&GPIO_InitStructure); //初始化
GPIO_InitStructure.Pin = GPIO_Pin_All; //指定要初始化的IO, GPIO_Pin_0 ~ GPIO_Pin_7, 或操作
GPIO_InitStructure.Mode = GPIO_OUT_OD; //指定IO的输入或输出方式,GPIO_PullUp,GPIO_HighZ,GPIO_OUT_OD,GPIO_OUT_PP
GPIO_Inilize(GPIO_P1,&GPIO_InitStructure); //初始化
}
- 🌿BSS138 NMOS电平转换后的输出波形,上升沿还是会出现尖峰毛刺现象:
将NMOS管型号换成2N7002 NMOS 测试
🔰BSS138 对比2N7002对比发现,峰峰值有差异
BSS138电压的峰峰值波动范围要比2N7002表现要好。
- 📑BSS138 手册数据:
- 📑2N7002手册数据:
- 📏开漏输出模式测量到BSS138的峰峰值电压波动范围:
4.72V - 4.8V
- 📐开漏输出模式测量到2N7002的峰峰值电压波动范围:
4.80V - 5.04V
-
📏准双向模式测量到BSS138的峰峰值电压波动范围:
4.72V - 4.8V
-
📐准双向模式测量到2N7002的峰峰值电压波动范围:
4.80V - 5.04V
🏳🌈NMOS双向转换电路中,如果在2N7002和BSS138中做选择,还是推荐使用BSS138 NMOS管。
🔨上升沿尖峰处理
✨不管使用何种NMOS管,都存在电平信号转换后的上升沿尖峰的问题.
-
🌼1K电阻值效果:
-
🌻500欧姆电阻值效果:
- 🎉以上结果在STC8H配置的PWM输出引脚模式开漏输出和准双向弱上拉模式下都进行了测试,效果差不多。
- 📓最终完善的原理图:
- 📌分享一下PCB 此验证方案:
https://oshwhub.com/perseverance51/mos-guan-shuang-xiang-dian-ping