logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

【OTA专题】17 打通Bootloader与App逻辑之间的通信

摘要:本文介绍了基于STM32的OTA升级方案,采用Ymodem协议通过串口传输AES加密的APP固件。系统包含APP和Bootloader两个部分,APP运行时接收上位机指令(0x11 0x22 0x33)启动升级流程,固件烧录地址为0x08008000。下载完成后,设备发送应答请求(0x44 0x55 0x66),收到确认指令(0x77 0x88 0x99)后进入20秒按键检测状态。文中详细说

文章图片
#单片机#嵌入式#stm32 +1
【OTA专题】18 OTA性能优化:优化bootloader存储空间与固件完整性校验(CRC)

本文介绍了Bootloader存储空间优化的方法与实施步骤。首先从代码结构、函数、变量、编译和数据存储五个方面详细阐述了优化策略,包括清理冗余代码、优化算法逻辑、控制函数参数、减少全局变量使用等。接着介绍了使用Keil-build-viewer工具查看Flash空间占用的方法。第二部分讲解了CRC校验的实现,推荐了开源库和参考资料,并提供了CRC在线计算工具。最后说明了如何在代码中移植CRC校验功

文章图片
#嵌入式#单片机#stm32 +1
单片机内存布局管理:sct分散加载详解

本文深入解析ARM嵌入式开发中的分散加载文件(.sct),重点介绍其核心功能、使用场景和配置方法。文章首先说明.sct文件在链接阶段的作用,类比GCC中的.ld文件;详细解析文件结构,包括加载域(LR_IROM)和执行域(ER_IROM/RW_IRAM)的地址分配规则;通过实例演示如何创建自定义加载域管理特定代码段和数据段;特别讲解__attribute__关键字实现内存定向分配的方法;最后解答常

文章图片
#单片机#嵌入式#stm32
揭秘:基于Bootloader的IAP如何实现程序更新

摘要:基于Bootloader的IAP技术通过将MCU的Flash划分为Bootloader区和Application区,实现程序远程更新。Bootloader作为"启动管理器"在上电后首先运行,检查更新标志或等待更新指令。若需更新,则通过通信接口接收新固件,校验后写入Application区,最后跳转执行新程序。关键技术包括中断向量表重映射、通信协议设计、Flash操作和校验机制。该技术可实现远

#单片机#嵌入式硬件
Easylogger与RTT结合使用 & Easylogger在FreeRTOS下实现异步输出

RTT与EasyLogger是嵌入式开发中常用的两种工具,二者协同工作形成高效日志解决方案。RTT作为SEGGER推出的调试数据传输工具,负责通过J-Link实现目标板与PC间的高效双向通信;EasyLogger则是国产开源的嵌入式日志管理库,专注于日志生成、过滤和格式化。实际应用中,EasyLogger将规范化处理后的日志通过RTT接口传输至PC端,由J-Link RTT Viewer接收显示。

#嵌入式#开源工具
【FreeRTOS】任务管理:创建与删除任务,任务优先级与阻塞

本文介绍了RTOS任务创建与管理的方法,包括任务优先级的使用和任务栈大小的估算。

文章图片
#单片机
好用的开源日志输出:SEGGER_RTT日志移植与应用指南

摘要:本文介绍了日志系统的基本组成(日志索引、断电日志存储区和主日志存储区)以及SEGGER RTT的移植与使用方法。详细说明了RTT库的下载步骤、文件提取和移植过程,包括初始化、测试用例和封装优化方法。同时提供了RTT虚拟终端的高级用法,如实现分流、改变输出颜色、重定向以及通过修改SEGGER_RTT_vprintf函数实现浮点数输出的解决方案。最后展示了封装后的日志输出效果和配置缓冲区大小的注

好用的开源日志输出工具:SEGGER_RTT实现机制解析

SEGGER RTT是一种基于内存共享的实时调试技术,通过控制块结构管理数据传输。其核心机制包括:1)使用环形缓冲区和生产-消费者模型实现无锁通信;2)支持多通道配置,可区分上下行数据;3)采用原子操作保证指针更新的线程安全;4)同时支持阻塞和非阻塞模式,满足不同实时性需求。该技术无需专用调试接口,能在保持原有代码结构的同时实现高效调试,适用于嵌入式系统开发。

【数据结构】链表解析与实战运用(1.8w字超详细解析)

链表:双向带头循环链表1、任意位置插入删除效率高。O(1)2、按需申请释放空间。1、不支持随机访问。(用下标访问)意味着:一些排序,二分查找等在这种结构上不适用。2、链表存储一个值,同时要存储链接指针,也有一定消耗(一般不用在意)3、cpu高速缓存命中率更低(详情见下文额外拓展)优点:(用下标访问)1、支持随机访问。需要随机访问结构支持算法可以很好的适用。2、cpu高速缓存命中率更高(详情见下文额

文章图片
#数据结构#链表#算法
    共 30 条
  • 1
  • 2
  • 3
  • 请选择