[其他ST产品]

STM32CubeMX教程-STM32L431RCT6开发板研究(ADC)

[复制链接]
438|57
手机看帖
扫描二维码
随时随地手机跟帖
lxs0026|  楼主 | 2022-6-30 23:15 | 显示全部楼层 |阅读模式
一、开发板平台简介:
1、开发板资源简介
(1)开发板主芯片型号:STM32L431RCT6

(2)开发板主芯片封装:LQFP-64_10x10x05P

(3)开发板主芯片内核:ARM® Cortex®-M4

(4)开发板主芯片主频:80MHz

(5)开发板主芯片Flash大小:256KB

(6)开发板主芯片RAM大小:64KB

(7)其他外设:请参考芯片手册https://atta.szlcsc.com/upload/public/pdf/source/20161229/1482979391205.pdfhttps://atta.szlcsc.com/upload/public/pdf/source/20161229/1482979391205.pdf


使用特权

评论回复
lxs0026|  楼主 | 2022-6-30 23:17 | 显示全部楼层
9703962bdbe8fef249.png

使用特权

评论回复
lxs0026|  楼主 | 2022-6-30 23:21 | 显示全部楼层
2、串口简介
         串口全称为串行通讯接口,即数据在通信线上一次传输一位,按先后一定顺序传输。我们通常所说的单片机串口准确来说应该是串行异步收发传输器(Universal Asynchronous Receiver/Transmitter,UART),使用TTL电平,串口需要RXD、TXD、GND三根线进行通信。
9125362bdbf2b0b713.png

使用特权

评论回复
lxs0026|  楼主 | 2022-6-30 23:22 | 显示全部楼层
(1)我们选用的STM32L431RCT6开发板串口1已通过USB转TLL串口芯片CH340G引出,使用时,只需要用公对公USB线连接电脑即可(注意也得需要安装CH340G驱动),后期验证试验也试验该串口1进行。

使用特权

评论回复
lxs0026|  楼主 | 2022-6-30 23:23 | 显示全部楼层
(2)开发板上的其他串口已通过排针引出,为TTL电平,通信的时候需要注意选择对应的电平模块,如USB转TTL串口模块等。

使用特权

评论回复
lxs0026|  楼主 | 2022-6-30 23:23 | 显示全部楼层
二、新建工程
1、新建STM32CubeMX基础工程
(1)打开STM32CubeMX,点击“File”-->"New Project"

4551962bdbff623f66.png

使用特权

评论回复
lxs0026|  楼主 | 2022-6-30 23:24 | 显示全部楼层
(2)等待打开主芯片选项界面(大约1分钟时间)。
8069162bdc01aadaaf.png

使用特权

评论回复
lxs0026|  楼主 | 2022-6-30 23:25 | 显示全部楼层
(3)昨天搜索框中输入(或选择)所需的主芯片型号(因为我们用的是STM32L431RCT6开发板,所以此处现在STM32L431RC),然后在右下角选择STM32L431RCTx(因为开发板主芯片是STM32L431RCT6),左键双击即可打开新建的项目。

使用特权

评论回复
lxs0026|  楼主 | 2022-6-30 23:26 | 显示全部楼层
3744262bdc064b8848.png

使用特权

评论回复
lxs0026|  楼主 | 2022-6-30 23:26 | 显示全部楼层
(4)选择时钟源。

——因为开发板上有8M外部时钟,此处选择外部高速时钟(HSE)。

——因为我们没有用到外部低速时钟(LSE),此处不做处理。

使用特权

评论回复
lxs0026|  楼主 | 2022-6-30 23:28 | 显示全部楼层
5472762bdc0b6f103d.png

使用特权

评论回复
lxs0026|  楼主 | 2022-6-30 23:28 | 显示全部楼层
2、配置GPIO控制LED
备注:LED灯用来指示系统是否正常工作。

(1)查STM32L431RCT6开发板原理图得LED1控制引脚为PC0,则配置GPIO的引脚PC0。

鼠标左键点击PC0,选择“GPIO_Output”,表示设置该引脚为输出模式。

使用特权

评论回复
lxs0026|  楼主 | 2022-6-30 23:29 | 显示全部楼层
1287762bdc12ede375.png

使用特权

评论回复
lxs0026|  楼主 | 2022-6-30 23:30 | 显示全部楼层
3、设置串口1参数
(1)查原理图得知,串口0使用STM32L431RCT6引脚为PA9-USART1_TX,PA10-USART1_RX,引脚设置如下:
8814562bdc1913eb3c.png
(2)序号1用来设置串口收发引脚的选择。

(3)序号2-3-4-5-6设置串口参数,如波特率115200、8位、NONE无奇偶校验等。

使用特权

评论回复
lxs0026|  楼主 | 2022-6-30 23:31 | 显示全部楼层
4、配置ADC(单次转换模式)
(1)ADC简介:
☆ADC全称 Analog-to-Digital Converter,即模拟-数字转换器,可以将连续变化的模拟信号转换为离散的数字信号,进而使用数字电路进行处理,称之为数字信号处理。

☆STM32L431xx 系列有 1 个 ADC,ADC 分辨率高达 12 位,每个 ADC 具有多达 20 个的采集通道,这些通道的 A/D 转换可以单次、连续、扫描或间断模式执行。 ADC 的结果可以左对齐或右对齐方式存储在 16 位数据寄存器中。

☆STM32L431 的 ADC 最大的转换速率为 5.33Mhz,也就是转换时间为 0.188us(12 位分辨率时),ADC 的转换时间与 AHB 总线时钟频率无关。
————————————

使用特权

评论回复
lxs0026|  楼主 | 2022-6-30 23:31 | 显示全部楼层
(2)首先选择ADC1,开启通道9
7327262bdc1e3289d3.png

使用特权

评论回复
lxs0026|  楼主 | 2022-6-30 23:32 | 显示全部楼层
(3) 进行ADC配置,这里保持默认即可。
9494762bdc1f3e6cc3.png

使用特权

评论回复
lxs0026|  楼主 | 2022-6-30 23:39 | 显示全部楼层
(4) 配置ADC的转换规则,选择channel9
7763662bdc21281142.png

使用特权

评论回复
lxs0026|  楼主 | 2022-6-30 23:41 | 显示全部楼层
5、配置项目工程参数
(1)配置时钟树,用于系统内部时钟,以及各个外设时钟等。此处选择外部8M晶振作为主时钟频率,内部最大倍频80MHz。
8019362bdc3c360825.png

使用特权

评论回复
lxs0026|  楼主 | 2022-6-30 23:42 | 显示全部楼层
(2)完成配置工程。

备注:需要注意代码生成过程中的继承关系,如图所示:需要保留开发者自己编写的代码时,请根据配置设置,不然生成代码后会删除自己编写的代码(从这个方面也可以看出开发者备份自己的代码是多么的重要。)
6989962bdc4467aa2b.png
2750362bdc4376dff0.png

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

61

主题

905

帖子

1

粉丝