自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

strongerHuang

文中关于360下载链接已失效,请微信公众号“下载区”获取更新链接。

  • 博客(3198)
  • 资源 (4)
  • 收藏
  • 关注

原创 更多精选文章列表

  为了让更多朋友看到我分享的内容,我经常在微信公众号「strongerHuang」分享一些优质的内容,主要包含:Keil、IAR、STM8、STM32、μC/OS、FreeRTOS、CANOpen、ModBus…等,在我的个人微信公众号「strongerHuang」底部菜单,或者回复【更多内容】即可查看。  因在这里分享文章,还需单独整理一遍,时间有限,有些文章则没有在我博客呈现,下面是部分...

2018-08-20 15:49:39 3916 1

原创 UCOS2_STM32移植过程、系统内核、事件描述(汇总)

推荐分享一个大神的人工智能教程。零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到人工智能的队伍中来!http://www.captainbed.net/strongerhuang我的网站:https://www.strongerhuang.com我的知乎:https://www.zhihu.com/people/strongerHuang.com移植过程:...

2016-07-01 18:11:33 19924 5

转载 单片机中断变量加volatile的好处......

最近在调试ARM程序时,遇到一个奇怪的问题,主循环中读取到的中断服务函数中的变量的值一直没有更新。如果对程序文件大小不敏感,建议无论是Debug版本编译和Release版本编译,都将编译器的优化等级设置为最低,即不进行任何优化。这个变量是易变的,它的值可能会被当前代码之外的代理改变(比如中断、硬件寄存器、另一个线程),你不能对它做任何假设性的优化。在它看来,这个变量的值只能被当前的执行流改变。为了防止编译器进行“过度优化”,从而生成错误的代码,导致程序无法读取到变量在中断中的最新值。

2025-09-11 20:00:00 4

转载 RT-Trace国产调试工具 + RT-Thread,让开发效率大幅提升!

在嵌入式系统开发中,软件编码其实不是最费时间的环节,调试才是最费时间、最具挑战性的环节之一。但是,随着项目功能的逐渐增多,特别是上了RT-Thread系统之后,支持高速调试(最高 20MHz),兼容主流 IDE(Keil、IAR、RT-Thread Studio)。Cortex-M 系列、先楫半导体(HPMicro)RISC-V,更多架构支持持续开发中。在浏览器中直观显示线程关系图、执行时间轴,支持时间测量(线程执行时间、切换时间等)。实时显示设备状态、IP 地址、电压、引脚状态等,支持屏幕旋转。

2025-09-11 08:01:48 28

转载 嵌入式软件的解耦

将系统分解为多个独立的组件,每个组件负责执行特定的数据转换或处理任务,可以灵活地相互结合,并通过“管道”将这些组件串联起来,形成一个完整的工作流程。即使是资源受限的单片机裸机系统,采用大循环体架构,或者中断-循环前后台(中断处理紧急事务,主循环处理常规任务)架构,也尽量划分至少两层,即保留硬件抽象层和业务层。一个复杂模块,明确拆分外部输入,内部执行,结果输出三部分,再合理的与其它模块对接,尽量保证对外接口简单稳定,外部无需过多关注内部实现,这是实现软件解耦的基本规则。

2025-09-09 08:02:18 59

转载 MCU高性能+AI,将是未来的趋势!

随着AI算力疯狂下放,新一代高性能MCU正在悄悄颠覆传统——✨边缘计算自主决策、语音视觉实时识别、IoT终端自学习……10:00-12:00,瑞萨电子将会带来一场盛大的 MCU 线上峰会,同时,还有免费送出各种 M;、微信号、手机号)限参与一次,通过非正常方式(包括刷榜、作弊、机器人等)参与将不得获取相关奖励。,将抽出瑞萨RA0E1、RA2L1、RA4E2及RA6E2开发板,总计超过100pcs。它不再只是执行命令的“手脚”,更是拥有“大脑”的智能节点。新品,覆盖工业自动化、家电、新能源、表计、

2025-09-09 08:02:18 93

转载 几种嵌入式IAP/OTA升级方案对比!

