草庐IT

STM32WBA

全部标签

STM32使用ADC+DMA进行多通道模拟量采集 (踩坑及傻瓜式解析)

STM32使用ADC+DMA进行多通道模拟量采集(踩坑及通俗解析)​利用STM32的片上外设可采集多个模拟量(如传感器数值),并在嵌入式程序中使用。如果只使用了一个通道,用时令ADC转换而后读取DR寄存器即可。多通道时,可利用ADC+DMA可实时,有序的转存多通道数据至程序内存(数组),用时可随时访问并索引到对应通道。CubeMX配置时钟配置如下:​原先经常忽视时钟的信息,这里注意一下ADC1,2,3的时钟频率,其于ADC采样时间有关。如果时钟配置的很高,那么选择1.5Cycles可能不满足最小转换时间,产生错误不易debug。ADCs配置如下:​ADC1的独立模式工作逻辑:一个ADC外设(A

STM32CubeMX教程6 TIM 通用定时器 - 生成PWM波

1、准备材料开发板(STM32F407G-DISC1)ST-LINK/V2驱动STM32CubeMX软件(Version6.10.0)keilµVision5IDE(MDK-Arm)逻辑分析仪nanoDLA2、实验目标使用STM32CubeMX软件配置STM32F407通用定时器生成可变占空比PWM波形,并将其输出到LED灯引脚实现呼吸灯效果3、实验流程3.0、前提知识STM32F407有10个通用定时器,其中TIM2、TIM3、TIM4和TIM5有4个捕获/比较通道,TIM9、TIM12两个定时器有2个捕获/比较通道,剩下的TIM10、TIM11、TIM13和TIM14只有一个捕获/比较通道

STM32 HAL库常用GPIO函数以及外部中断配置与响应流程

Hello,大家好,这是我第一篇博客,写的不好请大家包涵指教,话不多说直接看内容:HAL库常用GPIO函数:voidHAL_GPIO_Init(GPIO_TypeDef *GPIOx,GPIO_InitTypeDef*GPIO_Init)这个函数主要用来初始化我们需要用到的引脚,设置其工作频率、工作模式、上下拉等参数。如果使用CubeMX配置工程,所有参数在Cube中调配,函数自动在工程中生成。voidHAL_GPIO_DeInit(GPIO_TypeDef *GPIOx,uint32_tGPIO_Pin)HAL_GPIO_Init能够实现对GPIO的初始化,那么HAL_GPIO_DeInit

USB -- STM32F103 USB VIDEO(视频)Camera同步传输讲解(九)

目录链接快速定位前沿  1描述符修改1.1设备描述符修改1.2配置描述符修改1.3字符串描述符修改1.4编译报错修改2增加功能函数2.1Camera功能模块介绍2.2USB复位函数修改2.3 Speaker_Data_Setup函数修改2.4非零端点函数修改2.5JEPG数据获取3运行演示链接快速定位USB--初识USB协议(一)源码下载请参考链接:USB--STM32-FS-USB-Device驱动代码简述(二)USB--STM32F103虚拟串口bulk传输讲解(三)USB--STM32F103自定义HID设备及HID上位机中断传输讲解(四)USB--STM32F103U盘(MassSto

Python与STM32F103串口通信

之前写了一篇Python与STM32F103通信的文章,但是存在一定的问题,比如说有时串口接收不到返回的数据,还有就是接收数据接收的不全,感觉有可能是读取的时候用serial.read_all()这个方法和正点原子例程中串口缓冲区的发送有矛盾,所以参考了一下其他文章,写一篇新文章记录一下。上一篇文章链接:(29条消息)使用Python与Stm32进行通信_def__init__1923的博客-CSDN博客_stm32单片机pythonhttps://blog.csdn.net/weixin_47428902/article/details/126296318?spm=1001.2014.300

HT32F52352单片机,双串口,PWM的4路输出,GPIO输入(红外模块)(可以当合泰杯比赛的程序模板,非常好用),printf使用自定义串口输出

先放出双串口的代码,很多时候我们要利用一个串口仿造写出另一个串口的时候,时而失败。我通过改了几次HT32的代码之后发现主要问题出现在宏定义这边。usart.c文件#include"usart.h"#include"ht32f5xxxx_gpio.h"/**************************实现函数********************************************函数说明:配置usart串口*******************************************************************************/voidUS

单片机设计基于STM32的车辆安全状态监测系统设计与实现

概要  摘要:在当今这个经济飞速发展的时代,机动车的拥有数量也在不断地上升,机动车数量的上升在给我们的出行带来便捷的同时,也提高了所存在的安全隐患。据不完全统计,机动车驾驶人因长时间疲劳驾驶以及饮酒驾驶所造成的道路安全交通事故约占交通事故总数的20%左右,而在出现死亡交通事故的原因中却位列第一。故对驾驶人员驾驶状态进行实时监督来有效的监督驾驶人的驾驶行为,对于降低交通安全事故及人的死亡率,保护人机动车驾驶人人身健康以及财产安全,创造稳定有序、和谐美丽社会有着十分重要的现实作用。本设计是基于STM32单片机的车辆安全驾驶状态系统设计的研制。通过STM32单片机进行数据处理,使用颜色传感器识别红绿

STM32-OTA升级-基于STM32CubeMX+STM32F103(二)代码实现

0引言在上一篇文章中,我们已经讲述了STM32的启动流程、IAP的原理和OTA的原理(最后这部分直接分享了一些博客,因为前辈们已经写的非常好了),下面这篇主要用来记录STM32-OTA的实验步骤。源码我大家自行下载即可。链接:https://pan.baidu.com/s/1uemqEqDNI3-IjulZ4oNFlw?pwd=of3g提取码:of3g参考:STM32CubeMx开发之路—在线升级OTA1实验条件1.1大家需要准备:STM32F103开发板(我是采用正点的精英版)USB-TTL转化器(查看串口数据)XShell(程序中需要用Ymodem协议进行传输)1.2程序叙述:我们需要编写

Keil新建STM32软件工程 - (详细步骤图文)

文章目录1.前言2.下载芯片对应的Keil开发包3.下载芯片对应的标准外设库-STM32F10x_StdPeriph_Lib_Vx.x.x4.新建工程文件夹-Demo34.1移植标准外设库4.2启动文件介绍及如何选择5.新建软件工程-Demo5.1打开Keil→Project→NewuVisionProject5.2选择芯片型号5.3添加文件-ManageProjectitems5.4配置工程-Configuretargetoptions6.编译检查-Rebuild7.总结1.前言芯片型号:STM32F103VCT6软件:Keil52.下载芯片对应的Keil开发包详细步骤及下载链接参考以下说明

错误:PermissionError: [WinError 32] 另一个程序正在使用此文件,进程无法访问。“+文件路径“的解决方案

最近在使用python进行筛选图片的时候,想到用python里面的os库进行图片的删除。具体筛选方法就是,删除掉图片长度或宽度小于100像素的图片,示例代码如下所示:forfileinos.listdir(img_path):iffile.split('.')[-1]=='jpg':img=Image.open(os.path.join(img_path,file))#img.close() bug修改代码size=list(img.size)ifsize[0]>100orsize[1]>100:passelse:os.remove(os.path.join(img_path,file))pr