郑州微网站制作西安自助建站
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_PPGPIO_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_PPGPIO_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_PPGPIO_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_PPGPIO_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 
