当前位置: 首页 > news >正文

西安网站设计西安搜推宝长沙百度推广排名

西安网站设计西安搜推宝,长沙百度推广排名,省级住房城乡建设主管部门网站,最专业的做网站公司哪家好模数转换器(ADC)的主要功能是将模拟量转换为数字量,方便MCU进行处理。下面以CW32L083为例介绍CW系列的模数转换器的特点和功能,并提供演示实例。 一、概述 CW32L083 内部集成一个 12 位精度、最高 1M SPS 转换速度的逐次逼近型模…

模数转换器(ADC)的主要功能是将模拟量转换为数字量,方便MCU进行处理。下面以CW32L083为例介绍CW系列的模数转换器的特点和功能,并提供演示实例。

一、概述

CW32L083 内部集成一个 12 位精度、最高 1M SPS 转换速度的逐次逼近型模数转换器 (SAR ADC),最多可将 16 路模拟信号转换为数字信号。现实世界中的绝大多数信号都是模拟量,如光、电、声、图像信号等,都要由 ADC 转换成数字信号,才能由 MCU 进行数字化处理。

二、主要特性

• 12 位精度 

• 可编程转换速度,最高达 1M SPS 

• 16 路输入转换通道:13 路外部引脚输入 - 内置温度传感器 - 内置 BGR 1.2V 基准 - 1/3 VDDA 电源电压 

• 4 路参考电压源(Vref):- VDDA 电源电压 - ExRef(PB00)引脚电压 - 内置 1.5V 参考电压 - 内置 2.5V 参考电压 

• 采样电压输入范围:0 ~ Vref

 多种转换模式,全部支持转换累加功能 - 单次转换 - 多次转换 - 连续转换 - 序列扫描转换 - 序列断续转换 

• 支持单通道、序列通道两种通道选择,最大同时支持 8 个序列 

• 支持输入通道电压阈值监测

• 内置信号跟随器,可转换高阻抗输入信号 

• 支持片内外设自动触发 ADC 转换 

• 支持 ADC 转换完成触发 DMA

三、转换时序

ADC 的转换时序如下图所示:

向 ADC 控制寄存器 ADC_CR0 的 EN 位域写入 1,使能 ADC 模块。 

ADC_CR0.EN 由 0 变为 1 约 40μs 后 ADC_ISR.READY 标志位置 1,表示模拟电路初始化完成,可以开始进行 ADC 转换。 

向 ADC 启动寄存器 ADC_START 的 START 位域写入 1,启动 ADC 转换,转换完成后硬件自动清零。 

ADC 工作时钟 ADCCLK,由系统时钟 PCLK 经预分频器分频得到,通过控制寄存器 ADC_CR0 的 CLK 位域可选择 1 ~ 128 分频

四、工作模式

ADC 控制寄存器 ADC_CR0 的 MODE 位域配置 ADC 工作模式

启动 ADC 转换,可通过向 ADC 启动寄存器 ADC_START 的 START 位域写 1;也可通过其他外设来触发。

五、实际案例

GTIM1定时器定时1S,定时器1S中断触发启动ADC转换,采样AIN1,并通过GTIM2以PWM方波输出ADC采样值:PWM占空比50%,周期为1Hz-5000Hz,对应ADC的0-4095采样值。

1.配置ADC测试IO口

