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

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

3天内不再提示

单片机程序员需要掌握哪些技能?实际面试考什么?工作中实际用什么?

j4AI_wujianying 来源:未知 作者:易水寒 2018-07-19 16:23 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

需要掌握哪些技能

需要了解并使用过几款常见的单片机

需要熟悉常见的硬件接口譬如 UART 、SPI 、I2C

需要了解一些传感器相关的知识,譬如声、光、磁、温、惯性器件

需要能看懂 datasheet 读懂芯片的操作规范,就是用代码对传感器的寄存器进行配置

能读懂原理图、看懂 PCB

会使用示波器、会分析电路

实际面试考什么

C语言基础知识,算法水题

聊天,聊项目、聊如何实现的

工作中实际用什么

我面试成功的机会都是来源于这些主要做单片机的公司,而且都是小公司,进入的团队也小,做的东西也是两三个人就可以搞定的事情。虽然我自认为写程序还可以,但是每次答算法水题都答不好,让我着实比较郁闷,虽然近期已经补充了不少相关知识了,但是我还是感觉如果一直做这些单片机嵌入式的项目,我可能永远都用不到这些算法知识。

很早以前我就知道这些,计算机数据结构及算法之于单片机程序开发就是水月镜花。而另外一种意义上的算法倒是很实用,比如早在我毕业之前就买过一本北航出的《嵌入式系统软件设计中的常用算法》这本算是很使用的一本工具书,很多方法在实际的嵌入式软件开发当中十分有效,我把这一类算法归为DSP,也就是数字信号处理,要处理单片机中的数据都是数字信号的数据,要对这些数据分析总结,处理之后是从传感器得到的信息,之后再使用控制器或通讯器对外界进行反馈

一点点感悟

我从事单片机开发这些年就是用这些技术一点点的做着一个又一个的不靠谱的项目,现在想想我一直在磨练自己的技术,然后丝毫没有用在成型的产品上,那么我做这些到底有什么用呢?之前使用PIC单片机做的电能检测器件可能小批量的生产了一些,但是远没有成为一个值得我骄傲的产品。每一次我都是在找公司的原因,其实我真正的倾注了多少心血在这些产品上面呢?每一次我都是把做这些东西仅仅当作一个工作来做,虽然我的技术不断的在进步,处理一些技术难点越来越游刃有余,但是我早已失去了当初在学校时的那份热情。我开始在业余学习一些其他的技术,只把手中做的工作当作是一份糊口的工作,我觉得自己做的东西是没什么技术含量的,而且有些东西是慢慢打磨的,我倒不如趁着现在大好年华投身更丰富的技术海洋之中。久而久之,当初的那份赤成之心早已不在,我变得只是追逐工资增长的不断跳槽。而最近一年的嵌入式 Linux 工作经历也确实让我学习到了很多在操作系统编程的技能,接触了以前不曾用到的文件编程、网络编程、也开始认真的研究计算机算法,现在我发现之前很多在单片机之下我迫切想使用的技术也不过如此。还记得我曾经想要自己打造一款实时操作系统。想要在单片机下实现多线程或是协程,有了操作系统这些反而是简单的,没有之前的程序写的复杂了。而这些简单的实现了之前在单片机上的复杂之后的事情,又有新的复杂的事情。有了多线程编程,要关注的同步和互斥的问题一点不比在单片机下要同时做很多事情简单。

还有视音频的流式传输,需要 buffer 的缓冲,处理起来也需要十分小心。而单片机开发更需要关注的是物理世界、电气世界的各种特性,需要将模拟的连续的信号变成数字的离散的数据,实时性强、过程简单的顺序结构。

一点点建议

还是认清自己最重要,不要被过去从事的技术束缚住,其实我现在看到很多以前做软件的人也在尝试单片机硬件编程,直接面对物理世界的反馈是一种很奇妙的感觉,相比于抽象的要处理数据库信息,处理真实世界的各种数据也许在某种意义上更加有趣,更加给人一种踏实的感觉。

每个人都可以不断学习新的东西,作为一个近二十年才普遍在人类社会兴起的工种,我们有太多要学习和探索的事情要做,身边少有工作二十年的工程师是因为这个行业还没有完全发展起来,因此绝对不要被别人软件技术是青春饭的胡话给蒙蔽。做一个坚持学习的人是值得别人尊敬的。

