AI浪潮下嵌入式软件开发如何拥抱AI:VSCODE + MarscodeAI插件+Embedded IDE

AI浪潮下嵌入式软件开发如何拥抱AI:VSCODE + MarscodeAI插件+Embedded IDE

一、引言
AI浪潮席卷各个领域,各领域都在探索与AI技术深度融合以创新并提升效率。嵌入式软件开发领域同样面临此机遇与挑战。VSCODE作为流行的开源代码编辑器,与MarscodeAI插件、eide相结合,为嵌入式软件开发的AI融合提供了新思路与方法。
二、VSCODE在嵌入式软件开发中的基础地位
(一)多功能代码编辑
VSCODE代码编辑功能强大,支持多种编程语言,这对嵌入式软件开发意义重大。嵌入式软件常涉及C、C++等底层语言编写,VSCODE的语法高亮、自动补全和格式化功能可提高代码编写效率与准确性。例如编写ARM架构嵌入式系统启动代码时,语法高亮助开发者区分指令集和数据类型,自动补全可减轻记忆负担,快速输入函数名和变量名。
(二)丰富的插件生态系统
VSCODE的插件生态系统是一大优势。除AI插件外,还有众多嵌入式开发插件,如调试插件、版本控制插件等。这些插件可与AI插件协同工作,全方位支持嵌入式软件开发。例如调试嵌入式Linux系统应用程序时,可同时用AI插件获取优化建议,用版本控制插件确保代码迭代的稳定性和可追溯性。
三、MarscodeAI插件:为嵌入式软件开发注入AI能力
(一)智能代码补全与优化
MarscodeAI插件用AI算法分析代码,提供更智能的代码补全功能。在嵌入式软件开发中,能依上下文和项目需求更精准预测开发者要输入的代码片段。例如开发传感器数据采集处理的嵌入式程序时,插件可根据传感器初始化代码智能补全后续数据处理算法代码。它还能对已有代码提出优化建议,如发现循环冗余计算并给出改进方案,这有助于提升嵌入式软件性能,在资源受限的嵌入式设备上可减少内存占用和执行时间。
(二)代码错误检测与修复
MarscodeAI插件能检测嵌入式代码错误。嵌入式软件的特殊性在于小错误可能致系统崩溃。插件利用AI模型对代码语义分析,可发现指针越界、内存泄漏等常见错误,且不仅指出错误还提供修复建议。例如动态内存分配的嵌入式程序有内存泄漏风险时,插件可建议添加内存释放代码,提高软件稳定性和可靠性。
四、eide:嵌入式集成开发环境增强
(一)项目管理与构建自动化
eide负责嵌入式软件开发的项目管理与构建自动化,可与VSCODE和MarscodeAI插件无缝集成。项目管理上,eide能便捷组织嵌入式项目文件结构,管理不同硬件平台和软件版本。例如支持多微控制器的嵌入式项目,eide可清晰划分不同硬件平台的代码目录和配置文件。构建自动化方面,eide根据项目配置自动构建软件,减少手动构建错误。结合AI技术时,可利用AI插件分析结果优化构建过程,如根据代码复杂度和优化建议调整编译参数以提升性能。
(二)硬件抽象与设备驱动支持
eide提供硬件抽象层,方便嵌入式软件开发人员与不同硬件设备交互。在AI浪潮下,可与AI技术结合实现更智能的硬件管理。例如用AI算法监测和预测硬件设备运行状态,提前发现故障并在软件中采取措施。eide对设备驱动的支持也可借AI技术优化,如自动生成部分驱动代码或优化现有代码,提高设备运行效率和兼容性。
五、三者结合的工作流程
(一)先安装vscode,作为嵌入式开发,一直用keil或者iar来编译单片机,只有开发嵌入式Linux的时候才会用工具链+编辑器(understand或者sourceinsight),没有vscode的先安装,直接区vscode官网免费下载安装即可。
安装好之后打开

在这里插入图片描述

接下来安装插件

在这里插入图片描述

安装这些插件即可,其他的按需添加也可以。
Github copilot需要使用github账号或者微软账号,我一般不用,
点开Marscode AI,如果第一次点开会提示用抖音扫码,用抖音app扫一下就行了,点开如下:

在这里插入图片描述

再点开Embedded IDE,选择import,

在这里插入图片描述

选择keil ,注意只支持keil5及以上的工程

在这里插入图片描述

选择arm

在这里插入图片描述

选择自己的keil工程文件

在这里插入图片描述


在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


在这里插入图片描述

添加完成后的eide的工程

在这里插入图片描述

编译试试看

在这里插入图片描述

完成
为了方便搜索代码,可以再工作区里面添加目录

在这里插入图片描述

Add folder to workspace

在这里插入图片描述


在这里插入图片描述


在这里插入图片描述

(二)代码编写与AI辅助
代码编写时,MarscodeAI插件发挥作用,实时分析输入代码,提供智能补全、优化建议和错误检测等功能。开发者根据建议调整代码,同时VSCODE确保代码格式正确、易读。

