0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

第12章-ADC采集电压和显示 基于STM32的ADC—电压采集(详细讲解+HAL库)

dfhjgfg 来源:dfhjgfg 作者:dfhjgfg 2024-08-21 16:31 次阅读

功能介绍放开头, 使用便捷无需愁

这是全网最详细、性价比最高的STM32实战项目入门教程,通过合理的硬件设计和详细的视频笔记介绍,硬件使用STM32F103主控资料多方便学习,通过3万字笔记、12多个小时视频、20多章节代码手把手教会你如何开发和调试。让你更快掌握嵌入式系统开发。

V3.3.0-STM32智能小车

视频: https://www.bilibili.com/video/BV16x4y1M7EN/?spm_id_from=333.337.search-card.all.click

V3:HAL库开发、功能:PID速度控制、PID循迹、PID跟随、遥控、避障、PID角度控制、视觉控制、电磁循迹、RTOS等功能。

我们的智能小车用到了ADC测量电池电压的功能,这章节我们做一下。
我们的一篇在这里
[第一篇]
什么是ADC

百度百科介绍:
在这里插入图片描述
我们知道万用表 电压表可以测量电池,或者电路电压。那么我们是否可以通过单片机获得电压,方便我 们监控电池状态
在这里插入图片描述
如何测量我们的锂电池电压那?锂电池电压12V左右,单片机ADC最大测量电压3.3V,这里我们需要分 压电路分压。

在这里插入图片描述
然后我们通过电阻分压,显而易见 ADC点的电压是VBAT_IN的 五分之一

  1. 软件初始化一下ADC 。
  2. 然后注意调长一点采样时间、这样精度才会更高一点。
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在adc.c文件添加ADC相关函数

在这里插入图片描述

/*******************
*  @brief  电池电压测量计算函数
*  @param  无
*  @return 小车电池电压
*
*******************/
float adcGetBatteryVoltage(void)
{
	HAL_ADC_Start(&hadc2);//启动ADC转化
	if(HAL_OK == HAL_ADC_PollForConversion(&hadc2,50))//等待转化完成、超时时间50ms
		return (float)HAL_ADC_GetValue(&hadc2)/4096*3.3*5;//计算电池电压
	return -1;
}

在main中调用显示函数显示电压
在这里插入图片描述

sprintf((char*)OledString, "U:%.2fV", adcGetBatteryVoltage());
	OLED_ShowString(0,2,OledString,12);//这个是oled驱动里面的,是显示位置的一个函数,

然后后面继续做其他功能

审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • adc
    adc
    +关注

    关注

    97

    文章

    6281

    浏览量

    542211
  • STM32
    +关注

    关注

    2256

    文章

    10819

    浏览量

    352210
  • 电压采集
    +关注

    关注

    2

    文章

    20

    浏览量

    14032
  • HAL库
    +关注

    关注

    1

    文章

    114

    浏览量

    6018
收藏 人收藏

    评论

    相关推荐

    使用STM32L031F6在hal下进行ADC+DMA多通道采集采集电压值始终为0的原因?

    使用STM32L031F6芯片 在hal下进行ADC+DMA多通道采集时候,采集
    发表于 03-14 07:06

    HAL每天一例】021例:ADC-单通道采集(电位器)

    /1i574oPv 密码:r3s3(硬石YS-F1Pro开发板HAL例程持续更新\1. 软件设计之基本裸机例程(HAL版本)\YSF1_HAL
    发表于 05-26 08:57

    HAL每天一例】023例:ADC-多通道采集(DMA)

    /1i574oPv 密码:r3s3(硬石YS-F1Pro开发板HAL例程持续更新\1. 软件设计之基本裸机例程(HAL版本)\YSF1_HAL
    发表于 05-28 08:55

    ADC电压采集

    请问谁有STM32F03 ADC电压采集显示在屏幕上的程序
    发表于 07-13 19:08

    ADC电压采集

    相关文章可以参考上面网址30 ADC电压采集全套200集视频教程和1000页PDF教程请到秉火论坛下载:野火视频教程优酷观看网址本章参
    发表于 08-03 06:40

    STM32L0之ADC采集

    STM32L0系列之ADC采集前言使用芯片:STM32L051C8T6软件平台:KEIL V5、STM32CubeL0库函数:
    发表于 08-11 07:55

    STM32 HAL CUBEMX配置 ADC采集 精选资料分享

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录STM32 HAL CUBEMX配置 ADC采集软硬件型号1.单通
    发表于 08-11 07:46

    STM32 HAL CubeMX教程

    STM32 HAL CubeMX教程(七)ADC电压采集A
    发表于 08-12 06:36

    STM32H7的ADC基础知识和HALAPI

    44 STM32H7的ADC基础知识和HALAPI本章节为大家
    发表于 08-20 07:55

    ADC基于stm32电压电流采集

    ADC基于stm32电压电流采集原理与源程序。
    发表于 03-22 12:14 1003次下载

    STM32F0xx_ ADC采集电压配置详细过程

    STM32F0xx_ADC采集电压配置详细过程
    的头像 发表于 04-08 09:01 1.7w次阅读
    <b class='flag-5'>STM32</b>F0xx_ <b class='flag-5'>ADC</b><b class='flag-5'>采集</b><b class='flag-5'>电压</b>配置<b class='flag-5'>详细</b>过程

    STM32 HAL CUBEMX配置 ADC采集

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录STM32 HAL CUBEMX配置 ADC采集软硬件型号1.单通
    发表于 12-27 18:57 25次下载
    <b class='flag-5'>STM32</b> <b class='flag-5'>HAL</b><b class='flag-5'>库</b> CUBEMX配置 <b class='flag-5'>ADC</b><b class='flag-5'>采集</b>

    STM32 HAL CubeMX教程(七)ADC电压采集串口输出

    STM32 HAL CubeMX教程(七)ADC电压采集A
    发表于 01-12 20:24 44次下载
    <b class='flag-5'>STM32</b> <b class='flag-5'>HAL</b><b class='flag-5'>库</b> CubeMX教程(七)<b class='flag-5'>ADC</b><b class='flag-5'>电压</b><b class='flag-5'>采集</b>串口输出

    STM32F103+ADC采集实时电压+LCD1602A显示

    STM32F103+ADC采集实时电压+LCD1602A显示前言代码前言刚开始学习STM32,用的是开发板是野火的指南者,这款板子网上资源很
    发表于 01-14 09:37 125次下载
    <b class='flag-5'>STM32F103+ADC</b><b class='flag-5'>采集</b>实时<b class='flag-5'>电压</b>+LCD1602A<b class='flag-5'>显示</b>

    adc采集电压值数值如何真有效性转换?

    adc采集电压值数值如何真有效性转换?adc采集温度基准电压纹波太大有什么影响?
    的头像 发表于 10-17 18:17 1278次阅读