STM32CubeMX--STM32L0系列ADC读取电压+LPUART串口通讯

本文介绍了使用STM32CubeMX配置STM32L0系列芯片进行ADC电压测量并通过LPUART串口通信的过程。作者遇到并解决了波特率不匹配导致的乱码和显示问题,强调STM32CubeMX在简化配置方面的作用。代码示例和调试经验可供参考。
摘要由CSDN通过智能技术生成

因课题需求 所以选择了STM公司这款低功耗STM32L0系列芯片,之前买了一块学习板自己学习了一下,后来用自己项目的板子进行了调试,会持续更新的~~
刚开始是自己看官网的例程,学习库知识,后来知道了STM32CubeMX芯片配置工具,目前发现还挺好用的,基本的配置会自动生成代码,比如时钟,初始化等。

ADC+LPUART串口通讯
程序介绍:给ADC的第四通道一个电压,通过AD转换,输出到串口打印信息“The current AD value = ****** V”
调试过程中出现的问题
因为用的内置AD,调试过程不复杂,基本一次就通了,但是串口调试的问题主要是会出现乱码情况,还有16进制显示全都是00 00 00,关于这些问题大多数都是由于波特率不匹配或者是波特率和晶振频率不匹配等。

1.STM32CubeMX
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
STM32CubeMX里面时钟图还是比较清晰直观的,比较容易上手,从图中可以看出这款芯片的LPUART是低功耗的,并且用的内部时钟(选择LPUART也是因为项目需求,UART类似),而ADC是内部有专用时钟,用HSI16M时钟工作

2.代码部分

#include "main.h"
#include <stdio.h>

ADC_HandleTypeDef hadc;

UART_HandleTypeDef hlpuart1;

ADC_ChannelConfTypeDef        sConfig;

static uint32_t adc_conv_var;
float temp;

void SystemClock_Config(void);
static void MX_GPIO_Init(v
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值