CMT2380F32模块开发19-LVD例程
Posted andylauren
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CMT2380F32模块开发19-LVD例程相关的知识,希望对你有一定的参考价值。
LVD 可用于监测 VCC 及芯片引脚的电压。当被监测电压与 LVD 阈值的比较结果满足触发条件时,LVD 会产生中断或复位信号,用户可根据该信号执行一些紧急任务。
LVD 具有以下特性:
4 路监测源,VCC、P03、P23、P25;
16 阶阈值电压,灵活多用;
8 种触发条件,高电平、上升沿、下降沿组合;
2 种触发结果,复位、中断;
8 阶滤波配置,防止误触发;
具备迟滞功能,强力抗干扰。
LVD和vc功能基本一致,都是电压比较器,区别是vc输入源比较多,LVD可以检测vcc和几个gpio。
LVD 框图
根据框图可以很容易的看出输入源的区别。
例程只讲一个下降沿的吧,其他的基本都是一致的。
lvd_detect_falling_irq例程
P15作为LVD输出,P23作为LVD输入,LVD基准选择1.8V,将P23链接一个电位器,然后调整电位器,观察P15链接的LED灯。
Gpio_SetFunc_LVDOUT_P15(); //配置LVD输出口
// Gpio_SetFunc_LVDOUT_P15();
//配置LVD输出口为模拟端口
Gpio_SetAnalog(1, 5, TRUE);
stcLvdCfg.bLvdReset = FALSE; //配置中断或者RESET功能
stcLvdCfg.enInput = LvdInputP23; //配置LVD输入口
stcLvdCfg.enThreshold = LvdTH1p8V; //配置LVD基准电压
stcLvdCfg.bFilter = TRUE;
stcLvdCfg.enFilterTime = LvdFilter29ms;
stcLvdCfg.enIrqType = LvdIrqFall;
stcLvdCfg.pfnIrqCbk = LvdIrqCallback;
Lvd_Init(&stcLvdCfg);
Lvd_EnableIrq(stcLvdCfg.enIrqType);
delay100us(1);
Lvd_Enable(); // LVD使能
以上是关于CMT2380F32模块开发19-LVD例程的主要内容,如果未能解决你的问题,请参考以下文章