自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(26)
  • 问答 (2)
  • 收藏
  • 关注

原创 AD单通道/模拟看门狗

【代码】AD单通道/多通道。

2024-05-04 21:34:26 365

原创 ADC模数转换器

ADC:模拟-数字转换,将引脚上的连续变化的模拟电压转化为内存中储存的数字变量,建立起模拟电路到数字电路的桥梁(DAC与之相反)12位逐次逼近型ADC,1us转换时间(表示范围0~2^12-1=4095,位数越高量化结果越精细,对应分辨率越高;转换时间表示从转化开始到结束,需要1us的时间,对应AD转换的频率就是1MHz,这是STM32 ADC的最高转换频率)输入电压范围:0~3.3V,转换结果范围:0~4095(电压和转换结果之间成正比)

2024-05-04 17:06:35 878

原创 stm32f10x_tim.h部分函数含义解释

TIM函数具有特别多的函数,在学习完TIM之后,总结一下函数含义

2024-04-14 19:32:05 223

原创 TIM编码器接口测速

(3)配置输入捕获IC_Init(注意在输入捕获结构体配置中,我们无需全部配置,因为我们只用到了输入滤波器和边沿检测器;我们可以将无用部分删除,但为了避免出错,在进行结构体赋值时用TIM_ICStructInit(&TIM_ICInitStructure);在这里,我们并不会使用72M内部时钟和在时基单元初始化设置的计数方向,因为此时计数时钟和计数方向都处于编码器接口托管的状态,计数器的自增和自减手编码器控制。(2)配置GPIO和时基单元(时基单元中PSC赋值为0,不分频;

2024-04-13 22:04:37 1034

原创 输入捕获测量PWM频率和占空比

TI1FP2在选择下降沿触发,选择交叉连接进入通道2,下降沿触发时CCR2的值即为一个周期电平中高电平的计数值,用CCR2/CCR1即可得到占空比(根据左上分析得出计算模式)而我们显示的是TIM3测量出的结果,通过测量结果与我们自行输出的方波对比检验测量是否精准。将波形输入从PA0口,输出到PA6口(具体IO口可查引脚定义表)主函数这里改变的是TIM2口产生的方波的CCR值和PSC值。此时结果应为 Freq:00100Hz。此时结果应为 Freq:01000Hz。,输入到TIM3的CH1接口处。

2024-04-13 19:38:47 434

原创 关于keil软件中手动添加.c和.h文件,.h文件不显示的方法

2.未正确链接到源文件: 确保头文件在源文件中正确引用。在源文件中使用 #include 指令来包含头文件,例如:#include "your_header_file.h"。如果头文件路径不正确或者文件名拼写错误,头文件可能不会显示在源文件下面。1.未添加到项目中: 确保头文件已经添加到了你的项目中。在Keil中,你可以在项目资源管理器中看到项目的文件结构。如果头文件没有出现在其中,你需要将其添加到项目中。在Keil中创建的头文件(.h 文件)通常应该显示在与其相关联的源文件(.c 文件)下面。

2024-04-11 22:01:12 5332 1

原创 输入捕获测量PWM频率

将波形输入从PA0口,输出到PA6口(具体IO口可查引脚定义表)利用TIM2的CH1产生PWM波,输入到TIM3的CH1接口处。所以本实验中将PA0连接到PA6。PSC扩大10倍,频率降低10倍。更改main.c中相关值。

2024-04-11 21:42:23 224

原创 PWM控制舵机角度

通过输出周期为20ms,占空比分别为2.5,5,7.5,10,12.5的方波信号,来控制舵机角度。

2024-04-10 19:06:44 934

原创 TIM输入捕获IC(Inpute Capture)

输入捕获模式下,当通道输入引脚出现指定电平跳变,当前CNT的值将被锁存到CCR中,可用于测量PWM波形的频率、占空比、脉冲间隔、电平持续时间等参数高级定时器和通用定时器都拥有4个输入捕获通道,每个定时器输入捕获或者输出比较只能选其一可配合PWMI模式,同一个引脚方波进入两个不同的通道,同时测量频率和占空比可配合主从触发模式,实现硬件全自动测量。

2024-04-10 18:21:55 1849

原创 PWM驱动LED呼吸灯

通过改变占空比来改变LED灯的明亮程度,来实现呼吸效果。

2024-04-09 22:01:53 229

原创 TIM输出比较

PWM(Pluse Width Modulation)脉冲宽度调制在具有惯性的系统中,可以通过对一系列脉冲的宽度进行调制,来等效地获得所需要的模拟量,常用于电机控速等领域,这里特殊说明,必须是具有惯性的系统PWM参数:频率 = 1/Ts 占空比 = Ton/Ts 分辨率 = 占空比变化步距占空比决定了PWM等效出来的模拟电压的大小,并且呈现线性。若高电平为5V,低电平0V,50%占空比模拟电压为2.5V。

2024-04-09 21:41:59 899

原创 定时器外部时钟计数实验展示

2024-04-02 22:00:27 125

原创 定时器外部时钟计数

● 内部时钟(CK_INT)● 外部时钟模式1:外部输入脚(TIx)● 外部时钟模式2:外部触发输入(ETR)● 内部触发输入(ITRx):使用一个定时器作为另一个定时器的预分频器(常用来做级联操作)我们选择通用定时器TIM2,查表得知该定时器的ETR接口默认为PA0引脚。

2024-04-02 21:58:47 325

原创 中断应用,旋转编码器计次

本程序中中断检测为上升沿触发,所以当A相为上升沿时,B相为高电平,编码器为左转。当B相为上升沿时,A相为高电平,编码器为右转。通过AB两项输出两个方波,根据他们的偏移规律来判断旋转编码器的正转和反转。该函数不能随意取名,要遵循官方命名规则,函数名称在启动文件中查找。

2024-04-01 21:45:43 245

原创 360度旋转编码器

2024-04-01 20:42:04 139

原创 STM32F103C8T6的外部触发定时器(ETR)引脚

资源:TIM1、TIM2、TIM3、TIM4。STM32F103C8T6有四个定时器。为什么只有TIM2有ETR引脚?

2023-12-02 21:01:24 535

原创 STM32F103C8T6-定时器定时中断

定时器定时中断,STM32F103C8T6,OLED

2023-12-02 20:52:16 1389

原创 STM32F103C8T6引脚图及引脚功能说明

2023-12-01 21:38:37 3434

原创 STM32定时器(一):定时器中断、定时器外部时钟

高级定时器(TIM1、TIM8);APB2总线;除通用功能外,额外拥有重复计数器、死区生成、互补输出、刹车输入等通用定时器(TIM2、3、4、5);APB1总线;除基本功能外,额外具有内外时钟源选择、输入捕获、输出比较、编码器接口、主从触发模式等基本定时器(TIM6、TIM7);APB1总线;定时中断、主模式触发DAC功能STM32F103C8T6定时器资源:TIM1、TIM2、TIM3、TIM4。

2023-12-01 21:10:36 1054

原创 外部中断实验-对射式传感器OLED 屏幕计数

EXTI可以检测指定的GPIO口的电平信号,当其指定的GPIO口产生电平变化时,EXTI将立刻向NVIC发出中断申请,经过NVIC判断后可中断CPU主程序,使CPU执行EXTI对应的中断程序。//调用清除EXTI配置,恢复上电前状态//初始化EXTI函数,使用方法类似GPIO_Init//传递结构体地址//软件触发外部中断//获取指定标志位是否置1//对置1的标志位清除//获取中断标志位是否置1//清除中断挂起标志位//中断分组//根据结构体里面的指定参数初始化NVIC//设置中断向量表。

2023-11-16 18:28:04 68

原创 GPIO输入输出实验:振动传感器控制led点亮

这里注意,我们在初始化端口后,端口默认为低电平,二极管点亮。设置端口为高电平,二极管熄灭。STM32F103C8T6,SW-1801P振动传感器,发光二极管。发光二极管正极接电源,负极接IO口,低电平点亮。3.1 LED.c代码。3.2 振动传感器代码。3.3 main函数。

2023-10-25 15:41:23 140

原创 常见的单片机外设,继电器,振动传感器

所以GPIO输入模式选择GPIO_MODE_IPD 下拉输入。2. 浮空输入(GPIO_Mode_IN_FLOATING )7. 复用开漏输出 ( GPIO_Mode_AF_OD )8. 复用推挽输出( GPIO_Mode_AF_PP )5. 开漏输出( GPIO_Mode_Out_OD )6. 推挽输出( GPIO_Mode_Out_PP )4. 下拉输入(GPIO_Mode_IPD )1. 模拟输入(GPIO_Mode_AIN)3. 上拉输入(GPIO_Mode_IPU)

2023-09-04 20:48:13 164

原创 stm32单片机库模板的建立和简单的固件库程序编写

另外再添加新的.c和.h文件时,先添加.c然后在第一行#include"xxx.h",之后进行编译,.h会自动归类到.c文件下,之后在.c和.h文件里添加#include"stm32f103.h"包含。其中,CMSIS文件里复制粘贴拷贝之前STM32F10x_StdPeriph_Lib_V3.5.0文件下,STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x中的和。在当前文件夹下,新建立这四个文件夹。

2023-09-03 21:48:56 248

原创 简单的算法数据处理

用代码实现简易的数学公式的计算

2023-08-28 17:19:35 220

原创 c语言学习日记:输出数组反序存放问题,新人学习数组常见的错误

2.其他数组数据量地址想赋值给指针变量必须加取地址符&;1.数组名为数组首地址,可以直接赋值给指针变量;结果输出验证,无问题。

2023-06-26 12:04:20 208

原创 c语言学习日记:输出九九乘法表

一个有意思的for循环小练习,输出完整的九九乘法表。这样就可以输出九九乘法表啦!

2023-04-17 21:07:04 74 1

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除