
STM32学习之路
文章平均质量分 64
西瓜籽@
“屏蔽力”是一个人最顶级的能力。任何消耗你的人和事,多看一眼都是你的不对。
展开
-
STM32———高级定时器的死区时间计算方法
STM32的高级定时器的死区时间计算过程和方法举例原创 2022-08-19 11:04:36 · 8929 阅读 · 1 评论 -
STM32——HAL库函数版——AD7656驱动程序
STM32驱动AD7656程序AD7656程序源码我采用的是 并行接口 进行AD7656模块与STM32L431RCT6进行通信一、AD7656特性:1.6个独立ADC2.真双极性模拟输入3.引脚/软件可选范围:+/-10V、+/-5V4.高吞吐速率:250KSPS5.低功耗:140mW(250KSPS,5V电源)6.高速并行、串行和菊花链接口模式7.高速串行接口:SPI 、QSPI、 MICROWIRE、 DSP兼容8.待机模式:最大315uW9.64引脚LQFP封装10.内置6原创 2021-08-16 16:12:54 · 2603 阅读 · 0 评论 -
STM32——库函数版——ADXL345驱动程序
加速度传感器ADXL345驱动程序完整工程链接:1.ADXL345简介ADXL345是ADI公司推出的基于iMEMS技术的3轴、数字输出加速度传感器。特点:1.分辨率高:最高13位分辨率。2.量程可变:具有+/-2g、+/-4g、+/-8g、+/-16g可变的测量范围。3.灵敏度高:最高达3.9mg/LSB,能测量不到1.0的倾斜角度变化。4.功耗低:40~145uA的超低功耗,待机模式只有0.1uA。5.支持标准的I2C或SPI数字接口,自带32级FIFO存储,并且内部有多种运动状态检测原创 2021-07-08 10:09:13 · 7466 阅读 · 10 评论 -
STM32——整形变量转换为字符变量并通过串口发送出去
STM32——整形变量转换为字符变量并通过串口发送出去串口发送函数:/*************************************************函数:USART1_TX_Byte功能:串口发送一个字节入口:一个字节*************************************************/void USART1_TX_Byte(unsigned char data){ USART1->TDR = data; while((USART1原创 2021-06-23 09:47:09 · 4150 阅读 · 0 评论 -
STM32——HAL版——串口发送字符串函数
STM32——HAL版——串口发送字符串函数1.串口发送一个字节数据/*************************************************函数:USART1_TX_Byte功能:串口发送一个字节入口:一个字节*************************************************/void USART1_TX_Byte(unsigned char data){ USART1->TDR = data; while((USART1原创 2021-06-23 09:35:15 · 6387 阅读 · 5 评论 -
STM32——HAL版——定时器ms和us延时函数
定时器做ms和us延时函数本文用的是STM32L461RCT6芯片定时器TIM2和TIM6挂载在APB1总线上原创 2021-06-17 17:50:39 · 7091 阅读 · 7 评论 -
STM32——库函数版——12864点阵显示屏驱动
12864点阵显示屏驱动我用的主控是STM32F103ZET6程序里面有两种发法:一个是并行发送数据,另一个是串行发送数据完整工程链接:12864完整驱动工程12864学习资料和取模软件链接:12864学习资料和取模软件引脚连接看led12864.h里面的设置程序运行效果图:1.并行发送数据效果图2.串行发送数据效果图程序如下:main.c#include "sys.h"#include "delay.h"#include "led12864.h"/*2020.11.20*原创 2021-05-21 16:05:34 · 8151 阅读 · 33 评论 -
STM32——库函数版——超声波测距模块(HC-SR04)
HC-SR04 超声波测距模块超声波测距原理及方法一方法二方法三:在向Trig控制端发送触发信号后,一直等待到Echo引脚的响应后(变为高电平)并打开定时器计数直到Echo引脚变为低电平,关闭定时器,记录下计时时间,通过公式进行计算具体的距离。程序:定时器初始化tim.c#include "tim.h"#include "delay.h"#include "Printf.h"/*2020.11.16*///通用定时器 3 初始化void TIM3_Int_Init(u16 a原创 2020-12-15 15:55:22 · 3085 阅读 · 20 评论 -
STM32通过定时器捕获的方法驱动(HC-SR04)超声波测距模块
HC-SR04 超声波测距模块超声波测距原理及方法一方法二:在向Trig控制端发送触发信号后,通过定时器的输入捕获引脚抓取到Echo引脚上升沿,开启定时器计时直到Echo变为低电平,关闭定时器记录下计时时间,通过公式计算具体的距离。程序:定时器初始化:tim.c#include "tim.h"#include "delay.h"#include "Printf.h"/*2020.11.16*///通用定时器 5 初始化void TIM5_Int_Init(u16 arr,u16原创 2020-12-15 15:36:45 · 3951 阅读 · 12 评论 -
STM32——库函数版——超声波测距模块
HC-SR04 超声波测距模块一、基本工作原理1.主控板先向Trig控制端输入至少10us的高电平触发信号,2.该模块内部将发送出8个40KHz的方波并检测回波信号,3.一旦检测到有回波信号则Echo接收端输出高电平回响信号,高电平的持续时间就是超声波从发射到返回的时间。(回响信号的脉冲宽度与所测的距离成正比)4.公式:距离=高电平时间*声速(340M/S)/2二、HC-SR04图片三、驱动原理及程序方法一:在向Trig控制端发送触发信号后,等待Echo引脚响应后(上升沿或者下降沿)触发原创 2020-12-15 15:29:14 · 3753 阅读 · 0 评论 -
STM32——库函数版——RGB8x8全彩点阵程序
RGB全彩点阵模块程序先显示一下效果程序实现亮红,蓝,绿,紫,白,青,黄,七种颜色的爱心一下是展示四种颜色RGB全彩点阵模块原理图如下:RGB8x8点阵显示原理每一个灯都相当于一个独立的点,通过行列进行控制灯的位置,从而让灯进行亮色,通过595移位寄存器进行控制要亮的灯(74HC595是串入并出带有锁存功能移位寄存器.)。根据手册可知:1.数据在 SCK 的上升沿输入,在 RCK 的上升沿进入的存储寄存器中去。2.SER是一个串行移位输入寄存器。3.存储寄存器有一个并行 8 位的,原创 2020-11-29 20:00:44 · 5095 阅读 · 3 评论 -
STM32——库函数版——矩阵按键程序
矩阵按键程序在我的盘子上是按下是0,不按是1矩阵按键扫描原理:先是把列置0,行是输入上拉,扫描行得到行的键值;再是把行置0,列是输入上拉,扫描列得到列的键值;最后把行列的键值相加得到最后的总的键值。行扫描返回的键值为:0xe0,0xd0,0xb0,0x70列扫描返回的键值为:0x0e,0x0d,0x0b,0x07总的键值为:0xee,0xed,0xeb,0xe7,0xde,0xdd,0...原创 2020-04-18 21:30:44 · 3660 阅读 · 2 评论 -
STM32——库函数版——独立按键程序
独立按键程序4 个按键:KEY0、KEY1、KEY2、和 KEY3KEY0、KEY1 和 KEY2 ,KEY3是低电平有效的,在我的板子上main.c#include "sys.h"#include "delay.h"#include "key.h"int main(void){ RCC_SYSCLKConfig(RCC_SYSCLKSource_PLLCLK); //系统时...原创 2020-03-28 16:11:47 · 2751 阅读 · 0 评论 -
STM32——库函数版——数码管流动显示程序
数码管流动显示我是用遍历两个数组让数码管流动显示数字main.c#include "sys.h"#include "delay.h"#include "num.h"int main(void){ RCC_SYSCLKConfig(RCC_SYSCLKSource_PLLCLK); //系统时钟设置PLL作为系统时钟 delay_init(); //初始化延时函数 NU...原创 2020-03-28 15:37:22 · 3324 阅读 · 11 评论 -
STM32——库函数版——数码管动态显示程序
数码管动态显示四位共阳极数码管,段码给0显示main.c#include "sys.h"#include "delay.h"//#include "led.h"#include "num.h"int main(void){ RCC_SYSCLKConfig(RCC_SYSCLKSource_PLLCLK); //系统时钟设置PLL作为系统时钟 delay_init(); ...原创 2020-03-28 15:26:41 · 13926 阅读 · 5 评论 -
STM32——库函数版——数码管静态显示程序
数码管静态显示程序我的是四位的数码管,共阳极一个数码管有八段:A,B,C,D,E,F ,G,H,DP,即由八个发光二极管组成由0到f编码为:0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8emain.c#include "sys.h"#include "delay.h"#in...原创 2020-03-28 15:15:43 · 5027 阅读 · 0 评论 -
STM32——库函数版——交叉闪烁灯程序
交叉闪烁灯程序我用的stm32f103ZET6芯片led给0亮main.c*#include "sys.h"#include "delay.h"#include "led.h"int main(void){ RCC_SYSCLKConfig(RCC_SYSCLKSource_PLLCLK); //系统时钟设置PLL作为系统时钟 delay_init(); //初始化延时...原创 2020-03-28 14:48:00 · 1571 阅读 · 0 评论 -
STM32——库函数流水灯程序
库函数版流水灯程序我用的stm32f103ZET6芯片led给0亮先在新建好的项目文件夹SYSTE里建一个led文件夹用于存放led.c和led.h如:接下来直接看代码吧!main.c#include "sys.h"#include "delay.h"#include "led.h"int main(void){ RCC_SYSCLKConfig(RCC_SYSCLK...原创 2020-03-28 14:37:11 · 3024 阅读 · 3 评论 -
Stm32——keil5项目创建步骤
keil5项目创建步骤我创建项目的步骤是(1)先在电脑里创建一个文件夹用于存储项目,建立的工程都可以放在这个文件夹下面,这里我们建立一个文件夹为 project_testproject_test为项目大文件夹里面包含五个小文件夹先把这些文件夹准备好如:(2)点击 MDK 的菜单:Project –>New Uvision Project ,然后将目录定位到刚才建立的文件夹pro...原创 2020-03-27 20:09:23 · 23672 阅读 · 6 评论