【stm32】hal库-双通道ADC采集

【stm32】hal库-双通道ADC采集

CubeMX图形化配置

在这里插入图片描述
在这里插入图片描述

程序编写

/* USER CODE BEGIN PV */
#define		BATCH_DATA_LEN	1
uint32_t	dmaDataBuffer[BATCH_DATA_LEN];
/* USER CODE END PV */
  /* USER CODE BEGIN 2 */lcd_init();lcd_show_str(10, 10, 24, "Demo14_4:ADC1 + ADC2 Sync", RED);lcd_show_str(10, 40, 24, "Triggered by TIM3 each 500ms", RED);lcd_show_str(10, 70, 24, "Please set jumper at first", RED);lcd_show_str(10,100, 24, "Tune potentiometer for input", RED);lcd_show_str(10,130, 24, "ADC1 Vref(mV) = ", RED);lcd_show_str(10,190, 24, "ADC2  In5(mV) = ", RED);HAL_ADCEx_MultiModeStart_DMA(&hadc1, dmaDataBuffer, BATCH_DATA_LEN);HAL_ADCEx_MultiModeStart_DMA(&hadc2, dmaDataBuffer, BATCH_DATA_LEN);HAL_TIM_Base_Start(&htim3);/* USER CODE END 2 */
/* USER CODE BEGIN 4 */
__weak void HAL_ADC_ConvCpltCallback(ADC_HandleTypeDef* hadc) {uint32_t Volt;uint32_t adcValue = dmaDataBuffer[0];uint32_t ADC1_val = adcValue & 0x0000FFFF;Volt = 3300 * ADC1_val >> 12;lcd_show_num(50, 160, Volt, 4, 24, RED);uint32_t ADC2_val = adcValue & 0xFFFF0000;ADC2_val = ADC2_val >> 16;Volt = 3300 * ADC2_val >> 12;lcd_show_num(50, 220, Volt, 4, 24, RED);
}
/* USER CODE END 4 */

修改adc.c中的此部分为ENABLE
在这里插入图片描述

实现效果

ADC1采集内部电压
ADC2采集外部输入电压
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/704132.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

微服务中排除父项目中的某个依赖

微服务中,子项目排除父项目中的某个依赖 在微服务项目中,可以通过使用maven的exclusions标签排除父项目中的某个依赖。具体操作如下: 打开子项目的pom.xml文件。 在子项目的dependency标签中,添加exclusions标签,指定…

Python 实现 BRAR 指标计算(情绪指标):股票技术分析的利器系列(11)

Python 实现 BRAR 指标计算(情绪指标):股票技术分析的利器系列(11) 介绍算法公式 代码rolling函数介绍核心代码计算BR计算AR 完整代码 介绍 BRAR 是一种情绪指标,用于衡量特定金融市场中的买卖情绪。它代表…

牛客周赛34(A-E)

目录 1.A 2.B 3.C 4.D 5.E 这场出题人号称是考思维,把我给搞蒙了,把我这菜鸡实力暴露的淋漓尽致,不过这场还是让我学到了东西.A,B题就是签到题,会语法就能做(doge),c题我知道思路是啥,但我没想到切分出来的偶数也可能爆long long,所以还得用字符串存,自定义cmp比较函数,而我…

关于内容生成及其上下游的一些问题和想法以及SmartChat给出的答复

写在问题前面 下面的一系列问题,是为了要实现问题中所提到的内容而提出的。如果有感兴趣的朋友,让我们一起学习进步。同时,以下代码、架构和实现都是我计划想要完成的,如果有任何一方面有基础又愿意一起实现它们的请留言或私信一…

试一下newb,还是有错误呀

