找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1701|回复: 0
打印 上一主题 下一主题
收起左侧

转而做单片机或APP开发等相对简单的技术领域

[复制链接]
跳转到指定楼层
楼主
ID:38551 发表于 2017-8-21 20:48 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
ARM嵌入式工程师入门门槛高,而且很多职位需要你有项目经验。所以,有一部分同学最终只能转行:转而做单片机或APP开发等相对简单的技术领域。

但是,ARM嵌入式工程师所处位置非常好,向下跟硬件工程师打交道,向上跟APP工程师打交道,可以参与整个系统的开发,可以充当项目多面手的角色。

我是个技术宅男,只能举身边的例子:我在中兴时从事嵌入式系统的同事,发展都很不错。

我的科长,拥有专业的Linux底层知识的同时,极具大局观,他向上研究APP的相关知识、相关协议,上下兼通,是中兴的产品经理、总工了。

同事A,早年从因POS机开发(用单片机),在中兴里天天加班深研Linux技术,现在在创业公司里当技术头头,有股份。加班多,但是收入高。

同事B,在中兴里是做APP开发,后跳槽到OPPO后,深研底层开发,早几年单是年终将就是我的年薪,现在自己创业。

做单片机产品的公司,产品升级的话必定要用Linux,到时你就是公司掌握先机的人;做APP的话,如果跟硬件相关,你的嵌入式Linux知识会提供很多帮忙。

ARM裸机就是单片机,在把能运行Linux系统的板子先当作单片机来使用,熟悉芯片功能、硬件操作,为后续的Linux学习作准备。

我们讲解的ARM裸机,特殊之处在于:不使用IAR/KEIL/MDK等软件,而是在纯粹的Linux环境下从0写代码。这些好用的开发工具屏蔽了太多的技术细节,比如:位置无关码、重定位、中断环境的保存与恢复、链接脚本。而这些细节,在后续的bootloader学习中是需要的。

除上述细节外,ARM裸机的学习目的在于:掌握如何编写程序来控制硬件。后续的“Linux驱动=软件框架+硬件操作”,我们先在单纯的裸机学习中掌握硬件操作,在后面的学习中就可以把精力放在驱动软件框架上。

在技术层面,Linux系统工程师回头从事单片机开发,轻而易举;但是现在不开始着手Linux的学习,后续转型很麻烦。2004年我们使用51单片机从事车载电话开发,所做的软件已经算是单片机层面顶尖水平了──我们可以在单片机上开发自己的操作系统。但是,我们同事纷纷感觉到了危机,单片机能做的事情太单一了,单片机弱爆了!当年流行wince,Linux刚起步,我们选择学习Linux,现在wince已经没人提及,而Linux仍如日中天。中兴公司也是在2005年才全面从vxwork切换到Linux的,我有幸进入中兴与他们一起研究Linux。

在发展方面,有了Linux知识,几乎通吃所有产品。我从事过网络会议系统、监控摄像头、楼宇对讲系统、安防、广告机方面的开发,我只是开发底层系统,不是开发APP,这些产品通通使用Linux。现在兴起的机器人、人工智能,它们要落地的话,运行Linux系统的硬件是必选项。

就身边事例而言,我是2008年离开中兴,随后几年里有几个同科室的同事也都离开了,他们都做Linux系统;现在都做得很不错。有人在联想做Android开发,有人在做POS机,有人自己创业,他们或是团队领导,或是有股份。


分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表