0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

单片机工程师的思考:平凡的探索 不平凡的收获

工程师人生 来源:网络整理 2018-03-07 15:36 次阅读

程序员的桌面,一台电脑足够。

嵌入式工程师,电脑+万用表+示波器+电烙铁+各种电源线数据线+老虎钳+螺丝刀+美工刀+焊锡丝+各种舍不得扔又好像没什么用的电子垃圾。收拾干净挺难的,而且弄整齐了工作起来未必顺手。

工作几年了,先交代点背景。

我和我的同事,也自称为嵌入式工程师,不过只搞软件,画板子焊元件这些活儿我不会做,能用个示波器万用表啥的。

芯片方面,没有用过单片机,一开始工作接触的就是MPU或者SoC,mips系arm系都用过不少。

做过的系统,有带屏幕需要GUI的也有不带的;有以while(1) 开始的裸奔系统,也有uC/OS II 这样轻量级的,也有芯片商不知道在eCOS还是什么上面定制修改的。uCLinux当初咱也花功夫学了,结果还没用上,新出的一批芯片都是带MMU的了,直接跑linux了。再后来,android 烂大街了。

题主的问题可以再修改一下,补充一下说明,也许我可以更有针对性地回答。

你所说的生活,我觉得应该是指工作状态吧?你所提到的程序员应该是专指PC软件或者web程序员吧?其实我们嵌入式软件工程师也是程序员啊。

好,现在回答你的问题:嵌入式 软件 工程师 的工作状况是怎样的,很大程度上取决于你在一个什么样的公司,与你合作的同事水平怎么样,公司的技术架构和积累是怎么样的,项目所采用的方案是怎么样的。

1. 硬件工程师同事的水平会决定你的工作状态

如果硬件工程师靠谱,照着demo板改改画出来的板子,打板回来,焊好元件,烧上demo程序,上电就能正常跑起来。否则,软件就放假慢慢等着吧。

如果硬件粗心,把线连错了,漏接了,你也许不得不自己从头看datasheet,挨个检查信号,几天的时间也许就这么过去了。发现问题要几个小时几天,解决只需要几秒钟或者几分钟。问题解决得差不多了,板子也被飞线铺满了。

还有一次,我们两个同事,坐飞机到芯片公司总部出差请求支援,结果被人家发现只是一根排线虚焊了呀,丢死人呀。

后来我长心了,开始软件调试工作前一定要检查硬件。

2. 单位早期的系统架构设计技术人员水平会决定你的工作状态

曾经一家公司,一个while(1)开头的裸奔系统,带自己设计的消息机制,带没有DC的GUI,还自己扩展了一套中文编码。在这套系统上有一系列的产品,每个新产品为了缩短开发时间,都沿用已有产品的代码,又不敢做大的改动,应届生在上面添加了新的糟糕的代码,又遗传到下一个产品中。每个新产品的bug数都在3000左右,软件开发人员都痛苦无比。这种状况一直到公司请来一个高水平的CTO,果断引入uC/OS II 系统,移植MiniGUI,全面采用GBK和Unicode才有所改善。

你想知道后来怎么样了吗?后来当然是这套全新的系统又被一帮低水平的程序员给改乱了呀,又有一批新手接过了这套让人痛苦的历史包袱啊。

3. 公司财力、领导的眼光和气魄决定了你的工作状态

公司有钱,或者领导有决断,买参考板,买几万块的调试器,买个好用的示波器、逻辑分析仪,不知道能提高多少工作的效率。一帮软件吭哧吭哧加串口打印,调试几个星期或一两个月,问题还不一定能解决,发的工资、浪费的时间、错过的市场机会,不也是钱吗?

4.方案公司的方案以及支持力度决定了你的工作状态

如果采用的芯片比较简单,尤其早期的芯片,有的还不带MMU,不能采用linux或者android这样的高级系统,甚至不能移植uC/OS 这样的多线程系统,一些像低电检测这样的任务实现起来是很别扭的。现在的芯片都强大多了,很多以前在旧平台上引以为豪的奇技淫巧都不需要了。

不同公司方案的风格也很不一样。我的总体印象,美国的芯片给你开放的东西很多,你可以做很灵活的定制开发,遇到问题你有能力可以自己尝试解决。但是如果不是大客户,支持力度很有限。***的芯片方案基本上把什么就给你做好了,你换个logo做成产品,跟别家打价格战去吧;但是很多模块代码是不开放的,你在上面能做的东西很有限,遇到问题需要上报,然后苦苦地等他们解决,发sdk新版本,也是很让人头疼的事。国内的方案接触过的不多,用过一些小公司的小芯片,参差不齐,大部分给的datasheet显得非常业余。