解题:原式= 2. 在递增的等比数列 ( a n ) (a_n) (an​)中,若 ( a 3 − a 1 5 2 ) (a_3 - a_1 \frac{5}{2}) (a3​−a1​25​), ( a 2 3 ) (a_2 3) (a2​3), 则公比 (q) A. ( 4 3 ) ( \frac{4}{3} ) (34​) B. ( 3 2 ) ( \frac{3}{2} …

netcat(nc)下载及基本使用

netcat(nc)下载及基本使用 - 知乎

旧物回收小程序开发,开启绿色生活新篇章

随着科技的发展和人们生活水平的提高,物质生活的丰富带来了大量的废弃物。如何合理处理这些废弃物,实现资源的再利用,已成为社会关注的焦点。旧物回收小程序的开发与应用,为这一问题提供了有效的解决方案。本文将探讨旧物回收小程…

软考47-上午题-【数据库】-数据查询语言DQL2

一、聚合函数 聚合函数实现数据统计的功能,返回一个单一的值。聚合函数一般与select语句的group by子句一起使用。 示例: 二、数据分组-group by 聚合函数加上group by子句进行分组。 通常一个聚合函数的作用范围是满足where子句中指定条件的记录&…

Atcoder ABC341 C - Takahashi Gets Lost

Takahashi Gets Lost(高桥迷路了) 时间限制:3s 内存限制:1024MB 【原题地址】 所有图片源自Atcoder,题目译文源自脚本Atcoder Better! 点击此处跳转至原题 【问题描述】 【输入格式】 【输出格式】 【样例1】 【…

vscode输入英文时字体之间的间隔突然变大,似中文

vscode输入英文时字体之间的间隔突然变大,似中文 主要原因: 是由于输入法变成全角模式了。原因可能是不小心按了 shift空格键快捷键造成的。 正常情况,全角就是字母和数字等与汉字占等宽位置的字。 半角就是ASCII方式的字符,在没…

并发编程线程安全性之可见性有序性

可见性 可见性: 就是说一个线程对共享变量的修改,另一个线程能够立刻看到 通俗点说,就是两个线程共享一个变量,无论哪一个线程修改了这个变量,另外一个线程都能够立刻看到上一个线程对这个变量的修改 产生线程安全问题的原因 计…

桶装水配送小程序有什么功能 怎么制作

桶装水配送小程序是一种方便快捷的订水服务工具,可以帮助用户轻松订购桶装水,并实时跟踪订单配送情况。下面具体介绍送水小程序的功能。 1. 客户订水功能:用户可以通过小程序轻松选择需要的桶装水数量和配送时间,填写联系信息和地…

LeetCode 2960.统计已测试设备

给你一个长度为 n 、下标从 0 开始的整数数组 batteryPercentages ,表示 n 个设备的电池百分比。 你的任务是按照顺序测试每个设备 i,执行以下测试操作: 如果 batteryPercentages[i] 大于 0: 增加 已测试设备的计数。 将下标在 …

leet hot 100-7 无重复字符的最长子串

无重复字符的最长子串 原题链接思路代码 原题链接 leet hot 100-7 3. 无重复字符的最长子串 思路 声明一个无序map容器,容器里面记录着窗口里面字符的数量 ,如果字符的数量大于1 遍历到s[i]的时候 数量1 此时如果map里面相关的数量大于1 说明窗口里面…

ocr识别tesseract.js本地复现

来源: https://github.com/naptha/tesseract.js chatgpt今天帮倒忙,一直给一些旧的东西,代码就老报错,最后还是我出面看看log和err调了一下,还的是我啊 复现效果 这个挺好复现的,用的英文模式比中文识别…

阿里云服务器ECS u1实例性能如何?199元一年

阿里云服务器ECS u1实例,2核4G,5M固定带宽,80G ESSD Entry盘优惠价格199元一年,性能很不错,CPU采用Intel Xeon Platinum可扩展处理器,购买限制条件为企业客户专享,实名认证信息是企业用户即可&a…

如何本地构建一个 dpdk l2fwd snap 包?

目标 基于 dpdk-19.11 l2fwd 程序及其依赖库本地构建一个 snap 包&#xff0c;能够在 ubuntu 20.04 桌面环境中安装并测试运行。 编写 snap 包 yaml 描述文件 yaml 文件&#xff1a; name: test # you probably want to snapcraft register <name> base: core22 # th…

常用芯片学习——YC688语音芯片

YC688 广州语创公司语音芯片 使用说明 YC688是一款工业级的MP3语音芯片 &#xff0c;完美的集成了MP3、WAV的硬解码。支持SPI-Flash、TF卡、U盘三种存储设备。可通过电脑直接更新SPI-Flash的内容&#xff0c;无需上位机软件。通过简单的串口指令即可完成三种存储设备的音频插…

C/C++文件操作

一、文本文件操作 1、写文件操作 代码 #include<fstream> #include<iostream>int main() {ofstream outfile("Student.txt", ios::out);if (!outfile) {cout << "文件写入失败" << endl;exit(0); //程序终止}cout << &qu…

R绘图 | 单列数据的分布图,对A变量分bin求B变量的平均值

问题1&#xff1a;单个向量的 density 分布图&#xff1f; (1) 模拟数据 set.seed(202402) datdiamonds[sample(nrow(diamonds), 1000),]> head(dat) # A tibble: 6 10carat cut color clarity depth table price x y z<dbl> <ord> &l…