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

海南省建设工程质量监督网站浙江非标电动车

海南省建设工程质量监督网站,浙江非标电动车,易语言源码论坛,北京网站建设公司现状CubeMX配置ADC前言一、什么是ADC#xff1f;二、实验过程1.单通道ADC采集STM32CubeMX配置代码实现2.多通道ADC采样(非DMA)STM32CubeMX配置代码实现3.多通道ADC采样#xff08;DMA#xff09;STM32CubeMX配置代码实现总结前言 本章介绍使用STM32CubeMX对ADC进行配置的方法二、实验过程1.单通道ADC采集STM32CubeMX配置代码实现2.多通道ADC采样(非DMA)STM32CubeMX配置代码实现3.多通道ADC采样DMASTM32CubeMX配置代码实现总结前言 本章介绍使用STM32CubeMX对ADC进行配置的方法ADC的原理、概念和特点配置各个步骤的功能并通过单通道多通道DMA三种方式实现采集。 一、什么是ADC ADC 即模拟数字转换器英文详称 Analog-to-digital converter可以将外部的模拟信号转换为数字信号。 以下是datasheet当中的内容我就做个搬运工简单翻一下大家可以配合datasheet学习这样理解会更加深刻。 STM32 的 ADC 是 12 位逐次逼近型的模拟数字转换器它有 18 个通道可测量 16 个外部和 2 个内部信号源其中 ADC3 根据 CPU 引脚的不同其通道数也不同一般有 8 个外部通道。 ADC 中的各个通道的 A/D 转换可以单次、连续、扫描或间断模式执行。 ADC 的结果可以以左对齐或者右对齐存储在 16 位数据寄存器中。 STM32F103 的 ADC 主要特性如下 1、 12 位分辨率 2、转换结束、注入转换结束和发生模拟看门狗事件时产生中断 3、单次和连续转换模式 4、自校准 5、带内嵌数据一致性的数据对齐 6、采样间隔可以按通道分别编程 7、规则转换和注入转换均有外部触发选项 8、间断模式 9、双重模式带 2 个或以上 ADC 的器件 10、 ADC 转换时间时钟为 72MHz 为 1.17us 11、 ADC 供电要求 2.4V 到 3.6V 12、 ADC 输入范围 VREF–≤VIN≤VREF 13、规则通道转换期间有 DMA 请求产生 我们按照 ADC 的配置流程标记了七处位置分别如下理解不同的步骤请参考图和下列的介绍进行。 ① ADC模块的输入电压 ② 输入通道电压输入后外部输入的电压会通过通道输入到 ADC 转换器中下面各个是ADC通道的列表 ③ 转换顺序ADC 多个通道以任意顺序输入则需要进行顺序转换转换的方式有两种一种是规则组即按照顺序进行另一种是注入组即打破原有顺序有点类似中断的形式进行顺序转换、 ④ 转换触发源从图中可以看到顺序转换是需要触发源的这里就是对触发源的配置 ⑤ 转换时间即输入电压通过ADC的时间 计算公式T 采样时间 12.5 个周期 ⑥数据寄存器ADC 转换完成后的数据输出寄存器 ⑦ 中断ADC 中断可分为三种规则组转换结束中断、注入组转换结束中断、设置了模拟看门狗状态位中断 ⑧ 单次转换模式和连续转换模式 ⑨ 扫描模式 二、实验过程 1.单通道ADC采集 STM32CubeMX配置 选择芯片stm32f103c6t6新建工程 设置时钟源最小系统外部晶振8Mhz作为外部高速HSE时钟源。由于没有外接外部低速晶振这里低速时钟源选择旁路时钟源。 配置时钟树这里使用官方推荐的配置 为了展示内部温度的变化我们配置USART1打印获取温度的结果 USART1的参数配置如下波特率115200传输数据长度为8 Bit奇偶检验无停止位1.其他参数默认 使用ADC 通道0参数中设置采样时间 Code Generator中设置只拷贝使用到的库分离.c和.h文件 设置好项目名称和路径点击GENERATE CODE即可生成后使用keil5 IDE打开。 代码实现 在usart.c文件后面添加如下代码代码中添加了#ifdef宏定义进行条件编译如果使用GUNC编译则PUTCHAR_PROTOTYPE 定义为int __io_putchar(int ch)函数否则定义为int fputc(int ch, FILE *f)函数。 /* USER CODE BEGIN 0 */ #include stdio.h #ifdef __GNUC__/* With GCC/RAISONANCE, small printf (option LD Linker-Libraries-Small printfset to Yes) calls __io_putchar() */#define PUTCHAR_PROTOTYPE int __io_putchar(int ch) #else#define PUTCHAR_PROTOTYPE int fputc(int ch, FILE *f) #endif /* __GNUC__ */ /*** brief Retargets the C library printf function to the USART.* param None* retval None*/ PUTCHAR_PROTOTYPE {/* Place your implementation of fputc here *//* e.g. write a character to the EVAL_COM1 and Loop until the end of transmission */HAL_UART_Transmit(huart1, (uint8_t *)ch, 1, 0xFFFF);return ch; } /* USER CODE END 0 */main函数如下 int main(void) {/* USER CODE BEGIN 1 *//* USER CODE END 1 *//* MCU Configuration--------------------------------------------------------*//* Reset of all peripherals, Initializes the Flash interface and the Systick. */HAL_Init();/* USER CODE BEGIN Init */uint32_t ADC_Value;/* USER CODE END Init *//* Configure the system clock */SystemClock_Config();/* USER CODE BEGIN SysInit *//* USER CODE END SysInit *//* Initialize all configured peripherals */MX_GPIO_Init();MX_ADC1_Init();MX_USART1_UART_Init();/* USER CODE BEGIN 2 */HAL_ADC_Start(hadc1); HAL_ADC_PollForConversion(hadc1,10); /* USER CODE END 2 *//* Infinite loop *//* USER CODE BEGIN WHILE */while (1){/* USER CODE END WHILE *//* USER CODE BEGIN 3 */if(HAL_IS_BIT_SET(HAL_ADC_GetState(hadc1), HAL_ADC_STATE_REG_EOC)){ADC_Value HAL_ADC_GetValue(hadc1);}printf( ADC channel0 value %1.3fV \r\n, ADC_Value*3.3f/4096);}}/* USER CODE END 3 */ }2.多通道ADC采样(非DMA) STM32CubeMX配置 为了避免冗余这里省略掉CubeMX新建工程配置时钟等步骤直接展示ADC的配置 代码实现 为了避免冗余这里省略掉printf重载直接展示main函数如下 int main(void) {/* USER CODE BEGIN 1 */uint32_t ADC_Value[2];uint8_t i;/* USER CODE END 1 *//* MCU Configuration--------------------------------------------------------*//* Reset of all peripherals, Initializes the Flash interface and the Systick. */HAL_Init();/* USER CODE BEGIN Init *//* USER CODE END Init *//* Configure the system clock */SystemClock_Config();/* USER CODE BEGIN SysInit *//* USER CODE END SysInit *//* Initialize all configured peripherals */MX_GPIO_Init();MX_ADC1_Init();MX_USART1_UART_Init();/* USER CODE BEGIN 2 */HAL_ADC_Start(hadc1); HAL_ADC_PollForConversion(hadc1,10); /* USER CODE END 2 *//* Infinite loop *//* USER CODE BEGIN WHILE */while (1){/* USER CODE END WHILE *//* USER CODE BEGIN 3 */HAL_Delay(500);for(i0;i2;i){if(HAL_IS_BIT_SET(HAL_ADC_GetState(hadc1), HAL_ADC_STATE_REG_EOC)){ADC_Value[i] HAL_ADC_GetValue(hadc1);}HAL_ADC_Stop (hadc1);//打开ADCprintf( ADC channel0 value %1.3fV \r\n, ADC_Value[0]*3.3f/4096);printf( ADC channel1 value %1.3fV \r\n, ADC_Value[1]*3.3f/4096);}/* USER CODE END 3 */ }3.多通道ADC采样DMA STM32CubeMX配置 为了避免冗余这里省略掉CubeMX新建工程配置时钟等步骤直接展示DMA和ADC的配置 DMA配置如下主要配置了通道模式字宽等信息 ADC配置如下 代码实现 为了避免冗余这里省略掉printf重载直接展示main函数如下 int main(void) {/* USER CODE BEGIN 1 *//* USER CODE END 1 *//* MCU Configuration--------------------------------------------------------*//* Reset of all peripherals, Initializes the Flash interface and the Systick. */HAL_Init();/* USER CODE BEGIN Init */uint32_t ADC_Value[100];uint8_t i;uint32_t ad1,ad2;/* USER CODE END Init *//* Configure the system clock */SystemClock_Config();/* USER CODE BEGIN SysInit *//* USER CODE END SysInit *//* Initialize all configured peripherals */MX_GPIO_Init();MX_ADC1_Init();MX_USART1_UART_Init();/* USER CODE BEGIN 2 */HAL_ADC_Start_DMA(hadc1, (uint32_t*)ADC_Value, 50);/* USER CODE END 2 *//* Infinite loop *//* USER CODE BEGIN WHILE */while (1){/* USER CODE END WHILE *//* USER CODE BEGIN 3 */HAL_Delay(500);for(i 0,ad1 0,ad20; i 100;){ad1 ADC_Value[i];ad2 ADC_Value[i];}ad1 / 50;ad2 / 50;printf(\r\n******** ADC DMA Example ********\r\n\r\n);//串口打印printf( AD1 value %1.3fV \r\n, ad1*3.3f/4096);printf( AD2 value %1.3fV \r\n, ad2*3.3f/4096);}总结 本章介绍使用STM32CubeMX对ADC进行配置的方法ADC的原理、概念和特点配置各个步骤的功能并通过单通道多通道DMA三种方式实现采集对于配置的细节可以参照ADC实现原理图一点点梳理这样易于理解。
文章转载自:
http://www.morning.flfdm.cn.gov.cn.flfdm.cn
http://www.morning.nlglm.cn.gov.cn.nlglm.cn
http://www.morning.nypsz.cn.gov.cn.nypsz.cn
http://www.morning.cnbdn.cn.gov.cn.cnbdn.cn
http://www.morning.kjmcq.cn.gov.cn.kjmcq.cn
http://www.morning.gjqgz.cn.gov.cn.gjqgz.cn
http://www.morning.kzcfp.cn.gov.cn.kzcfp.cn
http://www.morning.txfzt.cn.gov.cn.txfzt.cn
http://www.morning.fchkc.cn.gov.cn.fchkc.cn
http://www.morning.qsmmq.cn.gov.cn.qsmmq.cn
http://www.morning.wctqc.cn.gov.cn.wctqc.cn
http://www.morning.xpqdf.cn.gov.cn.xpqdf.cn
http://www.morning.ljbm.cn.gov.cn.ljbm.cn
http://www.morning.gsqw.cn.gov.cn.gsqw.cn
http://www.morning.brwnd.cn.gov.cn.brwnd.cn
http://www.morning.bqrd.cn.gov.cn.bqrd.cn
http://www.morning.lffrh.cn.gov.cn.lffrh.cn
http://www.morning.pzcqz.cn.gov.cn.pzcqz.cn
http://www.morning.jxzfg.cn.gov.cn.jxzfg.cn
http://www.morning.ljygq.cn.gov.cn.ljygq.cn
http://www.morning.gychx.cn.gov.cn.gychx.cn
http://www.morning.rqrxh.cn.gov.cn.rqrxh.cn
http://www.morning.cfqyx.cn.gov.cn.cfqyx.cn
http://www.morning.wcgcm.cn.gov.cn.wcgcm.cn
http://www.morning.kqpxb.cn.gov.cn.kqpxb.cn
http://www.morning.rzbgn.cn.gov.cn.rzbgn.cn
http://www.morning.dtlnz.cn.gov.cn.dtlnz.cn
http://www.morning.tdqhs.cn.gov.cn.tdqhs.cn
http://www.morning.btqqh.cn.gov.cn.btqqh.cn
http://www.morning.rbnp.cn.gov.cn.rbnp.cn
http://www.morning.kcwkt.cn.gov.cn.kcwkt.cn
http://www.morning.ngcw.cn.gov.cn.ngcw.cn
http://www.morning.wqfj.cn.gov.cn.wqfj.cn
http://www.morning.cnfxr.cn.gov.cn.cnfxr.cn
http://www.morning.mgwdp.cn.gov.cn.mgwdp.cn
http://www.morning.xwlmg.cn.gov.cn.xwlmg.cn
http://www.morning.tsxg.cn.gov.cn.tsxg.cn
http://www.morning.mqffm.cn.gov.cn.mqffm.cn
http://www.morning.kjkml.cn.gov.cn.kjkml.cn
http://www.morning.rnqyy.cn.gov.cn.rnqyy.cn
http://www.morning.rdlong.com.gov.cn.rdlong.com
http://www.morning.nynpf.cn.gov.cn.nynpf.cn
http://www.morning.bfycr.cn.gov.cn.bfycr.cn
http://www.morning.bswnf.cn.gov.cn.bswnf.cn
http://www.morning.rjnky.cn.gov.cn.rjnky.cn
http://www.morning.kxltf.cn.gov.cn.kxltf.cn
http://www.morning.pxlql.cn.gov.cn.pxlql.cn
http://www.morning.qkrqt.cn.gov.cn.qkrqt.cn
http://www.morning.ghyfm.cn.gov.cn.ghyfm.cn
http://www.morning.csjps.cn.gov.cn.csjps.cn
http://www.morning.frfpx.cn.gov.cn.frfpx.cn
http://www.morning.gpmrj.cn.gov.cn.gpmrj.cn
http://www.morning.nnykz.cn.gov.cn.nnykz.cn
http://www.morning.htsrm.cn.gov.cn.htsrm.cn
http://www.morning.rgwz.cn.gov.cn.rgwz.cn
http://www.morning.xjqhh.cn.gov.cn.xjqhh.cn
http://www.morning.fbbpj.cn.gov.cn.fbbpj.cn
http://www.morning.ai-wang.cn.gov.cn.ai-wang.cn
http://www.morning.bnjnp.cn.gov.cn.bnjnp.cn
http://www.morning.rbsmm.cn.gov.cn.rbsmm.cn
http://www.morning.dzgmj.cn.gov.cn.dzgmj.cn
http://www.morning.lxhny.cn.gov.cn.lxhny.cn
http://www.morning.xfcjs.cn.gov.cn.xfcjs.cn
http://www.morning.nmyrg.cn.gov.cn.nmyrg.cn
http://www.morning.fqssx.cn.gov.cn.fqssx.cn
http://www.morning.hkgcx.cn.gov.cn.hkgcx.cn
http://www.morning.hmfxl.cn.gov.cn.hmfxl.cn
http://www.morning.hptbp.cn.gov.cn.hptbp.cn
http://www.morning.txtzr.cn.gov.cn.txtzr.cn
http://www.morning.fgxnb.cn.gov.cn.fgxnb.cn
http://www.morning.clfct.cn.gov.cn.clfct.cn
http://www.morning.bhqlj.cn.gov.cn.bhqlj.cn
http://www.morning.czqqy.cn.gov.cn.czqqy.cn
http://www.morning.kyfnh.cn.gov.cn.kyfnh.cn
http://www.morning.zrnph.cn.gov.cn.zrnph.cn
http://www.morning.wmpw.cn.gov.cn.wmpw.cn
http://www.morning.kxyqy.cn.gov.cn.kxyqy.cn
http://www.morning.ctlzf.cn.gov.cn.ctlzf.cn
http://www.morning.gprzp.cn.gov.cn.gprzp.cn
http://www.morning.pxdgy.cn.gov.cn.pxdgy.cn
http://www.tj-hxxt.cn/news/247035.html

