单片机学习小组
直播中

贾大林

7年用户 1336经验值
私信 关注

怎样使用stm32f103rct6和ADC去实现一种电池电压检测呢

怎样使用STM32f103rct6和ADC去实现一种电池电压检测呢?

回帖(1)

康辅佑

2022-2-17 10:38:14
本人使用的设备/驱动:


  • Windows10
  • 串口助手 4.3.25(其实啥都行)
  • 桃饱随处可买的u***-ttl(ch340G)
  • 桃饱随处可买的stlink
  • cubeMX 5.6.1
  • PlatformIO
  • stm32f103rct6的stormBGC
使用stm32f103rct6,准备使用ADC实现电池电压检测
本文直接从项目中加入相关功能说起,环境以及其他外设配置:

CubeMX配合PlatformIO开发STM32,
CubeMX配合PlatformIO开发STM32,
CubeMX配合PlatformIO开发STM32,
CubeMX配合PlatformIO开发STM32,
CubeMX配合PlatformIO开发STM32,
CubeMX配合PlatformIO开发STM32,
CubeMX配合PlatformIO开发STM32,
CubeMX配合PlatformIO开发STM32,
CubeMX配合PlatformIO开发STM32,
正文


查询原理图,可知使用PA5引脚检测分压过的电池电压信号:


在CubeMX中选择PA5引脚,选择GPIO_analog,并设置为ADC2_IN5

然后在clock configuration中将adc时钟信号更改至9MHz

然后打开pio,添加adc临时存储变量:
但是这个时候还不能通过printf来串口打印代码,因为默认的printf是打印到屏幕上的,我们要重定向到串口
打开usart.c,拉到最下方,在用户自定代码中添加
这个时候就重定向完成了。
但是这个时候烧录的话,你会发现无法打印浮点数(
打开platform.ini添加

这个时候烧录,就可以在串口得到浮点数输出了
举报

更多回帖

发帖
×
20
完善资料,
赚取积分