你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

STM32CubeMX-ADC数据采集

[复制链接]
STMCU-管管 发布时间:2020-12-8 14:58
STM32CubeMX-ADC数据采集


ADC(Analog-to-Digital Converter)模数转换器
11.png
ADC外设的工作参数配置
12.png
ADC外设的工作参数配置
13.png
配置USART外设的工作参数
14.png
生成代码


在main.c文件中设置所需变量,

  1. /* USER CODE BEGIN PV */
  2. // ADC转换值存放
  3. uint16_t adc_value = 0;
  4. // 电压值
  5. float voltage = 0.0;
  6. // 电压值结果显示
  7. char voltString[50] = {0};
  8. /* USER CODE END PV */
复制代码
在while循环里,

  1. while (1)
  2.   {
  3.         // 启动ADC转换
  4.         HAL_ADC_Start(&hadc1);
  5.         // 等待转换完成,第二个参数表示超时时间,单位ms
  6.         HAL_ADC_PollForConversion(&hadc1, 100);
  7.         // 为换取ADC状态
  8.         adc_value = HAL_ADC_GetValue(&hadc1);
  9.         // 采取的右对齐除以2的12次方,参考电压为3.3V
  10.         voltage = (float)adc_value / 4096 * 3.3;
  11.         sprintf(voltString, "²É¼¯µ½µÄµçѹֵΪ: %.2f V", voltage);
  12.         printf("%s\r\n", voltString);
  13.         HAL_Delay(1000);
  14.     /* USER CODE END WHILE */

  15.     /* USER CODE BEGIN 3 */
  16.   }
复制代码
在USART.c添加,

  1. #include "usart.h"

  2. int fputc(int ch, FILE *f)
  3. {
  4.     HAL_UART_Transmit(&huart1, (uint8_t *)&ch, 1, 0xFFFF);
  5.     return ch;
  6. }
复制代码
在USART.h添加,

  1. #include "main.h"
  2. #include <stdio.h>
复制代码


收藏 评论0 发布时间:2020-12-8 14:58

举报

0个回答

所属标签

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版