在这里插入图片描述

有三个模型可以切换

在这里插入图片描述


在这里插入图片描述


在这里插入图片描述

还支持文件分析和整个工程分析

在这里插入图片描述

还内置里ai指令,注释,分析,还有写单元测试用例

在这里插入图片描述

(三)构建与调试
代码编写完成后,eide构建项目。构建中根据AI插件优化建议调整构建参数。构建完成后如需调试,VSCODE调试插件结合eide硬件支持,方便调试嵌入式软件
六、面临的挑战与解决方案
(一)AI模型的准确性
MarscodeAI插件有效性取决于AI模型准确性。但嵌入式软件开发复杂多样,AI模型可能误判。解决方法是不断优化模型,收集更多嵌入式代码样本训练,结合人工审核机制筛选验证插件建议。
(二)系统资源占用
嵌入式设备资源有限,运行带AI功能的开发工具可能增加资源占用。可优化AI算法,在保证功能前提下减少内存和计算资源需求。如采用轻量级AI模型或量化压缩模型,eide在构建时根据目标设备资源情况决定是否启用某些AI功能。
(三)兼容性问题
VSCODE、MarscodeAI插件和eide需保持良好兼容性。各工具更新换代可能产生兼容性问题。需建立版本管理和测试机制,更新工具时测试整体兼容性,及时修复兼容性错误。
七、结论
AI浪潮下,嵌入式软件开发通过VSCODE + MarscodeAI插件+eide的组合能更好拥抱AI技术。该组合带来智能代码补全、错误检测修复、项目管理优化等优势。虽面临挑战,但不断优化改进有望进一步提升嵌入式软件开发效率和质量,推动嵌入式系统在更多智能应用场景发展。

Read more

【MySQL】第八节—表的增删改查,吃透这篇就够了(下)

【MySQL】第八节—表的增删改查,吃透这篇就够了(下)

Hi,我是云边有个稻草人-ZEEKLOG博客个人主页,今天结束表的增删改查,继续! 《MySQL》本篇文章所属专栏—持续更新中!   目录 三、Update 3.1【将孙悟空同学的数学成绩变更为 80 分】 3.2【将曹孟德同学的数学成绩变更为 60 分,语文成绩变更为 70 分】 3.3【将总成绩倒数前三的 3 位同学的数学成绩加上 30 分】 3.4【将所有同学的语文成绩更新为原来的 2 倍】 四、Delete 4.1 删除数据 【删除孙悟空同学的考试成绩】 【删除总分倒数第一的同学信息】 【删除整张表数据】 4.2 截断表 五、去重数据表,插入查询结果 六、

By Ne0inhk

Spring AI

目录 基本概念 什么是 AI 模型(Model) 大语言模型  (LLM) 提示词 (Prompt) 词元(Token) Spring AI 是什么 快速入门 环境要求 申请 API Key 项目创建 接口编写 核心接口 ChatModel  ChatClient 消息类型 SystemMessage UserMessage AssistantMessage 输出格式 结构化输出 流式输出 SSE 协议介绍 SSE 数据格式 data event id retry SSE 使用示例 Flux Advisors 基本概念 什么是 AI AI:也就是 人工智能(

By Ne0inhk
使用 VS Code 连接 MySQL 数据库

使用 VS Code 连接 MySQL 数据库

文章目录 * 前言 * VS Code下载安装 * 如何在VS Code上连接MySQL数据库 * 1、打开扩展 * 2、安装MySQL插件 * 3、连接 * 导入和导出表结构和数据 前言 提示:这里可以添加本文要记录的大概内容: 听说VS Code不要钱,功能还和 Navicat 差不多,还能在上面打游戏 但是没安装插件是不行的 发现一个非常牛的博主 还有一个非常牛的大佬 提示:以下是本篇文章正文内容,下面案例可供参考 VS Code下载安装 VS Code下载安装 如何在VS Code上连接MySQL数据库 本篇分享是在已有VS Code这个软件的基础上,数据库举的例子是MySQL 1、打开扩展 2、安装MySQL插件 在搜索框搜索 MySQL和 MySQL Syntax,下载这三个插件 点击下面的插件,选择【install】安装

By Ne0inhk

Claude Code、OpenClaw、OpenCode 架构对比 — 及 SkillLite 的借鉴与取长补短

一、概述 当前 AI 编码 Agent 有三条主流路线:Claude Code(闭源商业)、OpenClaw(开源多通道网关)、OpenCode(开源编码 Agent)。SkillLite 在深度研究上述框架之后整合各个框架的长处,取长补短,构建:开源 + 本地 + 安全沙箱 + 引擎级自进化。本文从架构视角对比四者,并说明 SkillLite 如何借鉴三者之长、补三者之短。 维度 Claude Code OpenClaw OpenCode SkillLite-agent 定位 闭源商业 AI 编码助手 开源多通道 AI 网关 开源 AI 编码 Agent 开源安全自进化 Agent 引擎 技术栈 闭源(

By Ne0inhk