爱美容
当前位置: 首页 美容百科

嵌入式从入门到放弃(嵌入式浅谈与学习方法)

时间:2023-06-01 作者: 小编 阅读量: 1 栏目名: 美容百科

嵌入式系统是一种专用的计算机系统,作为装置或设备的一部分。通常,嵌入式系统是一个控制程序存储在ROM中的嵌入式处理器控制板。由三个层次的相关内容组成:1)硬件,包括CPU、存储、I/O。2)系统级软件,主要是操作系统也就是OS,以及I/O软件如LCD、蓝牙、WIFI、CDMA、声音等子系统。3)应用软件,如基于Linux的应用开发,基于Android的应用开发,基于iOS的应用开发等。常见的嵌入式操作系统:μC/OS-II、VxWorks、嵌入式Linux、WinCE……

一、嵌入式概况

IEEE(Institute of Electrical and Electronics Engineers,美国电气和电子工程师协会)对嵌入式系统的定义:“用于控制、监视或者辅助操作机器和设备的装置”。

嵌入式系统是一种专用的计算机系统,作为装置或设备的一部分。通常,嵌入式系统是一个控制程序存储在ROM中的嵌入式处理器控制板。事实上,所有带有数字接口的设备,如手表、微波炉、录像机、汽车等,都使用嵌入式系统,有些嵌入式系统还包含操作系统,但大多数嵌入式系统都是由单个程序实现整个控制逻辑。

从应用对象上加以定义,嵌入式系统是软件和硬件的综合体,还可以涵盖机械等附属装置。国内普遍认同的嵌入式系统定义为:以应用为中心,以计算机技术为基础,软硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗等严格要求的专用计算机系统。

嵌入式设备是一台专用的、微型计算机。由三个层次的相关内容组成:

  • 1)硬件,包括CPU(如ARM)、存储(如flash)、I/O(显示模块、通讯模块、视音频模块、I/O控制电路等)。
  • 2)系统级软件,主要是操作系统也就是OS,以及I/O软件如LCD、蓝牙、WIFI、CDMA、声音等子系统。
  • 3)应用软件,如基于Linux的应用开发,基于Android的应用开发,基于iOS的应用开发等。
二、嵌入式处理器分类
  • 嵌入式微处理器(单板机)
  • 嵌入式微控制器(单片机)
  • 专用处理器(DSP等)
  • 嵌入式片上系统(SOC、SOPC)
三、嵌入式系统

计算机系统由硬件和软件组成,在发展初期没有操作系统这个概念,用户使用监控程序来使用计算机。随着计算机技术的发展,计算机系统的硬件、软件资源也愈来愈丰富,监控程序已不能适应计算机应用的要求。于是在六十年代中期监控程序又进一步发展形成了操作系统(Operating System)。发展到现在,广泛使用的有三种操作系统即多道批处理操作系统、分时操作系统以及实时操作系统。

常见的嵌入式操作系统:μC/OS-II、 VxWorks、嵌入式Linux、Win CE……

四、嵌入式发展前景

嵌入式系统是软硬结合的东西,搞嵌入式开发的人有两类:

一类是学电子工程、通信工程等偏硬件专业出身的人,他们主要是搞硬件设计,有时要开发一些与硬件关系最密切的最底层软件,如BootLoader、Board Support Package(像PC的BIOS一样,往下驱动硬件,往上支持操作系统),最初级的硬件驱动程序等。他们的优势是对硬件原理非常清楚,不足是他们更擅长定义各种硬件接口,但对复杂软件系统往往力不从心(例如嵌入式操作系统原理和复杂应用软件等)。

另一类是学软件、计算机专业出身的人,主要从事嵌入式操作系统和应用软件的开发。如果这类人对硬件原理和接口有较好的掌握,也完全可以写BSP和硬件驱动程序。嵌入式硬件设计完后,各种功能就全靠软件来实现了,嵌入式设备的增值很大程度上取决于嵌入式软件,这占了嵌入式系统的最主要工作(有很多公司将硬件设计包给了专门的硬件公司,稍复杂的硬件都交给台湾或国外公司设计,国内的硬件设计力量很弱,很多嵌入式公司自己只负责开发软件,因为公司都知道,嵌入式产品的差异很大程度在软件上,在软件方面是最有“花头“可做的),所以软件研发人员完全不用担心在嵌入式市场上的无用武之地,越是智能设备越是复杂系统,软件越起关键作用,而且这是趋势。 嵌入式领域较新,发展非常快,很多软硬件技术出现的时间都不太长(如ARM处理器、嵌入式操作系统、LINUX操作系统),大多数人没有条件接触或进入嵌入式行业,更谈不上能有机会接受专业人士的指导。因此,踏进这个行业的难度比较大,嵌入式人才稀缺,身价自然也水涨船高。