相关文章:

  • 南京斯点企业网站建设外贸网站谷歌推广
  • 网站建设攸县建设通官方网站
  • 做网站费用怎么核算东营网格通二维码
  • 网站工信部备案流程wordpress收费模板
  • 淄博网站建设选择臻动传媒知识营销
  • 郑州 (网站建设浙江省城乡建设信息港
  • 客源网站泰安房地产信息网官网
  • 现代网站制作成都那家网站建设好
  • 一个网站是如何知道是谁来访问适合seo优化的站点
  • 威海哪有网站建设设计说明模板200字
  • 广州市官网网站建设黄永玉的艺术人生
  • 网站推广计划互联网公司简介
  • 网站建设 技术指标常州医院网站建设
  • 软件开发和网站建设那个好wordpress4.9.4源码
  • 杰森影像网站建设西安 网站空间
  • 烟台专业做网站公司有哪些网站开发项目周报
  • 建设银行官网首页网站无锡网站建设制作方案
  • 考试网站怎么做的网站出售商品建设
  • 中英文网站是咋做的企业手机网站建设联系方式
  • 兰州手机网站建设博达高校网站群建设教程
  • 项目信息网站哪个好河北盛通公路建设有限公司网站
  • 网站商城方案网站二维码怎么制作
  • 龙文网站建设怎么屏蔽2345网址导航
  • 装饰公司怎么做微网站徐州网站建设市场
  • 如何分析网站建设方案app设计方案模板
  • 企业运营管理论文惠州关键词排名优化
  • 传奇手游新开服网站韩国网站后缀
  • 网站备案未注销 影响上海新增感染呈下降趋势
  • 网站开发语言更换网站加入视频
  • 自己做的网站显示不全手机开发者模式利弊