STM

01-了解STM32以及ARM

[toc] ### 一. ARM概念 >1.ARM全称Acorn RISC Machine (英国Acorn公司精简指令集机器). ARM处理器本身是32位设计, 但也配备16位指令集, 一般来讲比等价32位代码节省35%, 却能保留32位系统的所有优势. >2.Acorn公司在英国, 它本身并不生 ......
STM ARM 01 32

STM32 对编码器读数进行线性化处理

使用 STM32 的标准库和 HAL 库的函数读取编码器的数值,如果车轮向前转,编码器的数值从 1 往上增加,如果车轮向后转,则编码器的数值从 65535 往下减小,原因是定时器用于存储计数值的寄存器 TIMx_CNT 是一个 16 位的寄存器,可以正向或者反向计数,当 TIMx_CNT 从 0 开 ......
读数 编码器 线性 编码 STM

stm32 HAL UART DMA 发送

MCU STM32H743IIT6 const uint8_t TEXT_TO_SEND[]={"ALIENTEK Apollo STM32H7 DMA "}; const uint8_t TEXT_TO_SEND2[]={"hello world!"}; extern UART_HandleTyp ......
UART stm HAL DMA 32

STM32标准库实现Flash存储和读取

在STM32F103C8T6微控制器上使用标准库实现Flash存储和读取数据可以通过以下步骤完成: 首先,确保你已经配置好了STM32F103C8T6的Flash存储器。默认情况下,Flash存储器已经被分成了两个扇区,一个用于存放程序代码(Main Flash Memory),另一个用于存放数据( ......
标准 Flash STM 32

STM32 USB读写U盘

##一、 OTG是On-The-Go的缩写,是近年发展起来的技术。2001年12月18日由USB标准化组织公布,主要应用于不同的设备或移动设备间的联接,进行数据交换。 ##二、 是根据正点原子> USB章节移植 1.USB驱动文件 项目新建文件夹USB_Lib,把STM32_USB-Host-Dev ......
STM USB 32

stm32 f103c8 clion 引入标砖库 CMakeLists.txt

#### 使用 Clion IDE 开发 stm32 使用标准库 可以使用 qemu 代替开发版 ### 使用 CMakeLists.txt 编译项目 ``` set(CMAKE_SYSTEM_NAME Generic) set(CMAKE_SYSTEM_VERSION 1) cmake_minim ......
CMakeLists f103c8 clion 103c f103

基于CUBEMX的STM32F4 Hal库,配置LVGL(无操作系统版)

######本篇文章移植思路适用于所有嵌入式MCU,包括Arm,STM32,NXP,乐鑫,Nuvoton,Arduino,RT-Thread,Zephyr,NuttX,Adafruit等等。 #为什么要写这一篇移植教程? 也许你会说各种开源论坛上面上,已经有很多移植教程了,为什么还要再重新写一篇? ......
CUBEMX 系统 LVGL 32F STM

一文搞明白STM32芯片存储结构

一、前言 本篇介绍STM32芯片的存储结构,ARM公司负责提供设计内核,而其他外设则为芯片商设计并使用,ARM收取其专利费用而不参与其他经济活动,半导体芯片厂商拿到内核授权后,根据产品需求,添加各类组件,生产芯片售卖。图1为STM32的组成示意图,其中Cortex-M3内核、调试系统都是ARM公司设 ......
芯片 结构 STM 32

H7-TOOL的高速DAPLINK用于新版STM32CubeIDE V1.13及其以上版本的超简单实现方法(2023-08-08)

之前分享了一个方法,太繁琐了,H7-TOOL群的群友提供了一个方法,实现非常简单。 1、使用STM32CubeMX或者自己创建一个STM32CubeIDE工程后,设置这两个地方即可: 配置调试器,设置完毕记得点击右下角的Apply 2、然后修改这个cfg文件,F407IGT Debug.cfg,注意 ......
H7-TOOL DAPLINK CubeIDE 版本 高速

STM32CUBEIDE SD卡+FATFS正点原子战舰开发板

配置SD卡 配置SD卡时候注意四线通讯还是一线通讯 正点原子战舰选四线会卡死所以选一线 频率要在0到25Mhz之间 /* USER CODE BEGIN Header */ /** *********************************************************** ......
战舰 原子 CUBEIDE FATFS STM

STM32F030C8T6 SPI 通讯问题排查分析

# 配置及问题列举 1. STM32F030C8T6:48M系统时钟配置; 2. SPI1:驱动LCD,半工主机通讯,极性为高、边沿为2,时钟分频系数16分频; 3. SPI2:驱动TDC-GP21,全工主机通讯,极性为低、边沿为2,时钟分频系数4分频; 1. LCD驱动为上升沿,改为{极性为低、边 ......
通讯 问题 030C F030 STM

STM32中SWD下载不进去的解决方法

这是一个电阻引发的3天抢救单片机的故事,以后我会分享自己的学习历程和经验,以及踩的坑,本人虽是机械专业,但方向是嵌入式,目前也会点PCB,以后分享的也是这三个方面的问题。希望喜欢的小伙伴继续支持,让我们在学习的道路上一起加油。 ......
方法 STM SWD 32

stm32

一、外部中断 只要我们使用到外部中断,就必须打开 SYSCFG 时钟。 第一个函数是判断某个中断线上的中断是否发生(标志位是否置位): ITStatus EXTI_GetITStatus(uint32_t EXTI_Line); 这个函数一般使用在中断服务函数的开头判断中断是否发生。另一个函数是清除 ......
stm 32

STM32学习笔记

[TOC] ## 时钟配置 * 时钟树 ![](https://img2023.cnblogs.com/blog/1510438/202308/1510438-20230804122048916-324872017.png) * 系统时钟倍频到168MHz ```C void SystemClock ......
笔记 STM 32

STM32笔记

# STM32笔记 ## SWD连接开发板 ### 什么是SWD SWD与JTAG同属调试接口,是芯片在设计之初就预制的对芯片进行开发调试并在开发板上预留的接口, ### JTAG接口 目前开发板上的接口大多是20PIN的,与此对应的关系如下: ![JTAP20PIN.png](../笔记/IMG/ ......
笔记 STM 32

stm32串口USART 硬件流控(转载)

尊重原创,分享学习,内容来源:stm32串口USART 硬件流控 --学习笔记 - 国产零零柒 - 博客园 (cnblogs.com) 流控的概念源于 RS232 这个标准,在 RS232 标准里面包含了串口、流控的定义。大家一定了解,RS232 中的“RS”是Recommend Standard ......
串口 硬件 USART stm 32

STM32采用主从计时器实现精确脉冲输出

首先按前面所述的主从计时器要求配置好主从计时器,这是最基本的要求。主计时器负责设置脉冲输出的频率以及输出脉冲,从计数器所控制输出的脉冲数。具体过程是这样的,主进程启动主从计时器,从计时器通过主计时器输出的触发信号开始脉冲计数,当达到指定的计数值后,产生中断停止主计时器输出,直到主进程再次开启这一过程 ......
主从 计时器 脉冲 STM 32

stm32CubeIDE 串口UART+DMA+空闲中断接收不定长数据

一、概述 串口使用时,有时候会有接收不定长数据的需求,这时候用DMA+空闲中断的方式是最好的方法。 二、cubeide的配置 串口按照需求配置后,添加一个串口接收的DMA,如下图 三、代码编写部分 1、在 串口init函数 MX_UART4_Init(void)的末尾用户代码区域添加使能空闲中断和d ......
串口 空闲 CubeIDE 数据 UART

STM32案例学习 GY-39环境监测传感器模块

# STM32案例学习 GY-39环境监测传感器模块 ## 硬件平台 1. 野火STM32F1系列开发板 2. 正点STM32F1系列开发板 3. STM32F103ZET6核心板 4. GY-39环境监测传感器模块 ![STM32产品](https://img-blog.csdnimg.cn/20 ......
环境监测 传感器 模块 案例 环境

stm32cubeide ioc报错 This IOC file has been generated with CubeMX version 5.6.1 Your current CubeMX versionis 5.0.0

STM32Cubemx文件的版本不一致导致打不开.ioc文件的问题问题: This IOC file has been generated with CubeMX version 5.6.1Your current CubeMX versionis 5.0.0Please update to a n ......
CubeMX generated versionis cubeide current

STM32定时器输出PWM脉冲

一、什么是PWM脉冲? PWM (Pulse Width Modulation) 脉冲宽度调制,通常应用于惯性系统中,(不是不能即停的设备,因为如果设备不具有关心,那么运动是断断续续的,不具有连续性),通过脉宽调节输出不同的波形作用域受控对象。 二、 PWM中三个重要的参数 1.频率=1/Ts ;这 ......
定时器 脉冲 STM PWM 32

STM32上电启动过程详解

参考,转载自 (34条消息) 【32单片机学习】(11)STM32启动过程详解_Godox_user的博客-CSDN博客 ......
上电 过程 STM 32

STM32定时器(TIM)中断

一、什么是定时器中断? 大白话理解:使用一个定时器进行计时(计数),数数的方式可以从上到下(从设定值到0),也可从下到上(从0 到设定值),或者中间计数(一般用不上,记住前面两者解决大部分问题,) 要学会释怀自己,哈哈(允许我找个不会的借口)。 当计数完成以后,将会发出冲断请求(就是给中断控制系统说 ......
定时器 STM TIM 32

ST官方基于米尔STM32MP135开发板培训课程(一)

本文将以Myirtech的MYD-YF13X以及STM32MP135F-DK为例,讲解如何使用STM32CubeMX结合Developer package实现最小系统启动。 1.开发准备 1.1 Developer package准备 a.Developer package下载: ‍https:// ......
培训课程 课程 官方 STM 135

使用 QEMU 代替 STM32 开发版本 docker 一键启动

#### dockerfile ``` # Compile and install qemu_stm32 from fedora:28 RUN dnf install -y \ arm-none-eabi-gcc\ arm-none-eabi-newlib\ findutils\ gcc\ git\ ......
版本 docker QEMU STM 32

stm32F4 定时器

stm32F4 定时器基本定时器 TIM6 TIM7 16-bit:1.定时功能2.计数功能 通用定时器:16-bit (TIM3 and TIM4 、TIM9 to TIM14) 32-bit (TIM2 and TIM5) 1.定时功能2.计数功能3.输入捕获4.输出比较5.PWM6.正交编码 ......
定时器 stm 32F 32 F4

STM32 HAL库更改PWM频率的方法

项目上用到了步进电机,控制方式为STEP/DIR。 电机的STEP由PWM提供,于是控制步进电机的速度就靠PWM的频率高低来实现。 实现频率更改的函数为。 __HAL_TIM_SET_PRESCALER(__HANDLE__, __PRESC__); 该函数可以直接更改Prescaler(PSC)预 ......
频率 方法 STM HAL PWM

记一次 MDK 开发 STM32WB15 时遇到的玄学BUG

使用 STM32WB15CCU6 开发BLE应用 调试自建的工程时,莫名报错 ![](https://img2023.cnblogs.com/blog/2904728/202307/2904728-20230725174500437-2099517681.png) Jlink 和ST-LINK/V2 ......
玄学 MDK BUG STM 32

4 STM32MP1 Linux系统启动过程

1. ROM代码 这是ST官方写的代码,在STM32MP1出厂时就已经烧录进去,不能被修改。ROM代码是上电以后首先执行的程序,它的主要工作就是读取STM32MP1的BOOT引脚电平,然后根据电平来判断当前启动设备,最后从选定的启动设备里面读取FSBL代码,将FSBL代码放在对应的RAM空间。 ST ......
过程 系统 Linux STM MP1

STM32 解析新高效空调协议

1 数据结构=引导码+数据位+尾码 发送数据时先发引导码 50ms的低,再发数据位,最后发尾码 11ms的高和 2ms的低 数据位见协议内容。 送信时, 采用LSB模式(从低位开始)传输,数据"1"输出 9MS 的低和 2MS 的高,数据"0"输出 2MS 的低和9MS6 的高(必须是芯片直接驱动光 ......
空调 STM 32