权威部门统计,我国嵌入式人才缺口每年50万人左右。根据前程无忧网发布的调查报告,嵌入式软件开发是未来几年最热门和最受欢迎的职业之一,具有10年工作经验的高级嵌入式工程师年薪在30万元左右。即使是初级的嵌入式软件开发人员,平均月薪也达到了3000—5000元,中高级的嵌入式工程师月薪平均超过10000元。 做软件实际上有高下之分,开发语言从机器语言、汇编到C、c,再到红透半边天的Java、C#等,该学哪种呢?为什么有些开发者工资低,而有些开发者千金难求?为什么3年的Java高级程序员薪水仅仅8k-10k,而一个Linux底层C语言程序员两年经验就敢要10k的薪水?

还是门槛,比如月薪15k的Linux嵌入式开发职位,门槛就有 Linux系统、Shell编程、Linux开发环境、C语言、ARM硬件平台、数据结构、linux内核、驱动程序等,粗略数数就有8道关口,他需要非常熟悉整个的计算机体系,能做出实际的产品,而Java的开发者却仅仅是会使用名叫Java的语言工具,始终高高飘在众多层次之上,开发项目非常快,甚至可以不知道OSI模型,很可能自始至终都是软件蓝领。 嵌入式开发本身也有高下之分,至少包含嵌入式应用程序工程师和底层的驱动内核工程师两种。前者同样是使用现成工具进行简单劳动,比如使用J2ME开发小游戏或者进行一些界面开发,而后者是根据芯片具体情况把操作系统(如Linux)移植到上面,同时编写必要的驱动程序,改写相应的内核代码。很显然后者是一个公司真正的技术核心。而技术核心的工资很可能是其他开发者的数倍。

嵌入式开发突出强制和项目,学习不仅仅是学习几项技术,而是构建你的知识体系。比如学习嵌入式开发,就要从基础Linux,C语言,数据结构开始,到ARM,汇编,Linux内核、驱动等,更重要的是更多的项目练习,设计至少5个项目,多达10000行强制核心代码的编写可以让你真正获得知识。为进入外企或者出国做准备。未来的几年内,随着信息化,智能化,网络化的发展,嵌入式系统技术也将获得广阔的发展空间。美国著名未来学家尼葛洛庞帝99年1月访华时预言,4~5年后嵌入式智能(电脑) 工具将是PC和因特网之后最伟大的发明。我国著名嵌入式系统专家沈绪榜院士98年11月在武汉全国第11次微机学术交流会上发表的《计算机的发展与技术》一文中,对未来10年以嵌入式芯片为基础的计算机工业进行了科学的阐述和展望。1999年世界电子产品产值已超过12000亿美元,2000年达到13000亿美元,预计2005年,销售额将达18000亿美元。一些先进的PDA在显示屏幕上已实现汉字写入、短消息语音发布,日用范围也将日益广阔。对于企业专用解决方案,如物流管理、条码扫描、移动信息采集等,这种小型手持嵌入式系统将发挥巨大的作用。自动控制领域,不仅可以用于ATM机,自动售货机,工业控制等专用设备,和移动通讯设备结合、GPS、娱乐相结合,嵌入式系统同样可以发挥巨大的作用。经济型闪存将会成为嵌入式市场的一个方向。

五、我对嵌入式的认识

我目前就读于西安邮电大学计算机科学与技术专业大二。不像一些目标明确、志向远大的同学。我对自己专业所知甚少,大一仅仅局限于学习好课上知识与学校所授课程。学校有许多创新实验室,大二第一学期参与了实验室项目——循迹小车,认识了许多知识丰富、目标远大、进取向上的同学,在他们的带领下,我对嵌入式有了一些初步的认识。

在生活中,许多被冠以“智能”产品,都应用到了嵌入式。嵌入式要求人们对硬件软件都要扎实过硬,并且具有创新能力和创造意识,能够出类拔萃、与众不同。嵌入式未来会是我们的生活越来越智能化。虽然嵌入式很难学,门槛众多,但只要有信心和行动,我相信一定会有收获。

六、为什么学习嵌入式?

1.什么是嵌入式?

  • 传统定义(狭义嵌入式):以应用为中心,以计算机技术为基础,软硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗等严格要求的专用计算机系统。
  • 当前定义(泛嵌入式):除PC之外的一切计算机系统。