则是 IAP 技术的无线升级实现方式,通过蓝牙、WiFi等无线通信方式实现固件的远程更新,大大提升了产品的可维护性和用户体验。嵌入式开发具备IAP/OTA功能,已经成为大多数产品的标配,今年来聊聊IAP和OTA几种方案并进行对比!,编程操作在 Bootloader 和 APP 程序中都有涉及,且至少需要划分三块区域。在实际产品开发中,IAP 技术的实现远比简单的"两个分区"复杂得多。,所有编程操作均在 Bootloader 中实现,APP 程序基本不涉及编程操作。:你在项目中用过哪种 IAP 方案?

2025-09-08 20:03:48 27

转载 单片机固件版本号常见的规则~

对于自动化工具的开发这里不过多展示,因为windows有非常多的方式,这里仅仅给出来一些大致的思路伪代码,供大家参考,思路也很简单,结合IDE生成的bin文件或者hex文件进行版本信息获取后填充到bin和hex中。当然在上面的基础上还可以更加的精益求精,比如将打包工具集成到Jenkins/GitLab CI,在内网搭建版本看板,实时显示各版本状态等等,这个就看各个公司对版本的重视程度了。自己做的工具肯定是要好用,每次设计我主要考虑如下四个方面的功能,也是我觉得非常有必要的四个方面。

2025-09-07 08:01:40 70

转载 几种常见的过压保护电路

此外,由于导通压降的影响,输出电压的精确度也可能受到影响。过压时,输出电压Vo2升高时,辅助绕组电压PAUX电压升高,通过上下拉电阻R812与R813//R814的分压提供给IC的DEM引脚,当DEM引脚电压超过OVP电压阀值时,IC将进入输出电压过压保护状态,IC停止工作。当输出过压时,加在D730上的电压大于其稳定值时,D730将导通,输出电压会被钳位,同时过压信号会通过OC730向原边反馈,使得原边控制IC用于过压保护的引脚拉低或致高(如图:拉低SNSBOOST引脚)从而停止工作。

2025-09-06 08:03:47 83

转载 基于MPU,在Ubuntu系统部署AI模型教程

同时,可以设置“Batch size for gpu”(批量大小)、“Epochs”(训练轮数)、“Enable Qat”(是否启用量化感知)、“Image width”(图像宽度)以及“Image height”(图像高度)等参数。在“Task”栏中选择“Object Detection”,并在“Board”栏中选择“V2L”。然而,对于很多开发者来说,想要在本地实现AI推理,而不依赖云端,并不是一件轻松的事。在数据集分析等待的过程中,你可以通过点击右下角的蓝色“LOGS”按钮,查看当前的日志。

2025-09-06 08:03:47 74

转载 为什么国产芯片手册也是英文版?

各位工程师朋友,不知道你们在项目选型或者调试时,有没有遇到过这样一个有点“有趣”又让人挠头的情况:满怀期待地打开一家国内芯片厂商的官网,希望可以找到一款合适的国产芯片,正准备深入研究其数据手册(Datasheet)时,却发现一个“熟悉又陌生”的景象——”这个有趣又现实的问题,把各种声音都摆到桌面上来聊一聊,看看这背后到底是什么原因,是不得已而为之的苦衷,还是一个值得改进的行业现象。上次找个PMIC供电芯片的手册,全是英文,看了半天没搞明白时序要求,最后只好换型号。搞咱们这行的,看英文手册确实是基本要求。

2025-09-05 12:18:56 67

转载 这是谁家部将,都做到内置ECC了!

inline ECC(Error-Correcting Code,纠错码)是一种集成在存储设备内部的错误检测与纠正技术,主要用于提升数据存储的可靠性。025年全志科技新发布的T536处理器,用Inline ECC技术实现突破:无需外置芯片,既确保DDR内存错误能被检测修正,又直接实现降本、缩小PCB尺寸,解决了旧方案的核心痛点。全志T536 inline ECC技术方案,能让工业设备少点“意外”,能让兄弟们少点“头秃”,国产就是牛!前7/8存业务数据,后1/8存校验码,不用额外加芯片,相当于“一屋两用”

2025-09-04 07:50:20 143

转载 分享几款绘图软件

新的嵌入式功能编辑表明,Google Drawings直接保存在Google Drive中,属于Google文档的一部分,这将在Docs中成为一个有用的功能。它非常适合小型企业,因为它是免费提供的。嵌入式开发过程中,有时候会用到绘图软件,包括但不限于:流程图、人物关系图、组织架构图、思维导图、UML图、泳道图、甘特图、知识地图、软件架构图、鱼骨图等,支持绘制的图形多种多样,堪称绘图神器。这款屡获殊荣的图表工具以其易用性著称,结合了独特的功能,如一键创建和连接,使得绘制图表的速度比传统图表软件快上3倍。