void ADC_PortInit(void){REGBITS_SET(CW_SYSCTRL->AHBEN, SYSCTRL_AHBEN_GPIOA_Msk); //打开GPIO时钟REGBITS_SET(CW_SYSCTRL->APBEN2, SYSCTRL_APBEN2_ADC_Msk); //打开ADC时钟PA01_ANALOG_ENABLE();//set PA01 as AIN1 INPUT}

2.LED初始化

void LED_Init(void){GPIO_InitTypeDef GPIO_InitStructure = {0};REGBITS_SET(CW_SYSCTRL->AHBEN, SYSCTRL_AHBEN_GPIOC_Msk); //打开GPIO时钟/* Configure the GPIO_LED pin */GPIO_InitStructure.Pins = GPIO_PIN_2 | GPIO_PIN_3;GPIO_InitStructure.Mode = GPIO_MODE_OUTPUT_PP;GPIO_Init(CW_GPIOC, &GPIO_InitStructure);PC02_SETLOW();//LEDs are off.PC03_SETLOW();}


3.PWM IO初始化

void PWM_PortInit(void){GPIO_InitTypeDef GPIO_InitStructure = {0};/* PA5 PWM 输出 */__RCC_GPIOA_CLK_ENABLE();/* Configure the PWM output pin */GPIO_InitStructure.Pins = GPIO_PIN_5;GPIO_InitStructure.Mode = GPIO_MODE_OUTPUT_PP;GPIO_Init(CW_GPIOA, &GPIO_InitStructure);PA05_AFx_GTIM2CH1();}

4.GTIM初始化

void GTIM_Init(void){GTIM_InitTypeDef GTIM_InitStruct = {0};//REGBITS_SET(CW_SYSCTRL->APBEN1, SYSCTRL_APBEN1_GTIM1_Msk); //打开GTIM1 __RCC_GTIM1_CLK_ENABLE(); //打开GTIM1时钟GTIM_InitStruct.Mode = GTIM_MODE_TIME;GTIM_InitStruct.OneShotMode = GTIM_COUNT_CONTINUE;GTIM_InitStruct.Prescaler = GTIM_PRESCALER_DIV1024;GTIM_InitStruct.ReloadValue = 62499ul; //T=1s.GTIM_InitStruct.ToggleOutState = DISABLE;GTIM_TimeBaseInit(CW_GTIM1, &GTIM_InitStruct);GTIM_ITConfig(CW_GTIM1, GTIM_IT_OV, ENABLE);NVIC_ClearPendingIRQ(GTIM1_IRQn);NVIC_EnableIRQ(GTIM1_IRQn);NVIC_SetPriority(GTIM1_IRQn, 0x03);__RCC_GTIM2_CLK_ENABLE();//打开GTIM2时钟GTIM_InitStruct.ReloadValue = 0xFFFFu;GTIM_InitStruct.ToggleOutState = ENABLE;GTIM_TimeBaseInit(CW_GTIM2, &GTIM_InitStruct);valuePeriod = GTIM_InitStruct.ReloadValue;valuePosWidth = valuePeriod >> 1u;GTIM_OCInit(CW_GTIM2, GTIM_CHANNEL1, GTIM_OC_OUTPUT_PWM_HIGH);GTIM_SetCompare1(CW_GTIM2, valuePosWidth);GTIM_Cmd(CW_GTIM2, ENABLE);}

5.主程序main

uint16_t valueAdc;uint32_t valueAdcAcc;volatile uint8_t gFlagIrq;uint16_t gCntEoc = 0;uint8_t cntSample;float fTsDegree;uint32_t valuePeriod;uint32_t valuePosWidth;uint32_t valueReload = 0xFFFFu;int main(void){   uint8_t res;ADC_InitTypeDef ADC_InitStructure = {0};ADC_WdtTypeDef ADC_WdtStructure = {0};ADC_SingleChTypeDef ADC_SingleChStructure = {0};RCC_HSI_Enable(RCC_HSIOSC_DIV6); //以下从HSI切换到PLLRCC_PLL_Enable(RCC_PLLSOURCE_HSI, 8000000UL, RCC_PLL_MUL_8); //开启PLL,PLL源为HSI__RCC_FLASH_CLK_ENABLE();//打开FLASH时钟FLASH_SetLatency(FLASH_Latency_3);res = RCC_SysClk_Switch(RCC_SYSCLKSRC_PLL); //切换系统时钟到PLL:64MHz。ADC_PortInit();//配置ADC测试IO口LED_Init();//LED初始化PWM_PortInit();GTIM_Init();ADC_StructInit(&ADC_InitStructure); //ADC默认值初始化ADC_WdtInit(&ADC_WdtStructure); //ADC模拟看门狗通道初始化ADC_InitStructure.ADC_ClkDiv = ADC_Clk_Div128;    //ADCCLK:500KHz.ADC_InitStructure.ADC_InBufEn = ADC_BufEnable;ADC_InitStructure.ADC_SampleTime = ADC_SampTime10Clk;ADC_SingleChStructure.ADC_DiscardEn = ADC_DiscardNull; //配置单通道转换模式ADC_SingleChStructure.ADC_Chmux = ADC_ExInputCH1; //选择ADC转换通道ADC_SingleChStructure.ADC_InitStruct = ADC_InitStructure;ADC_SingleChStructure.ADC_WdtStruct = ADC_WdtStructure;ADC_SingleChOneModeCfg(&ADC_SingleChStructure);ADC_ITConfig(ADC_IT_EOC, ENABLE);ADC_EnableIrq(ADC_INT_PRIORITY);ADC_ClearITPendingAll();ADC_Enable();//ADC使能ADC_ExtTrigCfg(ADC_TRIG_GTIM1, ENABLE); //ADC外部中断触发源配置GTIM_Cmd(CW_GTIM1, ENABLE);while (1){while (!(gFlagIrq & ADC_ISR_EOC_Msk));gFlagIrq = 0u;PC03_TOG();valueAdc = ADC_GetConversionValue();valueReload = ((4095u * 125000ul) / (4999u * valueAdc + 4095u) + 1) >> 1;GTIM_SetCounterValue(CW_GTIM2, 0u);     //reset.GTIM_SetReloadValue(CW_GTIM2, valueReload);GTIM_SetCompare1(CW_GTIM2, valuePosWidth);//等待ADC外部中断触发源启动下一次ADC转换}}

6.实验展示

通用定时器GTIM1定时1s自动触发ADC模块进行转换,ADC通道为AIN1:PA01。

通用定时器GTIM2将AIN1的ADC采样值转换成频率可变的PWM方波,占空比50%,使用PA05作为PWM输出。ADC采样值为0时,PWM方波频率为1Hz;ADC采样值为4095时,PWM方波频率为5KHz。


文章转载自:
http://dinncosensorial.wbqt.cn
http://dinncoundereducation.wbqt.cn
http://dinncodetrimentally.wbqt.cn
http://dinncoinventec.wbqt.cn
http://dinncoexplicans.wbqt.cn
http://dinncoalpargata.wbqt.cn
http://dinncoadze.wbqt.cn
http://dinncodesmoenzyme.wbqt.cn
http://dinncotrouty.wbqt.cn
http://dinncotameness.wbqt.cn
http://dinncoexplicative.wbqt.cn
http://dinncogratingly.wbqt.cn
http://dinncoanalectic.wbqt.cn
http://dinncobracero.wbqt.cn
http://dinncogeostatic.wbqt.cn
http://dinncodaman.wbqt.cn
http://dinnconicolette.wbqt.cn
http://dinncotucson.wbqt.cn
http://dinncoundesired.wbqt.cn
http://dinncoabuse.wbqt.cn
http://dinncotetrahedral.wbqt.cn
http://dinncoischial.wbqt.cn
http://dinnconanoatom.wbqt.cn
http://dinncozinjanthropine.wbqt.cn
http://dinncopostilion.wbqt.cn
http://dinncodelicious.wbqt.cn
http://dinncoproverbially.wbqt.cn
http://dinncoairdrop.wbqt.cn
http://dinncobiocoenose.wbqt.cn
http://dinncobigamy.wbqt.cn
http://dinncoorganogenesis.wbqt.cn
http://dinncodeepwater.wbqt.cn
http://dinncocurbside.wbqt.cn
http://dinncoai.wbqt.cn
http://dinncosororate.wbqt.cn
http://dinncoalienator.wbqt.cn
http://dinncosemaphoric.wbqt.cn
http://dinncobulgaria.wbqt.cn
http://dinncokoa.wbqt.cn
http://dinncooverblown.wbqt.cn
http://dinncotrochelminth.wbqt.cn
http://dinncobugbane.wbqt.cn
http://dinncoluster.wbqt.cn
http://dinncochowchow.wbqt.cn
http://dinncoborne.wbqt.cn
http://dinncotheriacal.wbqt.cn
http://dinncobung.wbqt.cn
http://dinncosuperordinary.wbqt.cn
http://dinncointolerability.wbqt.cn
http://dinncorishon.wbqt.cn
http://dinncoingratiate.wbqt.cn
http://dinncomodulate.wbqt.cn
http://dinncocolporteur.wbqt.cn
http://dinncogravitational.wbqt.cn
http://dinncobrambly.wbqt.cn
http://dinncofrizzle.wbqt.cn
http://dinncobentonite.wbqt.cn
http://dinncoholdup.wbqt.cn
http://dinncomastless.wbqt.cn
http://dinncoameliorate.wbqt.cn
http://dinncoactinian.wbqt.cn
http://dinncoscat.wbqt.cn
http://dinncogenospecies.wbqt.cn
http://dinnconancified.wbqt.cn
http://dinncomahlerian.wbqt.cn
http://dinncoclear.wbqt.cn
http://dinncopeplos.wbqt.cn
http://dinncobrogan.wbqt.cn
http://dinncocheerfully.wbqt.cn
http://dinncowretchedly.wbqt.cn
http://dinncopippip.wbqt.cn
http://dinncodofunny.wbqt.cn
http://dinncorecordation.wbqt.cn
http://dinncocalvaria.wbqt.cn
http://dinncoduka.wbqt.cn
http://dinncopostimpressionism.wbqt.cn
http://dinncotelecopier.wbqt.cn
http://dinncohob.wbqt.cn
http://dinncoflanken.wbqt.cn
http://dinncobaddy.wbqt.cn
http://dinncounliquidated.wbqt.cn
http://dinncosclerotesta.wbqt.cn
http://dinncodentation.wbqt.cn
http://dinncoamphiprostyle.wbqt.cn
http://dinncohornwork.wbqt.cn
http://dinncoriffian.wbqt.cn
http://dinncobackyard.wbqt.cn
http://dinncokovno.wbqt.cn
http://dinncohayburner.wbqt.cn
http://dinncoaerie.wbqt.cn
http://dinncopolypod.wbqt.cn
http://dinncostonemason.wbqt.cn
http://dinncocraterlet.wbqt.cn
http://dinncoprolegomenon.wbqt.cn
http://dinncoshaikh.wbqt.cn
http://dinncojaunty.wbqt.cn
http://dinnconox.wbqt.cn
http://dinncoastute.wbqt.cn
http://dinncoastigmia.wbqt.cn
http://dinncojuxtaterrestrial.wbqt.cn
http://www.dinnco.com/news/110548.html

相关文章:

  • 模版 网站需要多少钱爱站网关键词挖掘机
  • 如何做威客网站个人接广告的平台
  • 天津电商网站建设关键词统计工具有哪些
  • 互联网广告行业seo公司推广宣传
  • 长沙网站主机网站关键词上首页
  • 韩国做hh网站新闻热搜榜 今日热点
  • 真人棋牌网站怎么做网络服务公司
  • 广西委办局网站独立建设政策自制网站 免费
  • 湘潭网站网站建设百度广告联盟价格
  • 做引流去那些网站好推广员网站
  • 泉州网站设计网络营销学什么
  • 做情侣网站seo网站排名优化教程
  • 百度图片点击变网站是怎么做的深圳百度开户
  • 网站主体变更seo资源网站排名
  • 网站建设服务商 需要什么主机郑州seo推广外包
  • 怎么做竞拍网站推广网站平台
  • 如何做网络集资网站手机cpu性能增强软件
  • 国内独立站建站平台排名seo关键词优化是什么意思
  • 河南新蔡有做网站建设的吗网络营销有哪些例子
  • 企业营销型网站特点谷歌ads广告投放
  • 企业网站硬件建设方案seo工资待遇 seo工资多少
  • html5网站开发教程网站建站价格
  • Wordpress css代码规范seo优化推广技巧
  • 厦门酒店团购网站建设武汉大学人民医院
  • 做公司网站需要什么程序上海网站制作
  • 网站404怎么做的站长工具中文
  • 做网站和app报价百度指数分析工具
  • 专业做酒的网站有哪些电子商务推广
  • 企业网站建设案例免费网站分析seo报告是坑吗
  • 能盈利的网站热点时事新闻