HAL_ADC库函数使用(轮询方式)
ADC轮询方式检测+CDC(VCP)传输查看,当按下按键后,ADC转换并发送一次。HAL_ADC_Start(ADC_HandleTypeDef* hadc); //开启ADC转换* hadc:&hadcHAL_ADC_PollForConversion(ADC_HandleTypeDef* hadc, uint32_t Timeout); //等待转换完成* hadc:&hadcTimeout:超时时间HAL_ADC_GetValue(ADC_HandleTypeDef* hadc); //获取转换值* hadc:&hadcHAL_ADC_Stop(ADC_HandleTypeDef* hadc); //关闭ADC转换* hadc:&hadc示例:配置main.c文件,添加stdio.h头文件。#include "stdio.h"根据使用的外设,关闭未使用外设的初始化,这里用(VCP)虚拟串口将ADC转换的值传到电脑上查看,如何配置(VCP)虚拟串口请看教程:USB-VCP虚拟串口数据收发(CDC传输)。 /* Initialize all configured peripherals / MX_GPIO_Init(); //初始化GPIO// MX_I2C1_Init();// MX_USART2_UART_Init(); MX_USB_DEVICE_Init(); //初始化USB MX_ADC_Init(); //初始化ADC// MX_TIM2_Init();// MX_SPI1_Init();// MX_WWDG_Init();// MX_IWDG_Init();// MX_RTC_Init();// MX_USART1_UART_Init();编辑主循环程序,检测按键按下进行一次ADC转换和CDC传输。/ Infinite loop //</
HAL ADC转换
最新推荐文章于 2024-02-05 13:15:50 发布
这篇博客介绍了如何使用HAL_ADC库在STM32上实现ADC轮询方式转换,并通过CDC(VCP)将转换值传输到电脑。当按下按键时,启动ADC转换,读取PA0和PA1通道的值,然后通过虚拟串口发送到电脑显示。博主提供了主循环程序的代码示例,并提示用户需根据实际模块配置进行调整。
摘要由CSDN通过智能技术生成