2025-09-02 20:00:00 126

转载 速看!本周六9月6日,IEAE 消费类电子展震撼开启

目前,展会已吸引众多品牌展商入驻,覆盖品牌展商如OW Lab、ATK、狼蛛、悟确、宏基、航世、威林、博屹、天禧、雁为、宏博、赛枫、威麦、元素创达、骐思、蓝钛思、星迈、澳德鸿、康夫和维特世嘉等知名品牌公司。这些高峰论坛将邀请知名电商平台,各渠道行业专家和资深人士及专业服务机构,分享相关电子电器产品在国际国内的市场情况、数据报告、营销技巧和运营经验,共同探讨电子电器消费市场的热点话题,为买卖双方带来最新的运营策略、产品攻略及市场新玩法等热门干货分享、助力买卖双方快速抢占新的市场商机。于一体的综合性专业平台。

2025-09-02 08:20:20 406

转载 分享几个嵌入式软件日志技巧!

在嵌入式开发中,日志调试绝对是最常用、最实用的调试手段。好的日志系统不仅能帮你快速定位问题,还能让你深入理解系统的运行状态,甚至预防潜在的问题。今天就来分享几个日志技巧,让你从"printf小白"进阶为"日志大师"!2. 技巧二:精准定位 - 什么时候该打日志?3. 技巧三:日志开关 - 灵活控制日志输出。7. 技巧七:动态过滤 - 实时调整日志输出。6. 技巧六:格式统一 - 结构化日志信息。4. 技巧四:时间戳 - 精确的时序分析。5. 技巧五:日志级别 - 分层管理信息。几个受欢迎的嵌入式开源项目。

2025-09-02 08:20:20 46

转载 2025嵌入式开发前景的几个方向!

2025 年,嵌入式行业仍然热度不减,STM32、RTOS、IoT、边缘AI、车载电子……到底哪个方向最值得学?Yocto / Buildroot、uboot、kernel、设备树、驱动开发、SPI/I2C/MIPI调试。STM32CubeIDE、HAL库、FreeRTOS、UART/I2C/SPI、ADC、DMA。AutoSAR、CAN/LIN、功能安全(ISO26262)、MCU通信、车规级软件架构。选对方向,才能少走 2 年弯路!14k~30k+,大厂车厂需求大,如比亚迪、华为车 BU、小鹏、理想。

2025-09-01 20:00:00 304

转载 分享一个协同多任务处理库

大多数情况下,你不需要担心并发处理的问题(竞争、死锁、活动锁、资源共享等),协作处理的事件是通过设计来处理这些问题。Task Scheduler是一款适用于Arduino, ESPx, STM32和其他微控制器的协同多任务处理库。做嵌入式开发不能只想着裸机,有些小项目确实用简单裸机实现就可以了,但长期来说,我们还是要“做大做强。它是协作多任务(任务调度)的轻量级实现,也是抢先式编程和FreeRTOS等框架的简单替代方案。”,所以,要么上RTOS,要么有框架思维。微信公众号 | 嵌入式专栏。

2025-09-01 08:13:21 61

转载 为什么链接器能“预言”程序运行时地址?

程序在真正的运行起来后由加载器将可执行程序(ELF)加载到操作系统分配的虚拟地址空间中,然后操作系统为虚拟地址空间分配真正的物理内存(现代操作系统会将这一过程推迟到程序真正访问该虚拟内存的那一刻),此时才会真正确定程序的物理内存地址。这种机制聪明之处在于:链接器、操作系统和硬件(MMU)各司其职,通过约定和分工,实现了看似不可能的任务——在程序运行前就确定其内存布局,这正是现代计算机系统中抽象力量的完美体现。操作系统保证,在进程的生命周期内,其虚拟地址空间的布局规则是稳定且一致的。

2025-08-31 20:01:52 52

转载 单片机OTA升级中的A/B双分区:经典方案与实现逻辑

