STC32G 内部模拟比较器


 

01 STC32G比较器


一、前言

  手边有一款DIP40封装的STC32G单片机,  下面测试一下该单片机的内部比较器的特性。

esp32内部flash_esp32内部flash

二、基本比较器功能

  这是比较器的基本结构, 它的正输入端有四种选项e, 下面选择P3.7作为输入信号。 利用DG1062信号源产生三角波输入该端口。 设置比较器负输入端为内部的 参考电压1.19V。 选择 P3.4 作为比较器结果输出,这样便于使用示波器观察比较结果。 通过编程,初始化比较器控制寄存器, 通过设置CMPCR1中的 CMPOE, 使得比较器结果可以输出到 P3.4 管脚。
esp32内部flash_比较器_02

esp32内部flash_esp32内部flash_03


▲ 图1.2.1 比较器内部的结构


  这是示波器测量到P3.7输入信号,P3.4 比较器输出信号。 可以看到在输入电压超过1.19V的时候, 输出信号从低电平变化到高电平。 展示了内部模拟比较器的基本功能。

esp32内部flash_stm32_04

三、回滞特性

  STC32G 内部的模拟比较器具有回滞特性,  也就是在其内部有弱的正反馈,使得比较器的输出转变对应 两个输入信号之间有一定的电压差,  这样可以在一定程度上减少输出结果中的抖动。 这是设置绘制电压为30mV是对应的输出波形,  还是可以看到输出上升沿和下降沿对应的输入信号具有一定的差异。
esp32内部flash_单片机_05

esp32内部flash_stm32_06


▲ 图1.3.1 基本回滞特性



  我们知道,利用带有回滞特性的反相器, 可以构成张驰振荡器。 下面通过软件编程, 设置STC32G模拟比较器极性反向,  这样便可以通过外部增加一个电阻和电容构成振荡器。 这是观察到比较器输出 P3.4以及 比较器正向输入P3.7 的电压波形。 能够清楚看到绘制电压波动引起输出电位的变化。 由于电容放电对应的电压不同, 振荡方波的占空比大约只有 20% 左右。


esp32内部flash_esp32内部flash_07

esp32内部flash_物联网_08


▲ 图1.3.2 回滞反相器构成的张驰振荡器



  降低绘制电压, 从30毫伏减少到 10毫伏, 振荡的频率增加了。 


esp32内部flash_物联网_09

esp32内部flash_esp32内部flash_10

 

※ 总


本文测试了 STC32G内部的模拟比较器, 通过构造绘制反向振荡器, 验证了比较器的回滞特性。
esp32内部flash_比较器_11



● 相关图表链接:

  • 图1.2.1 比较器内部的结构
  • 图1.3.1 基本回滞特性
  • 图1.3.2 回滞反相器构成的张驰振荡器