在说到嵌入式的时候,首先还是要知道什么是嵌入式,然后才能去了解嵌入式开发需要学习的内容之类的,还好,下面小编已经给大家准备好了嵌入式开发入门攻略了,欢迎阅读。

点击获取1V1嵌入式学习规划,现在还送100G精选学习资料。(点击找小助理领取)

一、嵌入式开发需要学习哪些内容?

其实,我们直接分析大企业嵌入式相关岗位的工作描述,就可以找到答案,也是我们努力的方向。现在嵌入式开发随着处理器的成长要面对全新的挑战:计算性能和内存永远不够用、为了保障不丢帧要求高效的实时性、高级接口和协议栈的产生导致代码的规模越来越大。

为了应对这些新的挑战,各大企业对工程师有以下几个方面的要求:编程能力、处理器架构、操作系统、接口与驱动、Framework、应用编程与调试、硬件知识。

1. 编程能力

嵌入式工程师大类上属于软件工程师的范畴,编程技能是基本功,DJI、小马智行、NINEBOT、石头科技、OPPO、小米、地平线这些公司都对C/C++要求熟练掌握的程度。除此以外对解释型语言要求为至少熟悉一种脚本语言。了解Linux系统,会使用Makefile工程管理工具等。

2. 处理器架构

美团、小马智行、石头科技、OPPO、VIVO都要求熟练掌握或者精通STM32单片机和ARM处理器架构,其它加分项有DSP、熟练使用ARM Cortex-A或M系列内核的SOC。这部分我们需要了解Cortex-M和Cortex-A系列处理器架构。哈佛架构、冯诺依曼架构、多级流水线、是最简单的问题。SIMD、MIMD、指令预取、乱序执行这些概念也要搞懂。

3. 操作系统

目前的电子产品功能越来越多,也越来越复杂,操作系统可以极大地简化产品的开发难度。

大疆、美团、小马智行、小米、地平线都要求熟悉Linux下的多进程多线程、网络编程的开发和调试,内存、功耗、性能优化等。

4. 接口与驱动

许多初涉嵌入式行业的人会狭隘的认为搞嵌入式就是写驱动。美团无人配送、小马智行、石头科技对CAN、SPI、I2C、UART这些常见的低速接口都要求熟悉,其它的像LCD、Touch、Camera、USB、BT/WIFI/GPS、IMU这些进入寻常百姓家的Sensor驱动开发经验是妥妥的加分项。

5.Framework

中间件和协议栈的部分有一个特点,研发机器人的企业一般都会要求熟悉ROS,相机类的企业要求熟悉camera、codec、storage相关的pipeline。还有基本的协议栈也是必须了解和掌握的。

6. 应用编程与调试

美团无人配送、小马智行、NINEBOT、小米都要求熟悉Linux或Unix系统编程,了解基本的编译原理,需要掌握gdb、valgrind、strace、perf、coredump等调试手段,用好log系统。

只要掌握上面编程能力、操作系统、Framework这些内功心法,调试工具不过是招数。

7. 硬件知识

科技企业大多要求了解一定的硬件知识,基础硬件知识的掌握程度,达到可以看懂原理图并对常见的元器件有一定了解,熟悉模电数电知识即可。基本上是电子工程类学生,所学专业课的内容。另外,要会使用示波器等测试仪器,会驱动常见的传感器等。

以上介绍的就是嵌入式开发需要学习哪些内容了,只要是涉及嵌入式的地方,在你学习之前都要记得多去了解下,这样总是有帮助的,肯定能对你的嵌入式起到作用。

for (i = 0; i < 8; i++)

{

SetData((data >> i) & 0x1);

SetClockHigh();

for (j = 0; j < 5; j++);

SetClockLow();

for (j = 0; j < 5; j++);

}

