草庐IT

CubeMX-DMA

全部标签

基于STM32CUBEMX,HAL库蓝牙通信

 蓝牙通信(实现手机与stm32连接)1.准备工作蓝牙模块HC-05模块安卓APP软件HC-05蓝牙模块支持AT指令。要进入AT指令模式,需要先按住蓝牙模块上的按键,接通电源,当模块上的LED灯进入慢闪后再松开按键,此时已经进入AT指令模式,可以进行AT指令设置1。常用的AT指令包括:AT+VERSION?返回HC-05的软件版本号AT+NAME?返回HC-05的名字AT+UART?返回蓝牙波特率AT+UART=115200,0,0设置串口波特率115200,1位停止位,无校验位AT+NAME=bluetooth修改蓝牙模块的名字为bluetoothAT+PSWD?查询配对密码AT+PSWD=

DMA Handshaking Interface学习

OverviewofHandshakingInterface握手接口是在transactionlevel使用的,只在和非内存外设进行数据传输时有该层,和内存外设进行数据交换时没有握手接口也没有transactionlevel。DMATransferHierarchyforNon-MemoryPeripheralsDMATransferHierarchyforMemoryPeripherals 握手接口分为硬件握手和软件握手,软件握手是通过内存映射的寄存器来完成的,硬件则是通过专用的握手接口来完成的。HardwareHandshakingdma_req-从外设输入的突发事务(bursttrans

基于STM32F103C8T6四路AD采集数据显示在oled屏上非DMA传输方式(附百度网盘下载链接)

本文采用四路AD采集光照强度、烟雾浓度、一氧化碳、空气质量等四个物理量,并采用中位值平均滤波(防脉冲干扰平均滤波法)算法对偶然出现的脉冲性干扰,消除由其引起的采样值偏差。ADC简介STM32F103C8T6有两个ADC,12位ADC是一种逐次逼近型模拟数字转换器。它有多达18个通道,可测量16个外部和2个内部信号源。各通道的A/D转换可以单次、连续、扫描或间断模式执行。ADC的结果可以左对齐或右对齐的方式存储在16位数据寄存器中。主要用到的ADC参数和函数voidADC1_Init(void){GPIO_InitTypeDefGPIO_InitStructure;ADC_InitTypeDef

‍☠️stm32Cubemx欠采样原理讲解与实现 采集高频信号

🏴‍☠️STM32CubemxADC+TIM+DMA欠采样采集高频信号本文主要讲解ADC借助欠采样采集高频信号,比如使用100k左右的采样率去采集1M的信号。所需工具:开发板:STM32F103RCT6STM32CubeMXIDE:Keil-MDK相关文章:STM32HALADC+TIM+DMA采集交流信号STM32cubeHALADC+TIM+DMA(二)stm32cubemxADC+TIM+DMA超频采样_STM32ADC同步采样文章目录🏴‍☠️STM32CubemxADC+TIM+DMA欠采样采集高频信号😄原理简介⚽例程1工程建立运行结果🏓例程2工程建立运行结果🥊难点🥑练习🍉后记😄原理简

stm32cubeMX库文件安装路径自定义设置-释放我的C盘空间(路径无法修改的文中有解决方法)

最近C盘空间容量不足了,于是研究如何将部分文件移除C盘。stm32cubeMX的固件包在win10和win7系统下的默认存储路径为:“C:\Users\用户名\STM32Cube\Repository”。由于,有些STM32Cube_FW固件包占用空间即很大,不可忽视。比如“stm32cube_fw_f7_v190.zip”占用573M,解压开的文件夹占用了1.73G的空间。日积月累,会相当的可观。我的这个文件夹下有8G多的内容。C盘空间比较宝贵,大文件尽可能不要放到C盘。我们把这部分临时下载文件存储到其它盘,一方面释放了C盘空间,另一方面也方便备份保存,万一哪天系统崩溃,也不会损失下载的资料

STM32+CubeMX零基础串口收发全攻略

系列文章目录第一章:初学单片机,使用STM32进行点灯文章目录系列文章目录前言一、使用到的装置和软件二、串口收发1.STM32CubeMX配置2.keil5的使用(1)阻塞式收发使用printf()进行输出发送数据(2)中断式收发总结前言本文主要是解决简单的串口通信提示:以下是本篇文章正文内容,下面案例可供参考一、使用到的装置和软件本案例主要涉及到的装置和软件有:1.一块STM32F103ZET6的开发板(也可使用其它板子)2.ST-LINKV2(有钱的也可使用J-link等)一个与杜邦线若干3.涉及到的软件有三个分别是:STM32CubeMX(用于生成文件),KeiluVision5(用于编

STM32的DMA中FIFO和突发模式理解

STM32的DMA中FIFO和突发模式理解学习stm32DMA时遇到了FIFO和突发配置的疑惑,看手册完全云里雾里,节拍是什么等等都不清楚。首先理解什么是突发,突发传输就是两个设备进行数据传输,一个设备发数据,一个设备接收数据,或者像是CPU到内存进行读取数据,肯定是每读取一个字节,读取指针就会自增一次,如果每次读一个字节,还要到程序里面执行一个指针自增指令的话,那CPU岂不是时时刻刻都在读取内存然后指针自增指令执行,那也太蠢了,CPU利用率太低了,所以出现了突发模式,我设定为CPU进行读内存,我指定一个宽度,每次读取都读这一个宽度的数据,比如为128B,每次读取,指针会自己增加,读取满了这1

STM32 HAL库 STM32CubeMX -- TIM(定时器中断)

文章目录一、定时器分类二、基本定时器功能框图时钟源计数器时钟计数器自动重装载寄存器定时时间的计算定时器的计数模式三、STM32CubeMX配置四、代码讲解附录一、定时器分类STM32F1系列中,除了一些特殊的型号,大部分F1有8个定时器,分为基本定时器,通用定时器和高级定时器。基本定时器TIM6和TIM7是一个16位的只能向上计数的定时器,只能定时,没有外部IO。通用定时器TIM2/3/4/5是一个16位的可以向上/下计数的定时器,可以定时,可以输出比较,可以输入捕捉,每个定时器有四个外部IO。高级定时器TIM1/8是一个16位的可以向上/下计数的定时器,可以定时,可以输出比较,可以输入捕捉,

STM32配置ADC2(DMA)进行采集 DAC 输出-2

0.一定要先看上一节:STM32配置ADC2(DMA)进行采集DAC输出-21.实验目标在上一节的基础上,我们把DAC(三角波)给集成进来,实现按下按键输出三角波,通过串口发送数据给电脑,分析然后画出电压的波形并且展示出来开发板:正点原子探索者STM32F407ZG2.STM32部分1.DAC部分这里我们采用实验22-2DAC输出三角波实验的例程,查看主函数找中和DAC相关的代码,发现下图红框中的函数只出现在了DAC.c中,于是我们将DAC.c添加到上一节的项目中,此时还不够,因为我们采用的是HAL库编程,还需要引入官方提供的和DAC相关的库函数才可以使用。全部添加完成后,文件结构如下图所示此

【Keil】CubeMX配置的FreeRTOS利用V6编译出错

一、问题复现当使用CubeMX生成带有FreeRTOS的工程时,由于Usedefaultcompilerversion5编译器编译时间过于漫长,我们选择使用编译速度更快的Usedefaultcompilerversion6,但是更改之后再次编译会出现很多错误。 在Target一栏的ARMCompiler:选择Usedefaultcompilerversion6; 并修改c/cpp编译方式。二、分析原因CubeMX生成的FreeRTOS的port.c、portmacro.h不支持GNU,内部有大量的内联汇编,需更换为GCC版本。三、解决办法如果直接在生成的工程里将 RVDS/ARM_CM4F内的