嵌入式开发是软硬结合的产品,需要对软硬件都有所了解,所以学习起来比较费劲,学习成本也高,回报率是个很漫长的过程。嵌入式要学的东西有很多,主要有5个方面。


  语言:C


  C是必须要学的,是最基本的,如果搞驱动还要学汇编,需要对照datasheet知道如何实现硬件和软件交互,如果涉及Framework就要用到C++,因为硬件抽象层全是C++写的。


  操作系统


  嵌入式开发的操作系统有很多:Linux、vxworks、mips、wince、QNX——·但目前来看Linux是主流,所以这个一定要掌握。Android系统及其移动设备端的流行是Linux兴起来的主要原因,Linux能做为Android系统的内核,一是因为它是开源的,社区参与开发人员多,二是Linux的性能确实不错。


  编译系统


  不同的公司对嵌入式开发的编译系统会有不同的需求,如果是odm做Android手机的厂商,都是用google自家的编译系统,就是我们常说的Android编译三部曲(source,lunch和make),如果是其它公司的话可能会有基于shell或者python的自定义的编译系统,其实底层也是调用Makefile。


  技术栈


  如果是linux内核开发,那么要掌握这些技术的: 硬件架构,片上系统,boot,软硬件裁剪和定制,内核编译烧写,驱动开发,功耗分析,协议i2c、spi、uart还有usb等。如果是涉及上层,那么需要掌握的技术: 进程间通信,多线程开发,信号量和锁,图形界面,网络以及网络协议等。

相关文章

9个鲜为人知的HTML功能 小白怎么学习HTML5?新手入门必看 阿里巴巴常用的12个后端开发工具 sharepoint搭建文档服务器,SharePoint?Server教程 语义化标签与HTML5新增的布局标签 vector教程:如何进行项目 JetBrains PhpStorm v2021.2.0中文激活版 HTML5教程之新元素 前端基础入门:HTML5基础语法与标签 HTML5——SVG基础入门 android是前端还是后端 嵌入式开发要学哪些技能? 使用fiddler对手机APP进行抓包 HTML5薪资正一路飙升 如何才能学好HTML5开发 零基础如何迅速学习前端? html5中怎么利用canvas元素创建画布 实现html5移动端自适应布局的方法分享 HTML5移动应用开发 最佳HTML5应用开发工具有哪些? HTML5 移动页面自适应手机屏幕四类方法 html5手机网站常用的9个CSS属性 什么是web前端开发标准 Android开发用过的十大框架 Android混合开发,html5自己主动更新爬过的坑 HTML5中的移动开发框架有哪些? 分享5个主流的HTML5开发工具 HTML5开发培训教程学习之动效制作 网页开发HTML5 快速开发基于 HTML5 网络拓扑图应用 如何零基础入门前端开发? html5零基础入门学习教程(零基础学员必看) jquery删除ajax请求的方法 jquery中ajax中的参数,jquery中的ajax参数 jQuery AJAX 方法success()后台传来的4种数据详解 jquery中ajax常用的方法,jQuery ajax框架常用方法总结 jQuery AJAX中readyState与status的区别与联系 jquery ajax.then,神奇的then方法 jQuery validate+artdialog+jquery form实现弹出表单思路详解 ajax用来做什么的,jQuery是什么? java jquery ajax视频,【Ajax】之jQuery中的Ajax jquery中ajax应用之通用ajax()函数的实例 BootStrop前端框架入门教程详解 jQuery WEUI Select jquery是什么意思?jquery和js的区别是什么? 巧用案例学习jQuery框架三种事件绑定方式 jQuery 基础知识总结 引入JQuery.min.js文件 几款常用的高质量web前端框架 Jquery和bootstrap有哪些区别 easyui 验证 ajax提交表单提交表单提交