单片机程序员也是软件工程师的一种,做的事情一样有用而且有趣,做好了也能赚到不错的薪水,在其他软件程序员来说可能被看作是做硬件的,做底层的。但我理解的差别可能比写 javapython 的区别差不多大吧。反正没有一辈子不成长、不学习的软件工程师,除非他们转去做“管理”这样“高端”的职位去了。

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

    关注

    6074

    文章

    45340

    浏览量

    663466
  • uart
    +关注

    关注

    22

    文章

    1304

    浏览量

    106100
  • 程序员
    +关注

    关注

    4

    文章

    955

    浏览量

    30785

原文标题:单片机程序员的面试都考什么?

文章出处:【微信号:wujianying_danpianji,微信公众号:单片机精讲吴鉴鹰】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    程序员面试攻略第2版pdf

    程序员面试攻略介绍程序员在求职过程所面临的求职沟通和程序设计技能两个方面的问题。在程序设计
    发表于 09-19 17:23

    单片机程序员面试求教

    各位前辈好: 小弟后天的要去面试单片机程序员实习,请问有什么面经较好的,求教,万分跪谢!
    发表于 10-17 16:41

    请问面试单片机程序员一般会问哪些方面的问题?

    请问面试单片机程序员一般会问哪些方面的问题?
    发表于 03-14 00:39

    面试必看:java面试考点精讲视频教程

    面试必看:java面试考点精讲视频教程 Java作为目前比较火的计算机语言之一,连续几年蝉联最受程序员欢迎的计算机语言榜首,因此每年新入职Java程序员也数不胜数。很多java
    发表于 07-06 12:46

    单片机程序员面试经验

    能看懂 datasheet 读懂芯片的操作规范,就是代码对传感器的寄存器进行配置●能读懂原理图、看懂 PCB●会使用示波器、会分析电路实际面试考什么●C语言基础知识,算法水题●聊天,聊项目、聊如何实现的
    发表于 03-10 09:31

    单片机程序开发应该掌握哪些技能

    单片机程序开发应该掌握哪些技能实际用到什么?
    发表于 03-02 07:28

    单片机工程师是程序员

    工程师做的工作就是程序开发,使用C语言来驱动单片机的硬件资源,以及完成一个逻辑任务,实现一定的功能的过程。但是单片机工程师又不是严格意义上的程序员
    发表于 11-09 09:14

    程序员面试攻略下载(PDF第二版)

    程序员面试攻略介绍程序员在求职过程所面临的求职沟通和程序设计技能两个方面的问题。在程序设计技
    发表于 09-19 17:22 0次下载

    程序员需要学什么,微软资深程序员学习手册面试宝典资料

    程序员是现在比较吃香的工作程序员工资高还不需要和复杂的社会打交道。那么怎么成为一名程序员?当程序员
    发表于 03-22 11:54 30次下载

    程序员面试宝典

    程序员面试宝典(PDF完整版),有需要的下来看看
    发表于 03-21 15:09 0次下载

    程序员面试宝典

    程序员面试方法及面试题分享,感兴趣的小伙伴们可以瞧一瞧。
    发表于 11-02 18:19 0次下载

    单片机程序开发应该掌握哪些技能实际所用以及感悟

    需要掌握哪些技能 需要了解并使用过几款常见的单片机需要熟悉常见的硬件接口譬如 U
    的头像 发表于 01-29 14:13 8851次阅读

    程序员面试经验总结

    程序员面试过程中面试官想要从 “ 自我介绍 “ 获得什么信息?
    的头像 发表于 04-23 17:03 3489次阅读

    Git在实际工作中的基本使用方法

    代码版本控制对于我们嵌入式软件开发岗是一项基础、必备的技能需要熟练掌握实际工作中常用的版本控制系统有:Git(分布式版本控制系统)与SVN(集中式版本控制系统)。 本次分享Git在
    的头像 发表于 09-14 18:12 3057次阅读

    单片机工程师是程序员吗?真实的月薪到底有多少?

    工程师做的工作就是程序开发,使用C语言来驱动单片机的硬件资源,以及完成一个逻辑任务,实现一定的功能的过程。但是单片机工程师又不是严格意义上的程序员
    发表于 11-04 17:36 16次下载
    <b class='flag-5'>单片机</b>工程师是<b class='flag-5'>程序员</b>吗?真实的月薪到底有多少?