CH32X035 运放OPA和比较器CMP的应用
CH32X035 运放OPA和比较器CMP的应用
一、关于CH32X035介绍
CH32X035内置USB和PD PHY,20KB RAM,62KB FLASH,支持USB Host主机和USB Device设备功能、USB PD及Type-C快充功能,内置可编程协议I/O控制器,提供了OPA运放、CMP电压比较器、USART串口、I2C、SPI、定时器、12位ADC、Touchkey等丰富外设资源。
CH32X035系列提供最多2个可独立配置的运算放大器OPA和3个可独立配置的电压比较器,其中OPA支持增益选择,也可用于电压比较器。
OPA和CMP通常应用于电控应用当中,OPA主要用于电流的放大,比较器主要用于“刹车”,当检测到电流过大时,及时进行刹车。OPA也可用于电压比较器,但其相较于专门的CMP,延迟会高一些,CMP的延时大概在50ns以内,若OPA用作比较器,延迟时间估计会在100ns以上。
二、关于OPA的应用
关于OPA的应用,其输入输出引脚示意图如下:
OPA主要特性如下:
OPA输出引脚可选择通用I/O口或ADC采样通道;
OPA支持正端输入轮询功能;
OPA支持PGA增益选择;
1、OPA输出引脚选择通用I/O
(1)作为电压跟随器
当输出引脚选择通用IO时,负端和输出端直接连接,若不加反馈电路,则作为电压跟随器使用,具体电路如下图1。输出IO的电压则就是正端输入电压。注意IO引脚的电压范围是0-VDD,不要超过MCU的供电电压。
图1 电压跟随器
(2)作为运算放大器
当负反馈电路加入电阻之后,则会形成运算放大器,将会对输入端电压进行放大,具体电路如下图2。其中3K电阻用R2表示,1K电阻用R1表示。
正端输入电压1.5V,输出电压4.5V,具体放大倍数计算公式如下:
即4.5V=(3K/1K)*1.5
此外还有另一种运算放大电路,如下图,此时放大计算公式和上有所不同
正端输入电压1.5V,输出电压6V,具体放大倍数计算公式为:
即6V=(3/1+1)*1.5
2、OPA输出引脚选择为ADC采样通道
当OPA输出引脚选择为ADC采样通道时,输出电压直接被ADC采集,通过ADC值得到输出值的大小。
3、当OPA设置正端输入轮询功能
当OPA设置正端输入轮询功能时,正端引脚是固定的,不需要配置,如下图。直接配置正端轮询的个数即可。负端引脚以及输出引脚还是需要配置的,输出引脚同样可以配置为通用IO或ADC采样通道。具体电路类似下图,会依次对正端通道进行轮询。
配置为轮询模式时,还需要配置轮询的间隔时间,会根据该时间依次对正端输入进行轮询。类似于单刀三掷开关切换的时间。
4、当使用OPA设置PGA增益时
当配置使用PGA增益时,无需对负端引脚进行配置,直接配置增益倍数即可,可选4倍、8倍、16倍、32倍放大。输出引脚同样可以配置为通用IO或ADC采样通道。
比如当你程序中配置4倍增益,当正端输入电压为0.8V时,输出电压为3.2V。
5、当使用OPA复位功能时
当使用OPA复位功能时,只要输出端为高电平,则就会进行复位。
6、当使用OPA刹车功能时
当使用OPA刹车功能时,只要输出端为高电平,对应的定时器就会停止PWM输出,注意使用OPA刹车功能时,需要对定时器刹车和死区寄存器即BDTR寄存器的BKP位置1。
7、当使用OPA中断功能时
当使用OPA中断功能时,当正端输入高电平时,进入中断。
三、关于CMP的应用
关于CMP的应用,其输入输出引脚示意图如下:
其输出通道可配置为I/O或者内部定时器通道。
(1)当输出通道配置为普通I/O时
当输出通道配置为普通I/O,作为CMP,当正端电压大于负端电压,则输出端IO口引脚电平为高电平,否则为低电平;
(2)当输出通道配置为内部定时器通道
当输出通道配置为内部定时器通道,个人理解,通过内部定时器通道,可获取比较器输出端电平变化的一个时间,可通过将该定时器通道配置为输入捕获模式,捕获发生边沿触发时一个计数器的值,比如设置为上升沿触发,当比较器输出高电平,则会触发中断,获取到一个计数值,通过该计数值可得到相应的时间。