为什么要使用RTT输出打印信息?有很多打印技术 例如 :UART的重定向输出,SWO引脚输出,Semihosting在控制台输出等 RTT具有更快的打印速度和实时性看一张图: 这个测试在 STM32F407 Cortex-M4 @ 168MHZ进行比较的结果,82个字符打印所需时间只有1us。 J- ...
转载
2021-11-03 11:24:00
1089阅读
2评论
STM32是一款流行的嵌入式微控制器,由STMicroelectronics公司设计制造。它广泛应用于各种嵌入式系统中,包括智能家居设备、工业控制系统、汽车电子、医疗设备等领域。而Eclipse是一款开源的集成开发环境(IDE),提供了丰富的插件支持,适用于多种编程语言和平台。
在Linux系统上使用STM32和Eclipse进行嵌入式开发是一种常见的做法。通过这种组合,开发者可以方便地进行代码
原创
2024-04-15 14:02:01
54阅读
STM32F407 —— 硬件 I2C 驱动的步骤与应用一、I2C相关知识1、物理层(1) 定义(2) 通信方式2、协议层(1) 空闲状态(2) 起始信号与停止信号的定义(3) 应答信号(4) 数据传输(5) 数据有效性3、I2C 基本读写过程(1) 主机写数据到从机(2) 主机读从机数据二、实战应用1、I2C 驱动 4线 0.96寸 OLED 显示屏2、I2C 驱动 MS5837 压力传感器
推荐几款比较好用的Solidworks插件凯元工具不错,软件小巧但是功能不少,迈迪设计宝也行,模型库比较多,国外的geartrax也在用,其他的小插件和宏很多,功能单一些。如何在SW插件界面里删除某些插件点开 “选项” 旁边的 “插件”按钮里面有你常用的 插件选项,找到你所说的那个,点击最左、右两边的 “√”,即可增加或者 去除。solidworks 有好几个插件,都是什么功能?1、用户界面插件提
转载
2024-07-24 22:39:20
102阅读
CAN控制器 首先简单介绍一下CAN总线,关于CAN总线是谁发明的,CAN总线的历史,CAN总线的发展,CAN总线的应用场合,这些,通通不说。这里只是以我个人理解,简单说说CAN通信。CAN总线的端点没有地址(除非自己在帧里定义地址),CAN总线通信不用地址,用标识符,不是单独的谁发给谁,而是,你总是发
实验内容:使用硬件SPI读写串行FLASH(W25Q64) 。一、原理图二、 CubeMX配置Step1.打开 STM32CubeMX,点击“New Project”,选择芯片型号,STM32F103VETx。 Step2.选择时钟源,并配置时钟树。选择Crystal/Ceramic Resonator,并配置系统时钟为72M。 Step3.
转载
2024-08-01 11:30:27
1130阅读
00. 目录文章目录00. 目录01. 系统架构02. 总线架构图03. 总线详解05. 参考手册06.
原创
2022-03-16 14:39:18
861阅读
00. 目录文章目录00. 目录01. 系统架构02. 总线架构图03. 总线详解05. 参考手册06. 附录01. 系统架构主系统由 32 位多层 AHB 总线矩阵构成,可实现以下部分的互连:● 八条主控总线:— Cortex™-M4F 内核 I 总线、D 总线和 S 总线— DMA1 存储器总线— DMA2 存储器总线— DMA2 外设总线— 以太网 DMA 总线— USB OTG HS DMA 总线● 七条被控总线:— 内部 Flash ICode 总线— 内部 Flash
原创
2021-09-02 14:29:25
1186阅读
STM32CubeG4 HAL和LL是互补的,涵盖了广泛的应用 要求: •HAL驱动程序提供了面向高级功能的高度可移植的api。他们隐藏 MCU和外围设备的复杂性给终端用户。 HAL驱动程序提供了通用的面向多实例特性的api,从而简化了程序 通过提供即用流程实现用户应用程序。作为一个例子, 对于通信 ...
转载
2021-04-25 14:01:00
1274阅读
2评论
利用stm32单片机的休眠模式,使单片机间歇的休眠从而实现低功耗的目的。往往会出现进入休眠后无法唤醒,导致下一次程序烧不进去。通常的解决办法是:一般的开发板或单片机最小系统都会有复位键,按住复位键,点下载,然后松开复位键即可。我遇到的问题是:误入了stm32(STM32L051C6T6)的STOP模式,又没有写入相应的唤醒方法,导致后续的程序不能下载。使用MDK5 点击load时总会出现No ta
整理了一下STM32相关的底层结构,有助于消化理解先上几张图片(主要参照STM3210x系列)1.芯片结构组成图: 2.STM32内部结构: 3.Cortex-M3模块结构图: 4.STM3210X内部结构:桥:四个主动单元 : M3内核的ICode总线(I-bus)、DCode总线(D-bus)、 系统
转载
2023-07-06 10:56:11
452阅读
1.下载LVGL源码打开github,点击lvgl在github的仓库,依次点击master、tags、v8.3.3 切换到V8.3.3分支后,再点code、下载zip 把下载好的lvgl-8.3.3.zip文件解压,至此,源码下载完毕 2、开始移植2.1把源码搬运到工程文件夹里在RTT_Templates(STM3232F407)_LVGLv8目录下新建
转载
2024-05-17 16:36:21
485阅读
文章目录前言一、定时器介绍二、基本定时器三、STM32CubeMX配置四、编写中断回调函数总结 前言 一、定时器介绍STM32G4系列共有10个定时器• 2个基本定时器(TIM6和TIM7)。 • 3个通用定时器(TIM2~TIM4):全功能通用定时器。 • 3个通用定时器(TIM15~TIM17):只有1个或者2个通道。 • 2个高级控制定时器(TIM1和TIM8)。不同定时器的
转载
2023-12-09 16:57:59
489阅读
首先配置JAVA环境JAVA下载地址https://www.java.com/zh-CN/download/JAVA安装:1、打开.exe安装包,勾选更改目标文件夹,点击安装2、选择安装路径,点击下一步3、等待安装,安装完毕,点击关闭确认JAVA已经安装:win+R----输入命令符cmd----输入Java -version----看到版本号证明安装完成----关闭一、STM32CubeIDE(
转载
2024-03-27 07:31:20
709阅读
VsCode配置STM32开发环境(插件版)前提:你得安装好MDK才能在VsCode里面配置开发环境,其原理就是使用插件链接上MDK的工具(安装MDK教程请看我历史文章)。安装插件1:打开VsCode 2:进入插件管理器 3:搜索插件 插件名称Keil Assistant 4:下载 点击安装即可插件配置下载完成后,点击侧面小齿轮,进入扩展设置 此插件支持C51和STM32两个一起 在此我们需要找到
转载
2024-04-27 19:14:36
392阅读
如果只执行 HAL_RTC_GetTime(),读取完后时间不再跑,需要执行如下: HAL_RTC_GetTime() HAL_RTC_GetDate()
转载
2018-11-27 14:54:00
294阅读
STM32F4 每组通用 I/O 端口包括 4 个 32 位配置寄存器(MODER、 OTYPER、 OSPEEDR和 PUPDR)、 2 个 32 位数据寄存器(IDR 和 ODR)、 1 个 32 位置位/复位寄存器 (BSRR)、1 个 32 位锁定寄存器 (LCKR) 和 2 个 32 位复 ...
转载
2021-07-30 09:22:00
353阅读
2评论
# STM32F4 架构概述
## 引言
STM32F4系列是意法半导体(STMicroelectronics)推出的高性能微控制器,广泛应用于嵌入式系统、工业控制和物联网等领域。本文将探讨STM32F4的架构、主要特性以及如何使用其进行基本编程。
## STM32F4的架构
STM32F4系列基于ARM Cortex-M4内核,支持浮点运算和DSP指令,兼具高性能和低功耗。以下是STM3
原创
2024-09-05 06:25:49
251阅读
STM32F4的GPIO区别与F1的GPIO配置,每个 I/O 端口位均可自由编程,但 I/O 端口寄存器必须按 32 位字、半字或字节进行访问。 GPIOx_BSRR 寄存器旨在实现对 GPIO ODR 寄存器进行原子读取/修改访问。这样便可确保 在读取和修改访问之间发生中断请求也不会有问题。 &nb
转载
2024-06-06 23:28:57
461阅读
1 #ifndef __BSP_UART_H2 #define __BSP_UART_H3 #include "main.h"4 5 void User_Uart1_Init(void);6 7 #endifbsp_uart.h 1 #include "bsp_uart.h" 2 3 UART_HandleTypeDef huart1; 4 5 void User_Uart1_Init(voi
转载
2021-03-28 09:42:41
224阅读
2评论