日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

EFM32片内外设--VCMP 基本操作

發布時間:2024/1/8 c/c++ 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 EFM32片内外设--VCMP 基本操作 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

VCMP基本操作例程,是從Application Note中摳出來的。

#include "stdio.h"
#include "efm32.h"
#include "em_cmu.h"
#include "em_vcmp.h"
#include "em_gpio.h"

unsigned char VCMP_Voltage_Get_Level(void)
{
??? CMU_ClockEnable(cmuClock_CORELE, true);
??? /* Initialize VCMP */
??? CMU_ClockEnable(cmuClock_VCMP, true);
???
??? /* Declare VCMP Init struct */
??? VCMP_Init_TypeDef vcmp =
??? {
??????? false,????????????????????????????? /* Half bias current */
??????? 7,????????????????????????????????? /* Bias current configuration */
??????? false,????????????????????????????? /* Enable interrupt for falling edge */
??????? false,????????????????????????????? /* Enable interrupt for rising edge */
??????? vcmpWarmTime256Cycles,????????????? /* Warm-up time in clock cycles */
??????? vcmpHystNone,?????????????????????? /* Hysteresis configuration */
??????? 0,????????????????????????????????? /* Inactive comparator output value */
??????? false,????????????????????????????? /* Enable low power mode */
??????? VCMP_VoltageToLevel(3.2),?????????? /* Trigger level */
??????? true??????????????????????????????? /* Enable VCMP after configuration */
??? };
???
??? /* Initialize VCMP */
??? VCMP_Init(&vcmp);

??? /* Wait for VCMP warm-up */
??? while (!VCMP_Ready()) ;
???
??? unsigned char ucFlag = 0;
??? /* if VDD > trigger level ==> return ture, else return false*/
??? ucFlag = VCMP_VDDHigher();
???
??? /*Close VCMP*/
??? VCMP_Disable();
???
??? return (ucFlag);
}

void main(void)
{
??? CMU_ClockEnable(cmuClock_GPIO, true);
???
??? GPIO_PinModeSet(gpioPortD, 7, gpioModePushPull, 0);
???
??? while(1)
??? {
??????? if(VCMP_Voltage_Get_Level())
??????? {
??????????? GPIO_PinOutSet(gpioPortD, 7);
??????? }
??????? else
??????? {
??????????? GPIO_PinOutClear(gpioPortD, 7);
??????? }
??? }
}

?

總結

以上是生活随笔為你收集整理的EFM32片内外设--VCMP 基本操作的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。