1 前言
这一节来简单介绍一下S32K3的属于Real-time control中的最后一个模块,即LPCMP,即Low power comparaor,也就是比较器,这个模块比较简单。
2 资源介绍
3 框架分析
从框图可以清晰得看出整个LPCMP分成了3个部分,分别是DAC,ANMUX和CMP。
- DAC就是可以生成一个比较电压源,它的分辨率为8bit。有两个参考电压可选,分别如下:
- ANMUX就是一个通道选择模块,它决定了最后CMP模块的INM和IINP的输入最终是哪两个。从图中就可以很清楚的看到INM和IINP可以是DAC的输出,也可以是外部通道输入的任何一个。
- CMP也就是比较器的主体部分,它完成信号的比较以及输出比较以后的输出信号,分别是中断,DMA以及比较结果。
3 工作模式
LPCMP的工作模式有两种,分别是Function Mode和Trigger Mode,这两者的区别就是ANMUX会不会自动变化。Function Mode的ANMUX不会变化,即每次比较后INM和INP的输入是不会变化的,而Trigger Mode则是会固定INM(或INP)的输入,然后循环改变INP(或INM)的输入。
3.1 Function Mode
在介绍Function Mode之前,得先了解一下CMP的框架,如下:
其中⚪圈出的部分就是CMP的执行机构,INP和INM的比较结果COUT_RAW会第一经过Polarity Select,这个模块就是可以将比较结果COUT_RAW反相;
再经过Window Control,这个模块就相当于是一个信号截取窗口,如果使能了这个Window,那么只有当Window有效时,比较信号才能进入到下一步,同时输出一个COUTA信号;
再经过Filter Block模块,这个模块就是一个采样功能(其实就是把连续信号数字离散化)加数字滤波器,如果使能了,那么这个模块最终输出的结果就是采样点的值,而不是COUTA的实际值了,该模块还可以对比较结果进行滤波,最终输出信号COUT;
最后可以选择COUTA和COUT输出到引脚上,其中COUTA是比较器的值,而COUT则是对COUTA采样的值。最后比较完成后可产生中断和DMA请求。
Function Mode也分成很多种模式,这些模式都是以上几个模块使能与否互相组合的产物,分别如下介绍。
3.1.1 Disabled Mode (#1)
这个模式没啥好说的,就是不工作,不耗电。
3.1.2 Continuous Mode
这个模式中,只使能了Polarity Select,也就说比较器的输出直接就可以输出,没有经过任何处理。该模式可用于过零检测。
3.1.3 Sampled, Non-Filtered Mode (#3A & 3B)
这个模式就是使能了Polarity Select和Filter Block模块,但是只使能了Filter Block模块的采样功能而没有使能其数字滤波功能。比较器输出COUT_RAW的输出经过Filter Block模块采样输出COUT结果如下:
可以看到COUT的输出只会随着采样点的值变化。
至于3A 和 3B这个A和B的区别就是,这个采样点由内部时钟控制还是外部信号WINDOW/SAMPLE控制。
3.1.4 Sampled, Filtered Mode (#4A & 4B)
这个模式跟Sampled, Non-Filtered Mode的唯一区别就是它打开了Filter Block模块的数字滤波功能。
3.1.5 Windowed Mode (#5A & 5B)
这个模式使能了Window Control功能,上面说了一点,就是一个窗口截取功能,只有打开了这个窗户,信号才能过去,关闭窗户,信号就过不去。效果如下图:
而在窗口关闭后,则是可以决定输出COUT的值为保持上一次的值还是输出一个固定值,而这个固定值则是可以人为决定。
3.1.6 Windowed/Resampled Mode (#6)
这个模式就是Sampled, Non-Filtered Mode和Windowed Mode的结合,直接看图就理解了:
注意:可以看到这个模式并没A和B之分,所以它默认是不使用外部时钟信号进行采样的。
3.1.7 Windowed/Filtered Mode (#7)
这个功能其实就是在Windowed/Resampled Mode的基础上使能数字滤波器。
注意:可以看到这个模式并没A和B之分,所以它默认是不使用外部时钟信号进行采样的。
3.2 Trigger Mode
这个模式就是一个循环模式,也叫做Round Robin模式,简单来说可以如下图所示:
就是固定一个通道,然后另外一个通道在通道0~7循环,然后输出8个结果。然后根据固定哪一个通道又有多种变化,具体如下:
其中触发Round Robin的信号为RTC信号,时钟来源也必须来源于RTC。
4 Standy Mode支持
只有Round Robin模式和Continuous Mode支持低功耗模式( Standy Mode)。