2.三次信息化浪潮

  • 第一次浪潮 1980年前后 个人计算机 信息处理
  • 第二次浪潮 1995年前后 互联网和移动通信网 信息传输
  • 第三次浪潮 2010年前后 物联网、云计算和大数据 信息爆炸

七、什么人适合学嵌入式?

1.嵌入式开发用到哪些知识?

  • 编程语言
  1. 第一层次:C语言
  2. 第二层次:ARM汇编、shell脚本、Python脚本、C、Java
  • 操作系统
  1. 第一层次:Linux
  2. 第二层次:Android、RTOS(u-cos、Raw-os)
  • 硬件方面
  1. 会看原理图
  2. 懂通信原理及编程(串口、IIC、SPI、USB)
  3. 懂LCD、触摸屏等常见原件工作原理及编程

2.嵌入式开发需要什么技能?

  • 以软件为主,需对硬件有一定了解
  • 涉及面宽,需持续学习
  • 细节较多,需耐心和细致的洞察力
  • 重在调试,需调试和修改程序的能力
  • 企业花钱买的是你解决问题的能力,而不是你脑袋里装的知识("知识"!="能力")
八,嵌入式转内核工程师路线

在建议从事嵌入式开发吗?

作为工作近十年的嵌入式工程师而言,个人不建议从事,如果需要买房结婚,家里没矿。那么,建议别搞嵌入式,嵌入式真心待遇不行,真的待遇不行。别看什么所谓大牛啥的,互联网软件金融算法之类开发,如果你做到那个层次,薪水是同等嵌入式的一倍或者几倍,另外,有几个做到那个层次的?还有就是,现在芯片公司把驱动甚至底层封装的越来越好了,比如海思的,厂家只需要把demo板裁剪裁剪,然后应用玩出花就好了,这样子和嵌入式已经关系不大了。最后,现在,嵌入式应用,尤其出名c的开发机会,已经被Qt,c挤占了很多。总而言之,嵌入式,尤其纯c的,薪水,工作机会越来越少,和差了。

提升嵌入式底层原理开发,我建议你们去零声教育,专门做底层原理讲解。

文末有学习路线参考!

更多linux内核视频教程文档资料免费领取后台私信【内核】自行获取.

Linux内核源码/内存调优/文件系统/进程管理/设备驱动/网络协议栈-学习视频教程-腾讯课堂

哪怎么打破这些困扰呢?

接下来听我一一道来。

主要从

给大家推荐一下内核大神的学习路线

全方面系统全面的讲解底层原理开发技术:

1、五大专题,共计150 个课时

2、20个实战操作模块,2w 代码;

主要从

  • 进程管理专题
  • 内存管理专题
  • 网络协议栈专题
  • 设备驱动管理专题
  • 文件系统及内核组件专题

全方面系统全面的讲解底层原理开发技术:

最新Linux内核大纲

进程管理专题

内存管理专题

网络协议栈专题

设备驱动管理专题

文件系统及内核组件专题

项目实战

