CMPSS缩写与功能介绍:
CMPSS:Comparator Subsystem
功能:
通过比较内部运放两端的电压,输出比较后的结果;可以将外部采样的信号(电压,电流等)进行比较,输出比较后的事件,与ePWM关联后,可以用于过流保护功能;
功能框图:
CMPSS主要用于信号比较,输出比较后的结果或者事件;
功能说明:
CMPSS内有2个比较模块,COMPH,COMPL,其原理如下:
通过配置COMP的+,-信号,输出比较结果;
这里以COMPH为例:
COMP+输入:
+输入为CMPx_HP,对应为7个通道,分别如下:
共为7个通道,连接到ADCA/B/C上边,对应的SYSConfig配置截图如下:
通过这7个通道,设定CMPX_HP+的输入;
COMP-输入:
该输入有两种选择,DACVAL,或者CMPx_HN,通过COMPCTL[COMPHSOURCE]来配置;
当配置为DACVAL时,可通过DACHVALS形成链路,通过配置DAC值,来实现COMP-脚比较值的变化(注意要同步配置好DAC的供电电压);
对应SYSConfig如下:
当配置为CMPx_HN时,通过AIO脚来实现链路,对应SYSConfig配置如下:
我们以COMP-输入配置为DAC为例:
信号输出:
比较器输出信号有两个,分别为CTRIPH,CTRIPOUTH;
其中CTRIPH连接到EPWM X_BAR,可以用于触发PWM的事件;
CTRIPOUTH连接到OUTPUT X_BAR,可以用于连接到IO口,用来观察实际的比较器输出;
信号输出共有四种模式,通过配置COMPCTL[CTRIPHSEL]和COMPCTL[CTRIPOUTHSEL]来完成,对应的SYSConfig配置如下;
Output is inverted, 设置对应COMPCTL[COMPHINV],用于输出结果的翻转;
Asynch OR Latch,设置对应COMPCTL[ASYNCHEN],用于锁存输出为正的结果,对应COMPCTL[CTRIPOUTHSEL]需要设定为3,清除通过设置COMPSTSCLR[HLATCHCLR]或者更前级的链路完成;
实际测试:
将COMP+配置为INPUT signal 3, 对应AIO脚为B3;
将COMP-配置为DAC, 设定到2048;
将CTRIPOUTH配置到OUTPUTBAR上对应GPIO2;
结果:
将B3脚接3.3V时,对应GPIO2输出3.3V;
当B3脚接0V时,对应GPIO2输出0V;