- 博客(105)
- 收藏
- 关注
原创 入门python 介绍及变量的使用
python 是一门计算机语言常见的计算机语言:python、java、C语言。。。什么是计算机语言:就是让计算机知道你想干什么,把你的需求使用它能听懂的语言说出来中国也有一门计算机语言:易语言能认为是语言的本质上来说需要具备一个特性:流程控制流程控制:分支结构循环结构易语言现在几乎凉了,因为中国文字博大精深,一个字有很多种意思,用中文编程太难了。
2025-02-17 17:23:00
165
原创 入门python软件的安装下载
vscode是一个代码编辑器,写代码的工具,安装流程 双击软件 一直傻瓜式安装安装完成之后,第一次运行的时候,软件的英文的,会在右下角有一个提示你安装中文扩展的提示点击安装,并重新启动即可汉化vscode中需要安装插件(搜索python即可)
2025-02-17 17:18:37
230
原创 STM32 读写BKP程序与实时时钟
RCC库函数:配置LSE外部低速时钟,启动LSE时钟,需要调用这个函数配置LSI内部低速时钟,如果出现外部时钟不起振的情况,也可以使用内部时钟来进行实验RTCCLK配置,这个函数用来选择RTCCLK的时钟源启动RTCCLK,选择时钟源之后,还需要调用一下这个Cmd函数,使能一下RTC库函数:配置RTC中断进入配置模式,置CRL的CNF为1,进入配置模式退出配置模式,就是把CNF位清零获取CNT计数器的值,读取时钟靠这个函数写入CNT计数器的值,设置时间就靠这个函数。
2025-02-10 07:00:00
695
原创 STM32 BKP备份寄存器与RTC实时时钟
实时时钟RTC是一个独立的定时器,可为系统提供时钟和日历的功能RTC和时钟配置系统处于后备区域,系统复位时数据不清零,VDD2.0~3.6V)断电后可借助VBAT1.8~3.6V)供电继续走时32位的可编程计数器,可对应Unix时间戳的秒计数器20位的可编程预分频器,可适配不同频率的输入时钟可选择三种RTC时钟源:HSE时钟除以128(通常为8MHz/128LSE振荡器时钟(通常为32.768KHz)LSI振荡器时钟(40KHzRTC框图。
2025-02-10 06:30:00
381
原创 STM32 Unix时间戳
Unix 时间戳(Unix Timestamp)定义为从UTC/GMT的1970年1月1日0时0分0秒开始所经过的秒数,不考虑闰秒时间戳存储在一个秒计数器中,秒计数器为32位/64位的整型变量世界上所有时区的秒计数器相同,不同时区通过添加偏移来得到当地时间。
2025-02-09 14:25:56
829
原创 STM32 硬件SPI读写W25Q64
定义GPIO与SPI外设的结构体变量//定义结构体变量//定义GPIO结构体变量//定义SPI外设结构体变量。
2025-02-09 07:00:00
240
原创 STM32 SPI通信外设
STM32内部集成了硬件SPI收发电路,可以由硬件自动执行时钟生成、数据收发等功能,减轻CPU的负担可配置8位/16位数据帧、高位先行低位先行时钟频率:fPCLK支持多主机模型、主或从操作可精简为半双工/单工通信支持DMA兼容I2S协议STM32F103C8T6 硬件SPI资源:SPI1SPI2。
2025-02-09 06:30:00
435
原创 STM32 W25Q64芯片
W25Qxx系列是一种低成本、小型化、使用简单的非易失性存储器,常应用于数据存储、字库存储、固件程序存储等场景 存储介质:Nor Flash(闪存) 时钟频率:80MHz / 160MHz (Dual SPI) / 320MHz (Quad SPI) 存储容量(24位地址): W25Q40: 4Mbit / 512KByte W25Q80: 8Mbit / 1MByte W25Q16: 16Mb
2025-02-08 07:00:00
376
原创 STM32 SPI通信
是由Motorola公司开发的一种通用数据总线四根通信线:SCK(Serial Clock)、MOSI)、MISO)、SS同步,全双工支持总线挂载多设备(一主多从)
2025-02-08 06:30:00
321
原创 STM32 I2C外设
STM32内部集成了硬件I2C收发电路,可以由硬件自动执行时钟生成、起始终止条件生成、应答位收发、数据收发等功能,减轻CPU的负担支持多主机模型支持7位/10位地址模式支持不同的通讯速度,标准速度(高达100 kHz),快速高达400 kHz)支持DMA兼容SMBus协议STM32F103C8T6 硬件I2C资源:I2C1I2C2。
2025-02-07 14:16:21
362
原创 STM32 软件I2C读写MPU6050
软件I2C只需要用GPIO的读写函数就行,在软件I2C初始化需要把SCL和SDA都初始化为开漏输出模式,还需要把SCL和SDA置高电平功能函数配置I2C时序基本单元MPU6050配置头文件主函数
2025-02-07 12:54:13
374
原创 STM32 MPU6050芯片
MPU6050是一个6轴姿态传感器,可以测量芯片自身XYZ轴的加速度、角速度参数,通过数据融合,可进一步得到姿态角,常应用于平衡车、飞行器等需要检测自身姿态的场景3轴加速度计(Accelerometer):测量XYZ轴的加速度3轴陀螺仪传感器(Gyroscope):测量XYZ轴的角速度(9轴:3轴加速度、3轴角速度、3轴磁场强度10轴;3轴加速度、3轴角速度、3轴磁场强度、1个气压强度)
2025-02-06 22:54:20
272
原创 STM32 I2C通信协议
是由Philips公司开发的一种通用数据总线两根通信线:SCL()、SDA同步,半双工带数据应答支持总线挂载多设备(一主多从、多主多从)模块:MPU6050模块:可以进行姿态测量,使用了I2C通信协议OLED模块:可以显示字符、图片等信息,也是I2C协议AT24C02,存储器模块:51单片机学习I2C的模块,DS3231,实时时钟模块:也是使用I2C通信。
2025-02-06 21:59:45
382
原创 STM32 串口发送与接收
根据上一章发送的代码配置,在GPIO配置的基础上需要再配置PA10引脚做RX接收,引脚模式可以选择浮空输入或者上拉输入,在USART配置串口模式里加上RX模式。
2025-02-04 22:04:32
449
原创 STM32 USART发送与printf函数
这两个函数是用来配置同步时钟输出的,包括时钟是不是要输出,时钟的极性相位等参数这个可以开启USART到DMA的触发通道下面两个函数是发送数据和接收数据,这两个函数在我们发送和接收的时候会用到(这两个函数很重要)SendData就是写DR寄存器,ReceviceData就是读DR寄存器,DR寄存器有四个寄存器控制发送和接受//定义结构体变量//定义GPIO结构体变量//定义USART1结构体变量。
2025-02-04 20:58:26
2060
原创 STM32 DMA+AD多通道
在上一个函数的基础上修改几个参数,将ADC单次扫描改为连续扫描,DMA模式选择位循环模式,这种模式就不需要写功能函数了,主函数里直接可以用。需要在头函数将AD_Value extern引用一下才能在主函数里使用。将ADC触发放到最后。
2025-02-03 22:34:48
517
原创 STM32 DMA数据转运
恢复缺省设置初始化结构体初始化使能中断输出使能DMA设置当前寄存器,这个函数,就是给传输计数器写数据的DMA获取当前数据寄存器,这个函数就是返回传输计数器的值,如果想看看还剩多少数据没有转运,可以调用这个函数这四个函数是获取标志位状态、清除标志位、获取中断状态、清除中断挂起位//定义结构体变量//定义DMA结构体变量。
2025-02-01 20:38:14
789
原创 STM32 ADC模数转换器
在rcc.h里,这个函数是用来配置ADCCLK分频器的,它可以对APB2的72MHz时钟选择2、4、6、8分频,输入到ADCCLK接下来都是在adc.h里,//DeInit恢复缺省设置,恢复为上电默认状态,//初始化//结构体初始化//给ADC上电的开启DMA输出信号的,如果使用DMA转运数据,就得调用这个函数中断输出控制,用于控制某个中断,能不能通往NVIC下面四个函数分别是复位校准、获取复位校准状态,开始校准、获取开始校准状态,这就是用于控制校准的函数,在ADC初始化完成之后,以此调用。
2025-01-31 07:00:00
1350
原创 STM32 TIM编码器接口测速
定时器编码器接口配置,第一个参数选择定时器,第二个参数选择编码器模式,后面两个参数分别选择通道1和通道2的极性//定义结构体变量//定义GPIO结构体变量//定义TimeBase结构体变量//定义IC结构体变量。
2025-01-30 17:31:34
747
原创 STM32 PWMI模式测频率占空比
与上一章输入捕获代码一样,根据结构体,需要在输入捕获单元再配置一个通道。我们调用一个函数这个函数可以给结构体赋值,当我们定义了一遍结构体参数,再调用这个函数,就可以再定义一边参数并取反。通过这个函数可以快捷实现定义其他参数。
2025-01-30 07:00:00
348
原创 STM32 TIM输入捕获 测量频率
用结构体配置输入捕获单元的函数注意:输入捕获与输出比较都有4个通道,OCInit,4个通道每个通道各占一个函数,而ICInit,4个通道是共用一个函数的,在结构体里会有一个参数,来配置具体哪个通道,因为可能有交叉通道的配置,所以函数合在一起比较方便这个函数与上一个函数类似,都是用于初始化输入捕获单元的,但是上一个函数只是单一的配置一个通道,这个函数可以快速配置两个通道这个函数可以给输入捕获结构体赋一个初始值下面三个对应主从触发模式:选择输入触发源TRGI选择输出触发源TRGO选择从模式。
2025-01-29 20:00:25
1428
原创 STM32 PWM驱动直流电机
根据驱动舵机的代码来写,与舵机不同的是,这次的引脚接到了PA2上,所以需要改一下引脚以及改为OC3通道。另外还需在配置两个GPIO引脚,来控制电机的旋转方向,这里连接到了PA4与PA5引脚。
2025-01-29 10:45:28
669
原创 STM32 LED呼吸灯
用这四个函数配置输出比较模式,四个函数对应四个输出比较单元,这个函数使用结构体初始化输出比较单元的,这四个函数很重要需要掌握这个是用来输出比较结构体赋一个默认值的定义GPIO与TIM所需的结构体变量//-----------------------------定义结构体变量------------------------------//定义TIMBase结构体变量//定义TIMOC结构体变量//定义GPIO结构体变量。
2025-01-28 22:17:57
1773
原创 STM32 TIM输出比较、舵机与直流电机
PWM()脉冲宽度调制在具有惯性的系统中,可以通过对一系列脉冲的宽度进行调制,来等效地获得所需要的模拟参量,常应用于电机控速等领域PWM参数:频率= 1 / TS占空比= TON/ TS(高电平/周期)分辨率占空比变化步距PWM频率:+ 1)PWM占空比:+ 1)PWM分辨率:+ 1)舵机是一种根据输入PWM信号占空比来控制输出角度的装置输入PWM信号要求:周期为20ms,高电平宽度为。
2025-01-28 20:26:02
399
原创 STM32 TIM定时器配置
下面的函数对应着定时中断的结构//时基单元初始化//将结构体变量赋一个默认值//使能计数器//使能中断输出信号//选择内部时钟//选择ITRx其他定时器时钟//选择TIx捕获通道的时钟//选择ETR通过外部时钟模式1输入的时钟//选择ETR通过外部时钟模式2输入的时钟//单独配置ETR引脚的预分频器、极性、滤波器这些参数。
2025-01-28 13:21:43
752
原创 STM32 旋转编码器
旋转编码器:用来测量位置、速度或旋转方向的装置,当其旋转轴旋转时,其输出端可以输出与旋转速度和方向对应的方波信号,读取方波信号的频率和相位信息即可得知旋转轴的速度和方向类型:机械触点式/霍尔传感器式/光栅式。
2025-01-27 20:26:18
652
原创 STM32 对射式红外传感器配置
这次用的是STM32F103的开发板(这里面的exti.c文件没有how to use this driver 配置说明)
2025-01-27 19:28:00
1205
原创 STM32 EXTI中断配置
外部中断EXTI可以监测指定GPIO口的电平信号,当其指定的GPIO口产生电平变化时,EXTI将立即向NVIC发出中断申请,经过NVIC裁决后即可中断CPU主程序,使CPU执行EXTI对应的中断程序支持的触发方式:上升沿(低电平变为高电平触发中断)/下降沿(高电平变为低电平触发中断)/双边沿(上升沿与下降沿都可以触发中断)/软件触发(程序里执行一段代码就可以触发中断)支持的GPIO口:所有GPIO口,但相同的Pin。
2025-01-27 14:10:33
1261
原创 STM32 中断系统
中断,即CPU在正常执行程序的过程中,遇到外部(例如常见的按键中断)/内部(例如定时器中断)的紧急事件需要处理,暂时中断(中止)当前程序的执行,而转去为中断服务,待服务完毕,再返回到暂停处(断点)继续执行原来的程序。
2025-01-26 22:32:58
1041
原创 STM32 OLED屏配置
OLED():有机发光二极管OLED显示屏:性能优异的新型显示屏,具有功耗低、相应速度快、宽视角、轻薄柔韧等特点0.96寸OLED模块:小巧玲珑、占用接口少、简单易用,是电子设计中非常常见的显示屏模块供电:3~5.5V,通信协议:I2C/SPI,分辨率:128*64。
2025-01-26 15:22:55
454
原创 STM32 按键密码系统的实现
本次基于STM32F407开发板,来实现密码系统,输入四位密码,密码正确时LED1亮,密码错误时四个LED灯双闪。
2025-01-26 15:22:45
610
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人