- STM32cubeMX配置
RCC时钟配置
RCC时钟配置,G431嵌入式板子自带24Hz外部晶振所以选择外部晶振寄存器
注:24Hz外部时钟资源需要自己填入选择高速外部时钟HSE,选择PLLCLK将这个频率引入全局主频。
注:最后得到是80MHz
LED灯引脚配置
由此可见8个灯共阳,负极端连接锁存器,因此控制低电平给负极即可,控制时需要开启PD2(给高电平即可),如果我们要让LD1亮,需要让PD2高电平,PC8低电平,然后PD2低电平即可。
注:编程时如果不关掉PD2会导致灯异常,原因是LCD的引脚也会控制到上述引脚,所以进行操作完要注意关闭锁存器使能。
注:使用锁存器是为了和LCD引脚复用,在微小一段时间就可以对锁存器操作保存引脚的电位,可以做到不影响LCD的显示,是一个精妙的设计。
引脚分别选择输出,设置默认即可,默认推挽输出不用修改。
LCD灯引脚配置
按键引脚配置
板子采用4按键,分别使用PA0、PB0、PB1、PB2。易知按键按下接地,否则接VDD,所以在检测引脚时,应当是引脚输入低电平为按键按下。
数模转换引脚配置
板子上R37、R38旋钮式滑动变阻器,分别通过短接冒接入PB15、PB12,所以我们使用AD转换采集资源。
根据上述原理图操作打开对应引脚资源,进行如下配置:
注:选择异步时钟分频不限,图中选择2分频,其他设置默认即可。
注:打开数模转换的中断选择中断读。
输入捕获定时器引脚配置
如图所示三五振荡器生成波形,其中电阻是旋钮式滑动变阻器,可以通过改变电压改变波形,最后输出通过J9短接冒接PB4,所以我们PB4使用定时器资源,定时器使用输入捕获功能。通过上升沿下降沿判断的定时器的计数,通过计算算出占空比和频率。
以下是定时器配置,两者配置一样,图中只配一次。
注:输入捕获功能需要使用输入捕获中断回调函数,在回调函数中记录每秒上升沿数量,计算波频,所以一定要开启中断。
注:使用俩个通道,通道一的输入捕获上升沿进入中断,通道二输入捕获下降沿进入中断,所以通道二只能在上升沿与最近一次下降沿之间进行计数。所以通道二比通道一计数等于占空比。
注:通道一直接输入捕获,触发条件上升沿,通道二间接,触发条件下降沿。
板子的串口和下载线集成了,默认使用串口一PA9、PA10。使用异步时钟,要开启中断。
基础定时器配置
基础定时器TIM6,需要开启中断,为了实现系统中定时出发的功能。
注:主频80MHz分频(7999+1) 重装载(999+1)等于定时器10Hz触发中断,0.1秒触发中断。参数可修改。
RTC时钟配置
RTC时钟是单片机内部所自带时钟,即实时时间时钟,字面意思用于记录现实时间,配置如下:
以现实时间2023年4月18日23时38分星期二为例配置时钟。
注:RTC选中HSE_RTC时钟资源,配置频率750kHz所以分频(74+1)重装载(9999+1),所以当RTC重装载一次是一秒钟一次(1Hz),同时也规定秒针的单位是1秒。
Cube生成底层文件