固件存放在外部 QSPI/OSPI Flash,Bootloader 校验后可直接 XIP 启动,或拷贝到内部。升级时,把新固件写到非活动区,重启后 Bootloader 根据控制标志选择启动 A 或 B。当前运行 A,新固件先写入 B,重启时 Bootloader 把 B 拷贝覆盖 A,再启动。建议双份保存,带自校验。Over-the-Air ,空中下载,也就是远程升级的意思。设备的必要功能,就连很多几块钱的电子产品,都具备了这个功能。:先写数据,最后写头信息,避免“半成品”被误启动。

2025-08-30 20:01:59 155

转载 为什么芯片原厂不卖芯片,要授权代理商来做这个事情?

国产芯片的技术支持很多时候靠代理商,甚至你反馈一个Bug,对方可能觉得:是你自己不会用,也有一种可能就是他们自己也不清楚。国产芯片的文档往往写得很简略,甚至部分资料保密,工程师得自己摸索,或者靠代理商提供支持。代理商就相当于"蓄水池",市场好的时候多卖点,市场差的时候就自己消化库存,原厂就不用直接承担这个风险了。不知道大家有没有过这样的疑问,咱们买芯片很多时候都会通过芯片代理商,而不是直接通过芯片原厂,为什么呢?说到底,这就是芯片行业的生存法则,没什么高深的理论,就是怎么省钱、怎么降低风险、怎么赚钱的事。

2025-08-30 20:01:59 112

转载 几个受欢迎的嵌入式开源项目

嵌入式开源项目GitHub有很多,今天就来分享几个很受欢迎的嵌入式开源项目,既有实用的软件模块,也有完整的硬件项目!TinyGameEngine - 基于STM32的游戏开发框架。ESP32-IoT-Platform - 物联网平台。CanBus-Triple - CAN总线分析仪。PowerManagement - 低功耗管理。MultiButton - 多按键处理库。StateMachine - 状态机框架。SmartClock - 智能时钟。MusicBox - 音乐盒项目。:OBD-II协议分析。

2025-08-29 20:02:20 88

转载 在深圳的三天,我干了些什么?

逛展会,和圈内认识的老师、网友见面交流,和飞凌嵌入式三位同事吃饭、看无人机灯光秀等。早上去了一会儿【深圳国际电子展暨嵌入式】展会,和几个展位的老板/朋友道别。然后去了深圳另一个(宝安)会展中心,这个会展中心大很多,展会的人也超多。继续逛展会,直播[云参展],拍了两个“看点”视频,晚上约了【创龙科技。:嵌入式Linux 的作者发哥,还简单打了一会儿篮球。吃了午饭去【华强北】逛了逛这个全球最强的电子市场。时间过得好快,愉快的三天,就这样子结束了。下午5点多就去赶飞机,回成都了。

2025-08-29 20:02:20 54

转载 有奖直播 | MPU开发板及视觉AI的内容

是发展最快的嵌入式人工智能学科之一,它与AI增强型语音工具和实时分析相结合,成为快速收集、处理和训练海量数据的手段。同时,AI解决方案端侧部署的发展趋势有力推动了嵌入式视觉AI解决方案的需求。作为嵌入式MCU/MPU解决方案的佼佼者,瑞萨一直致力于帮助广大客户充分挖掘并利用AI的巨大潜力。具备出色的图像处理能力,从而大幅提升自动化工厂设备、机器人控制、运输系统以及多种终端应用的精确度。瑞萨RZ/V2H AI MPU、DRP-AI技术及开发实例。基于瑞萨RZ/V2H MPU的核心板及开发板。

2025-08-27 08:05:27 49

原创 深圳行,第一天!

从成都到深圳一趟还是不容易,不过这次出行是电子展主办方给我报销机票和住宿,是的,你没听错,因为平时给他们宣传推广电子展相关的内容,所以你懂得!一门心思搞技术,有时候脑袋就不够灵活,甚至郁闷,有机会出来走走,和同行交流一下也是一件好事!搞技术的人,比较宅,思维也比较局限,大多时候只想到一个点,其实决绝的bug办法可能有很多种!最后,还有想来的朋友,可以到【嘉年华1L66】这个区域来找我吹吹牛,如果我不在,可以微信我!,我以为大多数人都在加班,没想到这个无人机灯光秀,现场的人直接爆满,几条街都堵的水泄不通,

2025-08-27 08:05:27 251

转载 总线CAN和CANFD通信协议区别

