查看原理图
通过查看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