嵌入式

charlie1145141917 小时前
开发语言·c++·笔记·学习·嵌入式·etl
嵌入式C++教程——ETL(Embedded Template Library)好奇心:为什么在嵌入式世界里,总有人把 new 当成“危险品”而随身带手套?答案很简单:堆是不可预测的。ETL(Embedded Template Library)就是为了解决这个问题而生:把熟悉的容器/算法思想搬到嵌入式场景,但把动态分配剔除掉,让一切变得可预测、可度量、可审计。
良许Linux11 小时前
单片机·程序员·嵌入式·编程
51单片机都有哪些优缺点大家好,我是良许。今天咱们来聊聊 51 单片机。作为嵌入式开发领域的"老前辈",51 单片机陪伴了无数工程师走过了学习和工作的岁月。
嵌入小生00716 小时前
linux·数据结构·算法·vim·排序算法·嵌入式
数据结构 | 常用排序算法大全及二分查找今天将为大家带来几种常见的排序算法,之前我们学习了冒泡排序法,选择排序算法,今天还会讲解几种常用的算法,那我们开始吧。
梵刹古音1 天前
c语言·开发语言·嵌入式
【C语言】 结构化编程与选择结构C语言是一种面向过程的结构化编程语言,与C++的面向对象特性不同。结构化编程的核心思想是将复杂程序分解为三种基本结构,通过它们的组合实现任意复杂的程序逻辑。
百锦再2 天前
tcp/ip·udp·c#·嵌入式·上位机·通信·下位机
《C#上位机开发从门外到门内》2-7:网络通信(TCP/IP、UDP)随着信息技术和物联网的迅速发展,网络通信技术已经渗透到各行各业。无论是在传统的PC网络、工业自动化控制系统,还是在智慧城市、远程监控、远程数据采集与控制等领域,基于TCP/IP和UDP协议的通信方式均发挥着举足轻重的作用。上位机与下位机之间的交互需求愈加广泛,从单一的数据传输扩展为实时监控、远程指令下发和多节点协同工作。本文将系统阐述网络通信的基础理论,详细解析TCP/IP、UDP协议的核心特性,并以Socket编程为例,介绍上位机与下位机交互的实现方法,最终讨论远程数据采集与控制系统的架构设计与应用实践
嵌入小生0072 天前
linux·c语言·数据结构·算法·vim·嵌入式
数据结构与算法 | 完全二叉树的实现、哈希表的实现今天,将继续上次的二叉树的讲解,前面已经将二叉树的基本概念讲清楚了,我们接着就是去搞清楚如何实现二叉树,及其常用用法的基础实现,那我们就开始吧:
梵刹古音3 天前
c语言·开发语言·嵌入式
【C语言】 浮点型(实型)变量浮点型(Floating Point Type)是C语言中用于表示实数的数据类型。实数包括整数、小数以及科学计数法表示的数,例如:
良许Linux4 天前
后端·stm32·单片机·程序员·嵌入式
DSP的选型和应用大家好,我是良许。在嵌入式开发领域,DSP(Digital Signal Processor,数字信号处理器)是一类专门用于高速数字信号处理的微处理器。
余生皆假期-4 天前
单片机·嵌入式硬件·嵌入式
永磁同步电机下桥三电阻采样方式的电机电流重构方法在某些应用场景如空调,电动自行车,水泵等,因为成本的关系,通常使用基于下桥的三相电阻采样方案,此时只有下桥开通时才有电流流过检流电阻,因此只有在下桥开通时才能采样到有效电流。
切糕师学AI4 天前
arm开发·单片机·嵌入式·复位
ARM 架构中的复位(Reset)与复位流程复位(Reset)是ARM处理器从初始状态开始执行的硬件机制,确保系统从一个已知的、确定的状态启动。复位会将处理器核心、外设和系统恢复到预定义的状态。
梵刹古音4 天前
c语言·开发语言·嵌入式
【C语言】 格式控制符与输入输出函数格式控制符是C语言输入输出函数中的关键组成部分,用于指定数据的输入输出格式。它们与变量的存储类型密切相关,确保数据在内存与外部设备间正确转换。
嵌入小生0075 天前
linux·c语言·数据结构·链表·嵌入式·小白
双向链表、双向循环链表之间的异同---嵌入式入门---Linux在掌握单向链表之后,我们迎来了链表的进阶形态——双向链表和双向循环链表。这三种数据结构虽然血脉相连,但在实现细节和应用场景上各有千秋。本文将带你深入探索这些数据结构的精髓,通过对比分析,让你不仅知其然,更知其所以然。
CQ_YM5 天前
arm开发·单片机·嵌入式硬件·嵌入式
ARM之I2CI2C 总线摒弃了传统通信的片选线设计,仅通过两根双向信号线实现所有挂载设备的通信,硬件连接极致简化,也是其在嵌入式领域普及的核心原因:
梵刹古音5 天前
c语言·开发语言·嵌入式
【C语言】 字符型变量字符型(Character Type)是C语言中用于存储单个字符的基本数据类型。在C语言中,字符被视为一种特殊的整数,每个字符都对应一个特定的整数值,这种对应关系由ASCII编码(美国信息交换标准代码)或其他字符集(如扩展ASCII、Unicode等)定义。
2401_859049085 天前
linux·运维·arm开发·elasticsearch·嵌入式·ubantu
lvgl移植到Linux踩坑按照这个https://github.com/lvgl/lv_port_linux/tree/release/v9.2#
嵌入小生0076 天前
linux·开发语言·数据结构·算法·链表·嵌入式
单向链表的常用操作方法---嵌入式入门---Linux在上一次为大家讲解了什么是数据结构,以及讲述了一些单向链表的操作,今天将把单向链表剩下的一些常见操作为大家讲述清楚。
Hello_Embed6 天前
笔记·学习·嵌入式·freertos·modbus
libmodbus 源码分析(接收请求篇)在上一篇笔记中,我们深入拆解了 libmodbus 主设备发送请求的完整源码流程,掌握了 Modbus 报文的构造、校验与发送逻辑。而 Modbus 通信是双向交互的,从设备的核心职责是接收主设备的请求报文、解析并执行对应操作、返回响应结果。本次笔记将聚焦 libmodbus 从设备接收请求的场景,拆解从初始化到报文接收、完整性校验的完整流程,重点解析核心接收函数与超时机制,帮助你完整掌握 libmodbus 的双向通信逻辑,为后续实现完整的 Modbus 主从通信打下基础。
Hello_Embed7 天前
笔记·单片机·嵌入式·freertos·libmodbus
libmodbus 源码分析(发送请求篇)在上一篇笔记中,我们完成了 libmodbus 库的介绍、源码获取与阅读工具的实操,为深入研读源码打下了基础。libmodbus 的核心价值在于封装了 Modbus 协议的底层细节,而发送请求是 Modbus 主设备的核心操作之一。本次笔记将以modbus_write_bits(写多个线圈)函数为例,拆解 libmodbus 发送请求的完整执行流程,深入解析每一步的源码逻辑与核心结构体作用,帮助你理解 libmodbus 的底层封装思路,为后续的二次开发与裸机移植提供理论支撑。
梵刹古音7 天前
c语言·开发语言·嵌入式
【C语言】 定义变量【理解】:C语言中,当定义变量语句被执行后,操作系统将会给变量分配空间。分配的空间大小由定义时采用的数据类型决定,每种数据类型对应的空间占用情况遵循规则: 1.如果是基本数据类型,占用固定空间,这个由C语言官方规定的。 2.如果是构造数据类型,则与构造方式有关。 3.如果是指针类型,占用4Byte(编译环境是32位) 或 8Byte(编译环境64位)。
CQ_YM8 天前
arm开发·嵌入式硬件·嵌入式·arm
ARM之I2C与ADCI2C 是由飞利浦半导体(现 NXP)开发的两线制串行通信协议,仅需 SDA(Serial Data,数据线)和 SCL(Serial Clock,时钟线)两根线即可实现多主从设备间的双向通信,配合上拉电阻(通常 4.7KΩ~10KΩ)即可完成硬件搭建,在传感器、EEPROM、LCD 显示屏等外设中应用极为广泛。