嵌入式底层的代码,还需要一步一步手写吗?

21ic电子网 2025-10-21 14:32
作者 | strongerHuang
微信公众号 | strongerHuang

经常都能看到网友说:现在 AI 工具这么聪明,写代码将来会被 AI 取代!

这几年 AI 的发展速度真的很快,就是一个小孩真正迅速长大一样。市面上出现了各种各样的AI工具,包括现在新推出的手机,基本都有 AI 功能(智能体),当然,少部分手机,比如国行苹果手机暂不支持。
嵌入式底层的代码,还需要一步一步手写吗?图1
很多嵌入式软件工程师其实也在用 AI 辅助写代码,包括我在内。但目前 AI 写出来的代码,很多还是不能直接使用的。

嵌入式代码,目前不容易被 AI 取代

相对互联网其他行业,嵌入式这行相对可能要特殊一点,代码的复制粘贴性没那么强,特别是底层的代码,嵌入式软件工程师相对就不容易被 AI 取代。


嵌入式底层的代码与硬件挂钩,硬件平台各种各样,换一个平台,代码或许就不能就正常运行了。


当然,不是说 AI 不能生成嵌入式底层的代码,很多“重复性”的代码,网上容易搜索到的代码,还是比较容易生成。比如:写一段51单片机串口发送的代码,基本上分分钟给你写出来。

#include <reg52.h>// 定义波特率相关参数(11.0592MHz晶振,9600波特率)#define BAUD_RATE 9600#define FOSC 11059200UL#define T1_RELOAD (65536 - FOSC / 12 / 32 / BAUD_RATE)// 初始化串口void UART_Init() {    TMOD &= 0x0F;  // 清除定时器1配置    TMOD |= 0x20;  // 定时器1工作在模式2(8位自动重装载)    TH1 = T1_RELOAD;  // 装载初值    TL1 = T1_RELOAD;    TR1 = 1;       // 启动定时器1
    SCON = 0x50;   // 串口工作在模式1(8位UART,允许接收)    ES = 0;        // 关闭串口中断(仅发送时可关闭)    EA = 1;        // 开启总中断(若需中断可开启)}// 发送单个字符void UART_SendByte(unsigned char dat) {    SBUF = dat;       // 将数据写入发送缓冲器    while (!TI);      // 等待发送完成    TI = 0;           // 清除发送完成标志位}// 发送字符串void UART_SendString(unsigned char *str) {    while (*str != '\0') {  // 循环发送直到遇到结束符        UART_SendByte(*str);        str++;    }}void main() {    UART_Init();       // 初始化串口
    while (1) {        UART_SendString("Hello, UART!\r\n");  // 发送测试字符串        // 延时一段时间(简单延时函数,实际应用需根据需求调整)        unsigned int i, j;        for (i = 0; i < 30000; i++)            for (j = 0; j < 10; j++);    }}


串口初始化UART_Init、发送一个字节(UART_SendByte)发送字符串UART_SendString,很轻松的就有了,不满足自己要求的地方,简单修改一下就OK了。

你会发现,这种简单的、通用的代码,容易 AI 生成。但牵涉到特定场景、特殊需求的代码,AI出来的代码是没法用的。


比如,你让AI 写一段指定某厂家的电机驱动代码,编码器检测转速的代码。你在AI代码基础上修改,花的时间可能自己从零一步一步开始都写好了,甚至写得更好。


哪些代码容易被 AI 取代?

上面说了,针对特定场景、特殊需求的嵌入式代码,AI是没办法直接生成的,还是需要一步一步手写。


但是,有很多嵌入式代码是可以用 AI 来写的,那种简单的、通用性的、模板化的、重复性的代码是推荐大家 AI 生成

嵌入式底层的代码,还需要一步一步手写吗?图2
除了 AI 生成代码,还有一些现成的、可直接拿来使用的库,也是推荐大家用在自己的项目中,毕竟从0开始造轮子还是比较费时间和精力,谁也不想早早就秃头了。

比如:Gitee、GitHub上有符合自己需求,且Star比较多的,还比如芯片厂家、模块厂家原厂提供的源码或库,这些都是现有的资源,就不要花太多时间精力去折腾了。除非学生,或时间充足的人,愿意投入精力也可以从0造轮子。
最后,建议大家一定要利用 AI 工具辅助写代码,同时,也不要恐慌嵌入式软件工程师被 AI 取代。
最最后,天天上班摸鱼、缺乏思考的这群小伙伴,AI 时代已来,你们还是要注意了,最先被取代的“名单在 AI 上已经能搜索出来了。



声明:内容取材于网络,仅代表作者观点,如有内容违规问题,请联系处理。 
嵌入式
more
邀请:【10月28日上海 10月30日杭州】TI嵌入式技术实验室和DLP®技术免费培训,即将开讲!ADAS|AIDSP|精密电机
分享几个嵌入式软件日志技巧!
国际先进!中科亿海微国产嵌入式FPGA IP核及EDA系统设计技术通过科技成果评价
嵌入式开发中几种实用的优化技巧
盘点嵌入式项目常见的几种管理模式
搜集了几个适合嵌入式的开源项目!
一个嵌入式项目,别小看那几块、几十块的硬件成本!
培养一个优秀的嵌入式工程师有多难?
25~100W |  苏州星迈创新招聘SLAM导航规划、SLAM定位、嵌入式软件工程师、软件算法架构师等岗位
嵌入式软件的解耦
Copyright © 2025 成都区角科技有限公司
蜀ICP备2025143415号-1
  
川公网安备51015602001305号