适合于

  • 1.从事业务开发多年,对底层原理理解不够深入的在职工程师
  • 2. 从事嵌入式方向开发,想转入互联网开发的在职工程师
  • 3. 从事Qt/MFC等桌面开发,薪资多年涨幅不大的在职工程师
  • 4. 从事非开发岗位(算法岗,运维岗,测试岗),想转后台开发岗位的在职工程师
  • 5. 工作中技术没有挑战,工作中接触不到新技术的在职工程师
  • 6. 自己研究学习速度较慢,不能系统构建知识体系的开发人员
  • 7. 了解很多技术名词,但是深入细问又不理解的工程师
  • 8. 计算机相关专业想进入大厂的在校生(本科及以上学历,有c/c基础)
    推荐阅读
  • 融劵是什么 融资融券是啥意思

    融券是指接受做空交易可以使证券公司赚取反方向交易佣金,同时可以使投资者锁定多仓风险。证券公司将自有股票或客户投资账户中的股票借给做空投资者,投资者借证券来出售,到期返还相同种类和数量的证券并支付利息。

  • 反问句的特点(关于反问句的特点)

    接下来我们就一起去研究一下吧!反问句的特点反问句是对陈述句的修饰,强调语气。相比之下,前一句话的语气要强烈得多。加强语气,更明显的表达出自己所要表达的东西。那些经常使用反问句的人在语言上更具攻击性,有很强的自我保护意识。这可能是自卑的表现,尤其是在与异性的交流中。这在择偶过程中也会产生负面影响。因此,建议在日常生活中不要经常使用反问句。

  • 2023佛山新生儿入户办理条件(2023佛山新生儿入户办理条件及流程)

    父母双方或一方为本市户籍居民所生育的小孩,自愿选择随父随母登记入户;同一市内夫妻一方户口为家庭户、一方户口为集体户的,所生子女应当随家庭户一方申报出生登记;父母离婚的小孩跟随抚养权属方登记入户。

  • 文艺说说大全简短(林下漏月光疏疏如残雪)

    得之我幸,失之我命,如此而已。霜雪吹满头,也算是白首。每个女孩子都是由糖香料以及一切美好的东西做成的,仅比天使差一点眼里藏着十年春秋与西北。四方食事,不过一碗人间烟火。昨日种种,皆成今我。天可补,海可填,南山可移。宇宙山河浪漫,生活点滴温暖。我不晓得将去何方,但我已在路上。夏日里的遗憾一定会被秋风温柔化解。春花、秋月、夏日、冬雪。即许一人以偏爱,愿有余生之慷慨。小池塘边跌坐看鱼,挑眉烟火过一生。

  • 华莱士店铺一年能赚多少(华莱士开万店捞金)

    正是这家快餐店,却先后遭到有关部门的处罚。尤其是今年华莱士后厨卫生事件,更是深受外界所诟病。针对此问题,华莱士虽第一时间出来道歉,华莱士霍营店也被相关部门处罚20多万元。在9月份,华莱士北京南站店工作人员没有健康证明。但其暴露出的问题也不断增多,尤其是旗下门店的后厨卫生条件多次被相关部门罚款。

  • 辉煌腾达的意思(辉煌腾达的解释)

    辉煌腾达的意思是形容骏马奔腾飞驰比喻骤然得志,官职升得很快,接下来我们就来聊聊关于辉煌腾达的意思?以下内容大家不妨参考一二希望能帮到您!辉煌腾达的意思辉煌腾达的意思是形容骏马奔腾飞驰。

  • 乡村爱情电视剧有哪些(大家可以了解一下)

    我们一起去了解并探讨一下这个问题吧!乡村爱情电视剧有哪些《乡村爱情》是于2006年至2019年赵本山主演的系列电视剧。截至2020年,目前共11部。《乡村爱情11》于2019年1月26日在优酷独家播出。延续了前几部的故事,讲述了以刘能、广坤、赵四为首的象牙山村民在新时代背景下,就“精准扶贫”“招商引资”等国家惠农政策的误解,与新到任大学生村官杜小双以及到象牙山投资的神秘富豪,发生的一系列依旧搞笑无解的故事。

  • 世界ol大刀战士技能加点(世界ol大刀战士技能加点推荐)

    我们一起去了解并探讨一下这个问题吧!世界ol大刀战士技能加点天无相神功加满,飞天御剑流加5,武器大师加5,精通破甲加5,圣灵力魄加满,武器娴熟加五,熊象巨力加十,战争艺术加十,基础刀法加满,轩辕惊天决加十,强化训练加满,统御之力加满,攻守兼备加十,五气朝元加满,精通重击加满。这些都是很使用的技能,建议加满。技能主动英勇开始学到十二就可以打四个,被动,娴熟,刀法,大师,剑流,必满,前期可以先点到十。

  • 鱼工念什么(鱼工读什么)

    下面内容希望能帮助到你,我们来一起看看吧!鱼工念什么鱼工念魟读音。〔魟鱼〕身体扁平,略呈圆形或菱形,软骨无鳞,胸鳍发达,如蝶展翅,尾呈鞭状,有毒刺。种类很多,常见的有尖嘴魟、赤魟、燕魟等。鱼名,泛指属于魟科及其他有关科的许多种,在其鞭形的尾的基部旁边有一根或数根带倒钩的又大又尖的背棘,能重创敌人,有时它们能长得很大,其中有些种类对牡蛎危害很大。

  • 许昌带状疱疹怎么治?可以预防吗?(带状疱疹能不能根治?)

    部分患者会发生带状疱疹后神经痛,此类患者除了药物治疗和其他辅助治疗措施外,必要时还需要联合心理治疗与行为调节。预防措施带状疱疹疫苗是目前有效的预防途径。接种疫苗后可预防带状疱疹的发生,降低带状疱疹后神经痛的发生率,缩短带状疱疹的持续时间。带状疱疹疫苗属于自愿、自费接种的非免疫规划疫苗,有意接种者可以咨询居住地附近社区卫生服务中心预防接种门诊,预约接种。