/**
 * @brief CMP-基本功能
 * @details
 * 比较器模拟部分
 * 使用CMP0_IN0 P0.15和CMP0_IP0 P2.9作为输入，P0.14输出比较器结果
 * 其中N端信号固定为1V
 * P端信号从0.9到1.1线性变化
 * 分别记录0.9->1.1V和1.1V->0.9V时，比较器输出变化波形
 */
#include "lks32mc09x_cmp.h"
#include "lks32mc09x_gpio.h"
#include "lks32mc09x_sys.h"
volatile uint32_t sethys = CMP_HYS_20mV;
/**
 * @brief 主函数，用于测试HSI时钟输出及GPIO翻转
 */
int main(void)
{
    SYS_ModuleClockCmd(SYS_MODULE_GPIO, ENABLE);
    CMP_Enable(CMP_CHN_0);
    CMP_SetSignal(CMP_CHN_0, CMP_SELN_0_IN_CMP0, CMP_SELP_0_CMP0_IP0); // CMP0_IN0 P0.15 CMP0_IP0 P2.9
    GPIO_Config(GPIO0, GPIO_PinSource_14, GPIO_Mode_OUT, GPIO_AF_CMP_OUT);
    while (1)
    {
        CMP_SetHysteresis(sethys);
    }
}