现在我的工作基本上都采用linux系统,总体印象就是:

你需要懂的东西非常多:计算机架构,指令集特征,启动模式,io,i2c,spi总线,bootloader,kernel,rootfs,工具链,交叉编译。

但是你能做的事情其实又很少:你几乎没有机会自己写bootloader,从头制作整个系统。大部分工作人家都已经替你做好了,你只需要简单地修改就可以了。

你所能做的工作和PC上软件开发的差别越来越小,内存越来越大,flash或者sd卡空间越来越大,对内存和存储空间斤斤计较越来越没有必要。在嵌入式设备上用python或者其他高级语言开发也越来越不稀奇了。更何况,有的平台会提供非常方便的模拟器,你几乎可以将大部分应用逻辑都在模拟器上开发调试好,你有时都会忘了你是为嵌入式设备在开发程序。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 电子工程师
    +关注

    关注

    251

    文章

    758

    浏览量

    95222
  • 单片机
    +关注

    关注

    5998

    文章

    43958

    浏览量

    620677
收藏 人收藏

    评论

    相关推荐

    单片机如何通过代码控制硬件:一名工程师的分享

    今天跟大家聊聊单片机是怎样通过代码来操控硬件的。作为一名单片机工程师,我们平时的工作就像是给单片机编写“指令集”,让它按照我们的意图去驱动各种硬件设备。
    的头像 发表于 03-06 14:46 480次阅读
    <b class='flag-5'>单片机</b>如何通过代码控制硬件:一名<b class='flag-5'>工程师</b>的分享

    企业老工程师和高校老师有啥区别

    电子工程师硬件
    电子发烧友网官方
    发布于 :2024年02月28日 17:50:00

    如何搞崩一个硬件工程师心态?试试对ta说这几句

    硬件工程师
    扬兴科技
    发布于 :2024年02月20日 18:05:49

    【2023电子工程师大会】单片机/RTOS/Linux全栈工程师

    【2023电子工程师大会】单片机/RTOS/Linux全栈工程师修炼之路ppt
    发表于 01-03 16:31 11次下载

    锂电材料产业拐点何时将至?

    穿越不平凡的2023年,产能过剩的阴影将继续笼罩2024年。
    的头像 发表于 12-21 14:25 291次阅读

    【热招】苏州,单片机工程师

    单片机工程师】 3年及以上经验,要求有智能产品经验。 岗位职责: 1、根据MRD,与产品部等部门的需求,负责对新开发的产品进行可行性分析,主要负责分析产品的软件可实现性; 2、根据产品需求,完成
    发表于 11-28 14:02

    FPGA工程师需要具备哪些技能?

    、实践和不断的提升才能够达到专家级别。 结束语 FPGA技术的不断发展,为数字电路设计和系统集成提供了更广泛的应用场景。作为FPGA工程师,需要不断探索和学习,跟随技术的发展,并将新技术
    发表于 11-09 11:03

    51单片机工程模板创建方法

    本教程将向大家介绍如何使用KEIL C51 软件以及如何创建51 单片机工程。通过本教程的学习,让大家创建属于自己的51 单片机工程模板,为后面学习51 单片机编程做好铺垫。
    发表于 07-15 15:27 3001次阅读
    51<b class='flag-5'>单片机工程</b>模板创建方法

    电子工程师必看书籍推荐#知识分享 #知识科普 #交流#硬声创作季

    电子工程师
    也许吧
    发布于 :2023年05月24日 10:47:34

    平凡的岗位,不平凡的坚守!

    五月是温暖的季节,万物生长、百花齐放。 五月,也是最光荣的劳动者的季节!向假期仍坚守在工作一线的所有劳动者和华秋全体人员说声,您辛苦了!
    发表于 04-28 12:08

    礼赞五一 | 平凡的岗位,不平凡的坚守!致敬每一个努力奋斗的电子工程师!

    停止…… 他对电子工程师这一岗位的坚守,得到行业和社会的高度认可,被深圳市总工会授予深圳市五一劳动奖章。 传承榜样力量,劳动铸就未来 平凡的岗位,不平凡的坚守!传承榜样力量,劳动铸就未来!五一劳动节
    发表于 04-28 10:08

    RK3288主板平凡出现触摸屏有现示点不动问题!

    对于RK3288主板出现同样问题太平凡,我想和大家分享一个我的看法,这块主板功能强大,支持安卓糸统。但是同一问题太多,可能是这板的触控IC芯片质量不行,或RK3288主处理芯片发热严重,散热不好,希厂家和有懂这主板的工程师出来解决。相互学习。
    发表于 04-28 08:55