攻略!嵌入式开发需要学习哪些内容?相关推荐

  1. 一位久经沙场的嵌入式er站在初学者角度谈谈嵌入式开发与学习的一些问题

    一位久经沙场的嵌入式er站在初学者角度谈谈嵌入式开发与学习的一些问题 在刚刚涉足嵌入式开发的时候,总想找到这样一本书,它可以解决我一些这样那样的疑惑.但是遗憾的是,到现在也没有这样一本书面世,而且我想 ...

  2. 嵌入式开发需要学mysql吗_学习嵌入式开发需要学习哪些课程?如何学习?

    针对很多的大学生嵌入式开发初学者来说,对嵌入式开发的学习还很迷茫.今天信盈达嵌入式培训老师给出参考建议:首先:嵌入式开发需要学习哪些课程?因为嵌入式开发的方向不同,所学习的内容会有所区别,但是无论是哪 ...

  3. ARM嵌入式开发板学习路线指引

    如何入门嵌入式?嵌入式开发学习方法步骤  如何入门嵌入式?嵌入式开发学习路线指引  嵌入式开发就是指在嵌入式操作系统下进行开发,一般常用的系统有linux,android.  平台:Cortex-A9 ...

  4. 零基础学习嵌入式开发难吗?嵌入式开发需要学习什么

    对于零基础刚开始学习嵌入式的同学很多都会有这样的一个想法,嵌入式开发需要学习什么?如果是电子或计算机专业的人,相对来说,会比较容易入门;而非电子或计算机专业的人,应该先从基本的电路和C语言编程开始学. ...

  5. 我的PFC岩土颗粒流离散元分析攻略(附赠学习资料)

    作者 | Lobby ,仿真秀专栏作者 导读:lobby曾是国内"双一流""院校本硕连读土木专业的大学生,现在从事土木相关的研发工作.目前在仿真秀官网发布过数十篇付费文章 ...

  6. linux底层驱动内核,Linux底层驱动开发需要学习哪些内容

    Linux底层驱动开发需要学习哪些内容想必这是很多学习Linux的朋友十分头疼的问题,今天就让我来告诉大家我们到底该学习哪些内容呢? 1. 要会一些硬件知识,比如Arm接口编程 2. 学会写简单的ma ...

  7. 嵌入式开发需要学习哪些东西

    刚刚读到这篇文章,对于刚入门嵌入式来说挺有用的,献给向我一样正在迷茫,苦于没有头绪,没人指引的学习朋友们. 主要讨论下嵌入式技术学习方法,主要是针对嵌入式软件. 嵌入式技术是一门边缘科学(又称交叉科学 ...

  8. 嵌入式入门学习笔记6:[转]嵌入式开发需要学习哪些东西

    本文转自迅为开发板iTOP-4412开发板实战手册:http://www.topeetboard.com 刚刚读到这篇文章,对于刚入门嵌入式来说挺有用的,献给向我一样正在迷茫,苦于没有头绪,没人指引的 ...

  9. 进阶攻略|前端完整的学习路线

    前端完整的学习路线 最近写了一篇关于前端一些常见轻便耐用的UI框架的小总结,很多小伙伴私信问我,要怎么学习前端,没有明确的方向,为了感谢大家的关注点赞打赏和喜欢,决定把前端的学习进阶之路稍微整理一下, ...

  10. 嵌入式开发调试学习与思考

    截至今天,自己负责的一个项目算是告一段落,前前后后5个多月时间. 该项目是对公司设计的基于powerpc的处理器进行FPGA仿真阶段的软件验证,以及bootloader和kernel移植,以便芯片进行 ...

最新文章

  1. 距离高效率学习CV算法我还有多远的距离?
  2. 豆瓣评分9.3,陪伴无数程序员成长的神作,终于升级了!
  3. [Oracle] oracle统计信息
  4. ajaxFileUpload
  5. 删除字符问题(贪心)
  6. webpack --- 使用vue
  7. 前端学习(2444):分支的使用
  8. php一句话怎么写_PHP一句话木马后门
  9. 好玩gan_效果超赞服务器挤爆!用GAN生成人像油画火了,带你一秒回到文艺复兴...
  10. 清华大学开源迁移学习算法库:基于PyTorch实现已有算法
  11. 阻止xap文件在浏览器中缓存
  12. Alpha冲刺随笔—:第一天
  13. 单片机p2.0引脚c语言,单片机p2.0?
  14. 怎么提高文公写作水平?公文写作请示类模板
  15. VueX浏览器刷新如何保存数据
  16. 【摘录】大学课程对照英文翻译
  17. Selenium 自动化测试从0实战经验
  18. p2p sdk接收文件服务端epoll模型源码
  19. S3C2440 I2C总线控制
  20. Binder源码阅读指南之java层,作为Android开发程序员

热门文章

  1. linux nodejs 502错误,node.js – NPM安装失败,出现502错误
  2. vue + UEditor 上传图片(回显),上传附件 含token
  3. JAVA集成微信支付 周期扣费
  4. 2022年应届大学生做毕设是论文好做点还是设计好,哪个性价比更高
  5. excel公式识别html,POI/Excel/HTML单元格公式问题
  6. 技术宅日记:机器学习修炼的每一步
  7. 语音领域的波束形成Beamforming小结
  8. ocx控件查看_控制HTML帮助查看器OCX控件
  9. 丁磊力荐 网易卡搭编程构建国内首个开放生态
  10. 怎么用计算机程序求根公式,一元四次方程求根公式