如果不动硬件,能否通过改软件来降低或者消除振铃信号?
答案是肯定的。
本文将按如下几点讲解:
1、MCU的管脚输出速度配置。
2、仿真和实测不同驱动配置对输出波形的影响。
下面分别讲解。
1、MCU的管脚输出速度配置
打开一份MCU的规格书,一般都会给出如下表的数据(下图只截取了配置00和01的数据)
I/O AC characteristics表格会给出MCU管脚的输出速度。
这款MCU的GPIO可以配置4种速度:
配置00,GPIO挂50pF电容,最大支持2MHz速度。
配置01,GPIO挂50pF电容,最大支持25MHz速度。
配置10和11数据略。
GPIO设置的不同速度配置值的实质就是调整驱动电流。
需要注意的是,速度的配置需要结合应用来配置。
驱动电流低,波形上升慢,支持的最大速度低,输出波形基本无过冲。
驱动电流高,波形上升快,支持的最大速度高,输出波形可能有过冲或者振铃。
下面我们通过仿真和实测来看不同的驱动配置值对输出波形的影响。
2、仿真和实测不同驱动配置对输出波形的影响。
4种驱动配置值条件下,示波器实测波形对比如下:
再看看仿真波形。
先搭建仿真电路,仿真设置如下图,PMOS和NMOS构成推挽输出,通过一段传输线后接示波器探头(8pF/1M)
可通过调整PMOS和NMOS的工艺尺寸调节GPIO的驱动电流。
LEVEL4驱动电流最大,LEVEL1驱动电流最小。
仿真4种不同驱动电流配置的波形对比如下:
从上面的波形对比可以看出,实测波形和仿真基本吻合。
驱动电流(速度)配置值对MCU的输出波形影响明显,用户可结合自身产品的外部硬件特点选择合适的驱动配置值。