技术栈
嵌入式软件
fffzd
2 天前
单片机
·
嵌入式硬件
·
嵌入式软件
·
时钟树
·
时钟源
STM32:时钟树与时钟源
单片机为了保证快速与有条不紊,采用心脏--时钟源与动脉--时钟树(1)将高速时钟源设置为晶振(2)将HCLK修改为72MHz
fffzd
3 天前
stm32
·
单片机
·
嵌入式硬件
·
iic
·
通信
·
嵌入式软件
·
i2c
STM32:IIC与温湿度传感器(轮询模式)
目录一.IIC通信原理二.Cubemx三.代码实现1.查阅AHT20数据手册2.IIC读取与发送函数3.根据手册写初始化过程,在aht20.c中定义一个初始化函数AHT20_Init
都在酒里
4 天前
stm32
·
单片机
·
嵌入式硬件
·
嵌入式
·
rtos
·
嵌入式软件
FreeRTOS 综合实战:串口命令控制 LED 闪烁模式与系统监控
本系列前九篇文章依次深入了工程搭建、任务管理、队列、信号量、互斥量、软件定时器、中断管理以及调试优化。本篇将通过一个完整的实战项目——串口命令控制 LED 闪烁模式与系统状态监控,把前面所学知识全部串联起来。你可以把它作为学习 FreeRTOS 的毕业设计,也可以当作后续复杂项目的模板。
都在酒里
5 天前
stm32
·
单片机
·
嵌入式
·
rtos
·
嵌入式软件
FreeRTOS 手动移植教程(七):软件定时器 —— 不占硬件 Timer 的定时回调
在上一篇文章中,我们学习了互斥量,解决了共享资源保护与优先级反转问题。本篇将介绍 FreeRTOS 的软件定时器,它无需占用额外的硬件定时器资源,即可实现单次或周期性的定时回调。我们将通过实验演示如何创建、启动、停止软件定时器,并总结使用中的关键注意事项。
都在酒里
5 天前
stm32
·
单片机
·
嵌入式
·
rtos
·
嵌入式软件
FreeRTOS 手动移植教程(八):中断管理 —— 优先级、临界区与任务通知
前面几篇文章中,我们已经多次在中断里使用了 FromISR 函数,但并未系统梳理中断优先级与 FreeRTOS 的配合规则。本篇将深入讨论这些规则,并介绍临界区的正确使用方法。同时,我们还会引入一种更轻量级的任务通信机制——任务通知,它可以在某些场景下替代信号量或队列,进一步提升效率。最后通过实验,在按键中断中用任务通知直接唤醒任务。
都在酒里
6 天前
stm32
·
单片机
·
rtos
·
嵌入式软件
FreeRTOS 手动移植教程(五):信号量 —— 任务同步与中断通知的优雅解决方案
在上一篇文章中,我们学习了队列,实现了按键中断与任务之间的数据传递。但在很多场景下,我们只需要传递“某个事件发生了”的信号,而不需要附带具体数据。此时,更轻量、更直接的机制——信号量便派上了用场。本篇将详细讲解二值信号量与计数信号量,并通过实验展示任务同步与中断通知的实际用法。
Plankton_Li
13 天前
stm32
·
单片机
·
嵌入式软件
嵌入式国密加密:STM32L4 + MIRACL 库实现 SM2 加解密
参考链接STM32上可用的的SM 2 3 4国密算法_stm32 sm2-CSDN博客之前在项目中需要使用SM2加解密功能,尝试移植GmSSL库,但由于依赖复杂、代码体积过大,始终无法成功。之后也试过STM32官方的X-CUBE-CRYPTOLIB,虽然集成方便,但发现它仅支持SM2数字签名,无法满足公钥加密的实际需求。
smalming
16 天前
嵌入式硬件
·
嵌入式软件
【产品开发】空气波按摩器的一些控制逻辑
随着大健康产业的爆发,空气波按摩器(气压按摩仪) 这类产品的销量也跟着爆发,这不最近刚好接到空气波腿部按摩器的PCBA的软硬件开发项目,在这里记录下一些开发心得
螺丝钉的扭矩一瞬间产生高能蛋白
1 个月前
c++
·
qt
·
嵌入式软件
·
嵌入式linux
·
linux应用
QT的C++接口基础用法
QT是一个跨平台的C++开发库,主要用于开发图形界面程序。简而言之,就是用来做UI界面的。下边笔者将介绍QT的基础用法,包括信号与槽机制、常用控件以及多线程。建议大家在学习QT时,先掌握QT的用法即可,不用深究原理。
CC城子
1 个月前
gdb
·
嵌入式软件
嵌入式Linux宕机问题GDB调试(一)
Makefile配置:目标板:开发机:~/.gdbinit:目标板配置:核心分析步骤:内核配置:启动参数:
码农小韩
1 个月前
开发语言
·
c++
·
qt
·
学习
·
算法
·
嵌入式软件
QT学习记录(三)——C++学习基础(三)
引用变量是一个别名,也就是说,它是某个已存在变量的另一个名字。一旦把引用初始化为某个变量,就可以使用该引用名称或变量名称来指向变量。思维发散:在C语言中,一个数据对应一个内存,通过由一个变量名来访问这个内存空间的数据,叫做直接访问,相对直接访问,有个间接访问的说法,叫做指针。而引用相当于又给这个内存中的数据提供了一个新的变量名,这个变量名功能比传统变量名更特殊,是直达地址的,后续代码验证!
小程同学>o<
1 个月前
linux
·
网络
·
嵌入式软件
·
嵌入式应用层
·
应用层开发
·
linux应用层开发
Linux 应用层开发入门(二十五)| 网络编程
网络编程是 Linux 应用层开发的核心技能之一,无论是服务端程序、客户端工具,还是物联网、音视频、分布式系统等场景,都离不开网络通信。本章作为网络编程的入门开篇,将聚焦通信标识、通信角色、传输协议三大基础核心,为后续编写TCP/UDP代码打下扎实理论基础。
明月清了个风
2 个月前
笔记
·
嵌入式软件
·
libmodbus
libmodbus笔记
@@ date : 2026.4.20@@ ps : 一些开源工程libmodbus的源码学习笔记网址:https://github.com/stephane/libmodbus
波特率115200
2 个月前
stm32
·
单片机
·
嵌入式硬件
·
嵌入式
·
嵌入式软件
单片机启动流程以STM32举例
0x00000000~0x0007FFFF这段空间属于重映射区,根据BOOT的不同选择映射到不同的内存区域
戏舟的嵌入式开源笔记
2 个月前
c语言
·
pico
·
嵌入式软件
·
rp2040
上手RP2040(基于C SDK)
之前了解到这块芯片,是一年前的事了,当时用的还是micropython,也没觉得有什么特别的。后来芯片用多了,参数什么的也开始渐渐了解后发现这款芯片是有点意思的。双核M0+PIO+XIP最大16MB Flash,同时可以轻松超频到250MHZ,性能赶得上STM32的F4系列了,而且RAM和Flash给的很足,可玩性很高。
戏舟的嵌入式开源笔记
2 个月前
rtos
·
嵌入式软件
RP2040(移植FreeRTOS-SMP)
FreeRTOS的一般移植步骤如下:获取源码:从官方下载 FreeRTOS 源码包选择 portable 层:根据目标芯片选择对应的 port 文件(如 portable/GCC/ARM_CM4),包含上下文切换的汇编代码
笨笨饿
2 个月前
linux
·
服务器
·
c语言
·
人工智能
·
mcu
·
学习方法
·
嵌入式软件
42_C语言查找算法
Lester_1101
2 个月前
嵌入式软件
全局变量与函数内的静态局部变量名字相同
在 Keil C 语言(标准 C 行为)中,如果全局变量与函数内的静态局部变量名字相同,在该函数内部,使用的是静态局部变量。
小向是个Der
2 个月前
单片机
·
编译
·
嵌入式软件
·
cline+glm5.0
嵌入式进阶——嵌入式MCU编译工具链总结
本文介绍MCU在编译过程中的一些知识及技能,使用GLM5.0完成编写,作者只是提供了大纲,总结了从业以来所接触到的编译相关技能。相关附件存放到gitee。需要的自取——https://gitee.com/GWLZ/embedded-advanced.git
Lester_1101
2 个月前
嵌入式软件
#ifndef FLOW_EXT #define FLOW_EXT extern
.c 文件里面:#define FLOW_EXT, .h文件里面:#ifndef FLOW_EXT #define FLOW_EXT extern #endif FLOW_EXT u16 t_boundary_1s; 怎么理解?