蓝桥杯嵌入式学习日记(四)——ADC数模转换【STM32】【HAL库】

查看原理图

  通过查看CT117E_M4参考手册可以发现,R37和R38分别对应芯片引脚PB15和PB12。
在这里插入图片描述

STM32cubemx进行创建工程

  这里使用的工程依旧是沿袭上篇文章,这里我们将PB15设为ADC2的15通道、PB12设置为ADC1的11通道。这里可以看到不像前几篇设置LED和按键一样直接变为绿色,而是变为了黄色。这就需要我们在右边ADC进行勾选。
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
分别在ADC2的15通道和ADC1的11通道选择Single-ended即可。

代码编写

float r38,r37;

void ADC_GetValue(void)
{
  HAL_ADC_Start(&hadc1) ;
  r38 = HAL_ADC_GetValue(&hadc1) /4096.0f *3.3f ;

  HAL_ADC_Start(&hadc2) ;
  r37 = HAL_ADC_GetValue(&hadc2) /4096.0f *3.3f ;
}

首先是HAL_ADC_Start()函数,里面填对应想要打开的ADC,HAL_ADC_GetValue(),顾名思义是获取对应的信息。随后对对应的信息进行数据处理即可,随后我们将值显示在LCD上。

void LCD_Show()
{
	u8 LCD_buf[20] ;
	sprintf((char*)LCD_buf ,"   r37:%2.2f",r37) ;
    LCD_DisplayStringLine (Line0 ,LCD_buf ) ;
  
	sprintf((char*)LCD_buf ,"   r38:%2.2f",r38) ;
    LCD_DisplayStringLine (Line2 ,LCD_buf ) ;
}

这里在上面添加

#include "stdio.h"

不然会出现警告
在这里插入图片描述
不过也不影响最终的编译,但是为了严谨还是最好加上。之后给板子供电,转动R37和R38旋钮即可观察到变化。
在这里插入图片描述

文章中工程贴在下面链接,有需要自取,如有问题可在评论区留言。
链接:https://pan.baidu.com/s/1RKJpCzrYc1Hdrf6VMEmFTA?pwd=1111
提取码:1111

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Lumine.

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值