CANFD在保持CAN协议基本特性的同时,增加了一些新的特性,主要是在数据传输速率和数据长度上的增强。假如有两个CAN通讯节点,在同一时间,一个输出隐性电平, 另一个输出显性电平,类似I2C总线的“线与”特性将使它处于显性电平状态,显性电平的名字就是这样来的,即可以认为显性具有优先的意味。如下所示的图中的是遵循ISO11519-2标准的低速、远距离“开环网络”,它的最大传输距离为1km, 最高通讯速率为125kbps,两根总线是独立的、不形成闭环,要求每根总线上各串联有一个“2.2千欧”的电阻。

2025-08-26 08:30:46 216

转载 揭秘“假八层”叠层结构:六层板也能拥有八层的性能?

假八层核心是**“加一块无铜的芯板”**,避免层间树脂过厚导致滑片风险。在六层板设计中,为了优化信号布线和控制阻抗,设计人员有时会采用一种。比八层板便宜,比普通六层板稍贵,在性能与成本之间取得平衡。假八层=让六层板拥有八层的性能,节省成本又提升设计自由度!第三层和第四层拉开距离,减小耦合干扰,提升信号质量。:用于层间粘结,具有一定流动性,加热后可固化。在传统的六层板1.6mm叠层中,我们经常会面临。,又不影响信号传输。有效控制阻抗,适应小器件、高速差分走线。(如第三层横向,第四层纵向),防止串扰。

2025-08-24 18:03:07 105

转载 瑞萨成为今年MCU卷王,再次发布MCU新品

DLMS(设备语言报文规范)作为智能计量领域的核心通信标准,协议支持电力、水、气等多能源计量场景,通过统一的国际标准(IEC 62056系列)和对象模型(COSEM),实现不同制造商的计量表、集中器等设备数据交换。低工作电压、低功耗:RA4C1的工作电压低至1.6V,待机电流低至1.7µA,并具有多种低功耗模式,用户能够根据应用要求来动态优化功耗/性能;-M33内核,提供低功耗/低电压操作、LCD段码式显示和高级安全功能,满足表计DLMS-SUITE2安全规范,专为智能表计应用开发。

2025-08-23 08:03:24 81

转载 同事买的手机电池修复神器,拆开后傻眼了

"说着掏出那个光秃秃的电路板插在充电宝上,蓝光顿时照亮了他的苦瓜脸:"看,买一送一,还附赠蹦迪氛围灯呢!空气瞬间凝固,我和沈金斌同时低头,看见一块巴掌大的单面电木板上,孤零零焊着两个LED灯泡,除此之外空空如也,干净得像我上个月的钱包。"所以..."我抚摸着笑出来的八块腹肌,"你们每天虔诚供着的'黑科技',其实就是俩灯泡加心理作用?"我捏着这块价值七十元的"高科技",忍不住笑出声,"这届产品不行啊,连个电阻都舍不得焊?"“对对对,我三婶家的灭鼠器也是同样的设计,只要灯亮起来就能灭鼠。

2025-08-23 08:03:24 92

原创 瑞萨嵌入式开发 | e2 studio中添加 Keil AC6 编译器

