logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

STM32开发GCC常用编译选项

选项作用示例-c编译为.o,不进行链接-o <file>指定输出文件名(可用于.o或可执行)选项作用示例-I添加头文件搜索路径配套使用和-c一起用于编译.c文件和-mthumb是 GCC 针对ARM 架构(特别是嵌入式开发)的编译选项,用于控制生成的机器指令和目标架构。Thumb 是 ARM 指令集的子集,使用16 位压缩指令(后来也支持 32 位扩展指令)。✅ 优点:体积小、执行快(特别在低带宽

#stm32
简说stm32的startup.s文件和ld链接脚本

在嵌入式开发中,除了 文件和链接脚本(通常是文件)对程序的初始化、内存布局以及执行流程有着重要影响。 是汇编语言编写的启动文件,通常用于初始化硬件和设置运行环境。以下是它可能影响的代码部分:堆栈初始化:解释: 会初始化堆栈指针(SP),确保 C/C++ 程序能够正确使用堆栈进行函数调用和局部变量存储。全局变量初始化:解释: 负责将段从 Flash 复制到 RAM,并清零段中的全局变量。如果这些步骤

#stm32
linux dts overlay

设备树 Overlay:专注于硬件描述和配置,特别适合动态加载硬件节点。initramfs:内核启动的第一个用户空间,负责挂载根文件系统和初始化环境。systemd:现代Linux系统的初始化和服务管理器,负责启动和维护系统服务。

#linux
物联网与嵌入式设备数据展示和控制的主流思路

物联网和嵌入式设备数据展示与控制正逐步由传统APP转向基于浏览器的Web解决方案Web前端实时数据可视化结合WebSocket实现了跨平台、低成本、高实时性的展示与交互配合MQTT等消息协议,实现数据的可靠传输和灵活订阅适合快速开发、快速迭代与部署,降低门槛和维护成本未来结合AI和大数据可实现更智能的物联网应用。

#物联网
STM32开发GCC常用编译选项

选项作用示例-c编译为.o,不进行链接-o <file>指定输出文件名(可用于.o或可执行)选项作用示例-I添加头文件搜索路径配套使用和-c一起用于编译.c文件和-mthumb是 GCC 针对ARM 架构(特别是嵌入式开发)的编译选项,用于控制生成的机器指令和目标架构。Thumb 是 ARM 指令集的子集,使用16 位压缩指令(后来也支持 32 位扩展指令)。✅ 优点:体积小、执行快(特别在低带宽

#stm32
STM32的 syscalls.c 和 sysmem.c

方面内容是否需要改动?如果你要使用,是的!推荐修改点实现和使用HAL_UART示例?是,可用于 STM32 串口输出你提供的sysmem.c是 STM32CubeIDE 自动生成的内存分配支持文件,主要目的是实现标准 C 库malloc系列函数所依赖的_sbrk()系统调用。这是嵌入式裸机编程中用于支持动态内存分配的标准方法。项目内容文件作用支持malloc的底层实现关键函数_sbrk()内存边界

#stm32#c语言#嵌入式硬件
嵌入式环境下的C++最佳实践

};栈分配优先,堆分配慎用。使用内存池、arena、slab 等技术提升分配性能。为 STL 配容器写自定义 allocator 与内存池结合。减少碎片化从分配模式设计和内存布局入手。constexpr 和编译时计算🚀为什么要用编译时计算?提高运行时性能 → 把计算尽量提前到编译期。增强类型安全 → 编译器在编译时检查逻辑。减少代码膨胀 → 条件编译更智能。

#c++#开发语言
    共 20 条
  • 1
  • 2
  • 请选择