STM32
文章平均质量分 66
STM32G431各模块学习记录
lzya.
taghepig
展开
-
STM32G431——按键的三行代码(长按、短按、单击、双击)
按键的三行代码(长按、短按、单击、双击)按键的三行代码按键的长按、短按按键的单击、双击按键的三行代码key_value = KEY_Scan(); //读取按键的键值key_up = key_value & (key_old ^ key_value); //按键的上升沿检测 只在按键抬起的瞬间有效 其他时刻都为零无效key_down = ~key_value & (key_old ^ key_value); //按键的下降沿检测 只在按键按下的瞬间有效 其他时刻都为零无效key_o原创 2022-02-15 15:33:21 · 6541 阅读 · 15 评论 -
蓝桥杯STM32G431——RTC实时时钟
STM32的实时时钟(RTC)是一个独立的定时器。STM32的RTC模块拥有一组连续计数的计数器,在相应软件配置下,可提供时钟日历的功能。修改计数器的值可以重新设置系统当前的时间和日期。原创 2022-02-03 16:18:42 · 3460 阅读 · 4 评论 -
蓝桥杯STM32G431——PWM输出模式生成两路占空比不同的PWM波
PWM(脉冲宽度调制)模式可以产生一个由TIMx_ARR寄存器确定频率(周期)、由TIMx_CCRx寄存器确定占空比的PWM信号。STM32的PWM模式有两种,根据TIMx_CCMRx寄存器中的oCxM位来确定。其区别如下:110:PWM模式1,在递增计数时,TIMx_CNT<TIMx_CCRx时oCxREF为有效电平,否则为无效电平;在递减计数时,TIMx_CNT>TIMx_CCRx时OCxREF为无效电平,否则为有效电平。111:PWM模式2,在递增计数时,TIMx_CNT<TIMx_CCRx时原创 2022-02-02 14:33:35 · 4110 阅读 · 3 评论 -
蓝桥杯STM32G431——输出比较模式下两路频率不等方波的输出
使用一个定时器两通道输出两路频率不等方波输出比较模式输出比较模式原创 2022-02-02 13:30:42 · 3189 阅读 · 4 评论 -
蓝桥杯STM32G431——PWM输入模式测量两路PWM频率和占空比
PWM输入模式测量两路PWM和占空比测量PWM频率和占空比的时序图与步骤CubeMX的基础配置测量PWM频率和占空比的步骤:1.PWM信号由TI1进入,配置T11FP1为触发信号,上升沿捕获。2当上升沿的时候Ic1和ic2同时捕获,计数器CNT清零。3.到了下降沿的时候,IC2捕获,此时计数器CNT的值被锁存到捕获寄存器CCR2中。4.到了下一个上升沿的时候,lC1捕获,计数器CNT的值被锁存到捕获寄存器CCR1中。5.其中CCR2测量的是脉宽,CCR1测量的是原创 2022-01-30 20:54:13 · 3641 阅读 · 4 评论 -
蓝桥杯STM32G431——普通输入捕获模式测量PWM频率
蓝桥杯STM32G431——输入捕获的原理普通输入捕获模式测量PWM输出频率原创 2022-01-29 20:49:46 · 6152 阅读 · 8 评论 -
蓝桥杯STM32G431——定时器编程常用结构体
定时器基本初始化结构体Prescaler:定时器预分频设置,时钟源经过该分频器才是定时器时钟,它设定TIMx_Psc寄存器的值。可设置值范围为0~65535,实现1至65536分频(实际分频系数=TIMx_PSC+1),假设设置Prescaler=167,这样分频后的时钟是168MHz/ ( 167+1) =1MHz。CouterMode:定时器计数方式,基本定时器只能向上计数,即TIMx_CNT只能从0开始递增。默认配置就是向上计数模式。高级还有向下,中心对齐模式1/2/3(中断产生位置不一样)原创 2022-01-29 17:06:58 · 1814 阅读 · 0 评论 -
蓝桥杯STM32G431学习记录9——基本定时器CubeMX配置及使用
蓝桥杯STM32G431基本定时器CubeMX配置及使用定时器模块知识原创 2022-01-28 17:06:56 · 3635 阅读 · 0 评论 -
蓝桥杯STM32G431学习记录8——ADC的CubeMX配置及使用
ADC的CubeMX配置及使用一级目录ADC1和ADC2的CubeMX主要配置adc.c文件adc.h文件main.c文件一级目录模拟输入原理图:PB12对应ADC1,PB15对应ADC2ADC1和ADC2对应各引脚的输入通道ADC1和ADC2的CubeMX主要配置1、ADC1对应原理图引脚PB122、ADC1基本配置3、ADC2配置与ADC1相同4、配置时钟树5、依次完成Project Manager中需要勾选的配置后点击generate code生成初始化代码adc原创 2022-01-27 15:54:11 · 4800 阅读 · 5 评论 -
蓝桥杯STM32G431学习记录7——24C02的读/写与MCP4017可编程电阻
124C02的读/写写操作时序图写操作代码读操作时序图读操作代码24C02的读/写写操作时序图写操作代码在i2c.c文件中编写void i2c_24c02_write(unsigned char *pucBuf , unsigned char ucAddr , unsigned char ucNum){ I2CStart(); //开始 I2CSendByte(0xa0); //器件地址为写地址操作 24C02的芯片地址为1010 (A2 A1 A0)(R=1,W=0)0xA0为写原创 2022-01-26 00:18:39 · 2080 阅读 · 1 评论 -
蓝桥杯STM32G431学习记录6——IIC基本原理
标题原创 2022-01-25 14:47:46 · 6267 阅读 · 0 评论 -
蓝桥杯STM32G431学习记录5——USART串口通信
串口原理图及复用引脚图通过CubeMX配置相应的串口初始化代码串口发送串口发送步骤usart.c文件usart.hmain.c串口接收串口接收步骤串口中断相应配置`main.c文件串口编程步骤原创 2022-01-24 19:44:52 · 3851 阅读 · 3 评论 -
蓝桥杯STM32G431学习记录4——LCD的使用
LCD的配置根据比赛提供的赛场资源数据包(G431)中的LCD_Test例程原创 2022-01-23 17:45:44 · 1929 阅读 · 1 评论 -
蓝桥杯STM32G431学习记录3——KEY的CubeMX配置及使用
基于CubeMX生成的初始化代码配置KEY的模块化原创 2022-01-23 13:44:56 · 1373 阅读 · 1 评论 -
蓝桥杯STM32G431学习记录2——LED的CubeMX配置及使用
STM32G432基于CubeMX的LED模块化的配置STM32G432基于CubeMX的LED模块化的配置建立led.c文件建立led.h文件main.c编写主函数STM32G432基于CubeMX的LED模块化的配置首先利用CubeMX生成LED的初始化代码,网上有很多配置教程很容易便能配置完成通过CubeMX生成初始化代码后,自己再建立一个属于自己配置的初始化环境(需要有时钟的初始化)建立led.c文件将创建的.c文件加入到工程中#include "led.h"void LED_Ini原创 2022-01-23 13:11:25 · 2277 阅读 · 1 评论 -
蓝桥杯STM32G431学习记录1——STM32G431RBT6芯片内部结构
学习目标:掌握STM32芯片的内部结构基于STM32G431开发板的芯片内部结构图在宏观上更深层次的了解底层的各模块之间的联系及学会编程思想学习内容:STM32G431RBT6方框图原创 2022-01-21 15:17:28 · 2387 阅读 · 0 评论