如果你Keil自带的AC6版本不合符你的需求,你可以下载其他版本的AC6。有很大一部分开发者(包括初学者)都是在 Keil 环境下进行开发,而 Keil 下的使用 AC 编译器也自然用的比较多。,Keil 就像 Arm 的亲儿子一样,特别是 Keil 针对 Arm 内核单片机的编译器AC(e2 studio这几年在快速更新,经过了很多版本的迭代更新,编译器也是在不断升级和变化。添加AC6的路径,就是上面你安装的路径(Keil MDK 下 AC6编译器的默认安装路径。

2025-08-22 20:00:00 1051

原创 瑞萨嵌入式开发 | 瑞萨MCU开发常用工具

如果你用第三方IDE(Keil 、 IAR等),就可以安装RASC来生成Keil 、 IAR的软件工程。近两年,为大家分享了很多关于瑞萨MCU的文章,同时也收到了很多朋友的关注。RFP是瑞萨针对自家MCU/MPU开发的一款支持开发和批量生产阶段写入Flash的软件,简称RFP编程工具。是瑞萨自家的集成开发环境(IDE),也是瑞萨推荐用于开发瑞萨MCU的工具。IAR和Keil类似,是一款通用的集成开发环境,支持市面上大部分MCU。空白检查、擦除、写入、验证、读取、校验和、闪存选项的设置和获取。

2025-08-22 20:00:00 858

原创 Keil紧急修复bug,距离上次升级才20天

还有就是这个版本功能相对完善一点,我这几年做项目,基本都是用这个版本,也没有经常出现各种问题(相对还算稳定吧)。但,因为是软件,都有可能存在bug,这么多年,我也基本都是用 Keil 自带组件进行调试,也是偶尔会遇到仿真调试的出现各种问题。这个问题,我也摸不透具体原因,经过我这么多年的使用,以及各种“测试”,我感觉很大程度与 Windows 操作系统有关系。但是,根据我的经验,重启软件或操作系统是一种解决办法(实在不行,就换 Keil版本,或重装系统)。),还有可能是因为刚升级,服务器某些方面的原因。

2025-08-22 09:03:01 678

转载 最强Cortex-M85单片机,测评免费送开发板!

CPKEXP-EKRA8X1 是适用于CPK-RA8x1系列核心板的通用扩展板,扩展板上提供了和EK-RA8x1类似的接口,其中部分接口和EK-RA8x1管脚兼容,可以方便地评估RA8x1 MCU的大部分功能。所有的扩展接口都可以作为GPIO扩展来使用,但在管脚分布上,同一外设功能的I/O尽量分布在一起。1. 产品申请:请认真填写申请理由,提交有创意的开发计划,大致的实现过程和应用场景,展示丰富的过往项目经验。2. 若因突发状况,无法继续完成试用,以及收到套件的15天内,若没有更新内容,请主动协商退还。

2025-08-21 20:04:59 72

转载 Multisim:硬件工程师必备的电路仿真利器

如果你经常设计放大器、滤波器、电源电路,或者调试数字逻辑(如FPGA外围电路),Multisim 能帮你省去很多麻烦。,包含电阻、电容、电感、晶体管、运放、数字IC等常用器件。,如万用表、示波器、信号发生器、逻辑分析仪等,方便调试。:配合电子类课程(如模电、数电、电力电子)进行仿真教学。最右边是工具,包含万用表、示波器、逻辑分析仪......3、用示波器观察输入/输出波形,检查放大倍数、失真情况。,支持直流分析、交流分析、瞬态分析、傅里叶分析等。1、搭建MOSFET、电感、二极管、电容等。

2025-08-21 20:04:59 199

转载 单片机项目中 void 型指针的高阶用法

这里就比较巧妙的利用了void *指针的特性。因此,要获取由void指针指向的数据,需要使用在void指针位置内保存的正确类型的数据进行类型转换。抽象I2C/SPI EEPROM,将其对上层的调用接口统一,那么如果你的系统原本是存储在I2C EEPROM中,现在做一个新项目,你需要使用另外一种SPI接口的EEPROM,则只需要实现相应的底层处理函数即可。那么怎么做到底层抽象呢,我们可以利用函数指针定义统一的接口,具体部署时,只需要将实现函数的指针赋值给对应的函数指针即可,这样就做到了接口的抽象统一。

2025-08-20 20:00:00 73

转载 嵌入式误操作一键撤销的优雅方案

它将请求封装为独立对象,允许用户参数化客户端对象,并支持请求排队、记录请求日志、撤销操作等高级功能。嵌入式中有些需求需要按组设置一些配置参数,如果误触发了重置配置参数的操作,还需要能撤销为上一次的设置。例如,一个配置参数管理的场景:亮度、音量、温度这三个参数的管理。这个例子中具体命令只有一个:重置配置命令。:要求命令对象执行请求,通常会持有命令对象,可以持有很多的命令对象。创建一个批量设置命令:继承命令接口,并实现对应批量设置命令的逻辑。:将一个接收者对象绑定于一个动作,调用接收者相应的操作。

2025-08-20 08:20:20 68

转载 嵌入式代码,一个函数写多少行才合适?

你一个项目所有函数都低于50行代码,是可以的。反过来,你一个函数超过一万行代码(只有main函数),如果代码没问题,也能编译通过,也是可以照常工作。代码模块化,就是把要实现的细小功能模块,用一个函数封装起来,也就牵涉到本文说的函数代码行数少的问题。所以,一个函数代码函数有点多,不要怀疑自己,在“压缩”代码行的同时,规范法代码就OK。纵观这些实现模块化的代码,你会发现,每个函数的代码行数都不多,基本保持在50行一下。当然,并不是所有的模块化代码行数都低于50行,也有100行的,也有超过200行的,

2025-08-19 20:00:00 61

转载 STM32边缘AI软件工具有哪些?

这是一款免费的AutoML低代码工具,面向时序数据(如加速度计、陀螺仪数据),可引导用户轻松找到符合需求的适配AI模型,而无需深度编程即可自动生成优化的机器学习算法,适合快速开发节点端的AI应用,如设备状态监测、运动识别等。用户可直接访问平台,简化边缘AI开发流程,提升模型部署效率。X-LINUX-AI是面向STM32 MPU的嵌入式Linux系统开发套件,支持时间序列、音频、视觉数据处理,集成Linux AI框架及应用示例,可助力开发者在STM32 MPU上部署AI模型,满足高扩展性应用需求。

2025-08-17 08:01:07 94

转载 手搓一个UART串口,难度有多大

在UART通信中,数据以字节为单位发送,这意味着每次有8位数据依次从设备A的TX引脚传输到设备B的RX引脚,为了确保接收端能正确地接收数据,在每个字节的两端添加了逻辑0(低电平)的起始位和逻辑1(高电平)的停止位。在UART中,每个符号由1位数据表示,因此UART中的波特率与比特率相同。UART发送数据的时候只需要实例化发送功能部分设计,需要UART接收数据的时候只需要实例化接收功能部分设计,例如本设计中FPGA驱动UART模块接收电脑串口调试助手发出的数据,所以我们就只需要实例化接收功能部分设计即可。

2025-08-16 08:03:01 94

转载 嵌入式C语言枚举最后“end“有啥作用?

所以,如果我们的代码中只使用低于 256(8位的范围是0~255) 的值,我们的枚举应该是 8 位宽,也就是一个字节,而后面的。所以这里为了避免编译器的优化,以及不同的硬件平台和不同编译器,从而导致枚举分配内存空间的变化,所以上述增加了一个。最近看到这个问题,一开始,也有一些疑惑,后面查了一些资料,对于这个问题,简单的说一下我的看法。看来虽然是一个很小的知识点,但是这中间的坑还真不少,好了,本期的文章就到这里了,我们下期再见。但是在嵌入式编程中需要注意,这里我查了一下,IAR的编译器默认会执行。

2025-08-15 17:32:56 48

转载 嵌入式C语言枚举最后“end“有啥作用?

所以,如果我们的代码中只使用低于 256(8位的范围是0~255) 的值,我们的枚举应该是 8 位宽,也就是一个字节,而后面的。所以这里为了避免编译器的优化,以及不同的硬件平台和不同编译器,从而导致枚举分配内存空间的变化,所以上述增加了一个。最近看到这个问题,一开始,也有一些疑惑,后面查了一些资料,对于这个问题,简单的说一下我的看法。看来虽然是一个很小的知识点,但是这中间的坑还真不少,好了,本期的文章就到这里了,我们下期再见。但是在嵌入式编程中需要注意,这里我查了一下,IAR的编译器默认会执行。

2025-08-15 17:32:56 43

STM32F4_TIM编码器模式配置

现在好像下载资源分最少都要两个了··· 提供的代码为一个使用标准外设库编写的简单Demo工程,该工程主要配置TIM的编码器模式,通过定时读取编码器的方向(DIR),和计数(CNT),并通过串口打印出来。 其中里面附带一个工程(用于模拟编码器AB相波形的工程)

2017-12-19

神舟III号各项uCOS2.92例程

此压缩文件包含基于神舟III号(STM32F103ZE Cortex-M3)上各项uCOS2.92(最新版本2013年)的实例。多任务操作 通信、信号量、互斥锁、事件标志、消息邮箱、消息队列、内存管理 以及uCOS2后面添加的软件定时器! 已经将uCOS系统注释为中文版了!

2013-07-28

uCOS2.92_MSP430F149

uCOS2.29最新版本移植到MSP430F149上面的工程代码!开发工具为IAR,创建了4个任务。

2013-07-15

uCOS2_STM32F3_CortexM4

此文件是将uCOS2.92系统成功移植STM32F303VC(Cortex-M4内核)上运行了四个任务。 是一个完整的工程包,下载来可直接运行,开发工具为MDK-ARM.

2013-07-28

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除