【stm32】hal库学习笔记-ADC模数转换(超详细)

本文详细介绍了STM32的ADC模数转换在不同场景下的应用,包括普通通道检测、外部中断触发、DMA多通道传输等,展示了使用HAL库进行电压检测的方法和时钟树、TIM3配置等内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

【stm32】hal库学习笔记-ADC模数转换(超详细)

本篇章介绍了ADC实现电压检测的三种方式

ADC原理及选型

ADC将连续的模拟电压信号转换为二进制的数字信号

选型参数

速度(采样频率)
功耗
精度在这里插入图片描述

转换原理

在这里插入图片描述

ADC hal库驱动函数

在这里插入图片描述

普通通道检测电压

CubeMX图形化配置

导入TFT_LCD配置(配置方法见上一篇博客)

时钟树配置
在这里插入图片描述
打开外部时钟
在这里插入图片描述
FSMC配置
在这里插入图片描述
ADC配置
在这里插入图片描述

将Time base的优先级调为0 打开中断

在这里插入图片描述

代码实现

  /* USER CODE BEGIN 2 */
  lcd_init();
//  lcd_show_str(10, 40, 24, "ADC1-IN5 channel", 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, "ADC 12-bits Value = ", RED);
  lcd_show_str(10,190, 24, "Voltage(mV) = ", RED);
  /* USER CODE END 2 */

  /* Infinite loop */
  /* USER CODE BEGIN WHILE */
  while (1)
  {
   
	  HAL_ADC_Start(&hadc1);
	  if (HAL_ADC_PollForConversion(&hadc1
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值