历史上的今天
返回首页

历史上的今天

今天是:2024年09月23日(星期一)

正在发生

2020年09月23日 | 嵌入式技术优缺点分析,嵌入式入门学习方法

2020-09-23 来源:elecfans

  嵌入式技术优缺点分析

  从事嵌入式软件开发的好处是:

  1 目前国内外这方面的人都很稀缺。

  一方面,是因为这一领域入门门槛较高,不仅要懂较底层软件(例如操作系统级、驱动程序级软件),对软件专业水平要求较高(嵌入式系统对软件设计的时间和空间效率要求较高),而且必须懂得硬件的工作原理(推荐:网络工程师培训),所以非专业IT人员很难切入这一领域;


  另一方面,是因为这一领域较新,目前发展太快,很多软硬件技术出现时间不长或正在出现(如ARM处理器、嵌入式操作系统、MPEG技术、无线通信协议等),掌握这些新技术的人当然很找(嵌入式技术培训:ARM开发培训、FPGA培训、DSP培训 等 )。嵌入式人才稀缺,身价自然就高,越有经验价格就越高。其实嵌入式人才稀少,根本原因可能是大多数人无条件接触,这需要相应的嵌入式开发板和软件,另外需要有经验的人进行指导开发流程。


  与企业计算等应用软件不同,嵌入式领域人才的工作强度通常低一些(但收入不低)。

搞企业应用软件的IT企业,这个用户的系统搞完了,又得去搞下一个用户的,而且每个用户的需求和完成时间都得按客户要求改变,往往疲于奔命,重复劳动。相比而言,搞嵌入式系统的公司,都有自己的产品计划,按自己的节奏行事。所开发的产品通常是通用的,不会因客户的不同而修改。一个产品型号开发完了,往往有较长一段空闲时间(或只是对软件进行一些小修补),有时间进行充电和休整。

  搞企业应用软件的IT企业,这个用户的系统搞完了,又得去搞下一个用户的,而且每个用户的需求和完成时间都得按客户要求改变,往往疲于奔命,重复劳动。相比而言,搞嵌入式系统的公司,都有自己的产品计划,按自己的节奏行事。所开发的产品通常是通用的,不会因客户的不同而修改。一个产品型号开发完了,往往有较长一段空闲时间(或只是对软件进行一些小修补),有时间进行充电和休整。


  另外,从事嵌入式软件的每个人工作范围相对狭窄,所涉及的专业技术范围就是那些(ARM、RTOS、MPEG、802.11等),时间长了这些东西会越搞越有经验,卖卖老本,几句指导也够让那些初入道者琢磨半年的。若搞应用软件,可能下一个客户要换成一个完全不同的软件开发平台,那就苦了。


  想进入嵌入式开发行业的人员,推荐培训课程有:嵌入式Linux开发培训、 嵌入式WinCE开发培训 、3G手机开发培训、Android嵌入式开发培训等。


  从事嵌入式软件开发的缺点是:

  (1) 入门起点较高,所用到的技术往往都有一定难度,若软硬件基础不好,特别是操作系统级软件功底不深,则可能不适于此行。

  (2) 这方面的企业数量要远少于企业计算类企业。特别是从事嵌入式的小企业数量较多(小企业要搞自己的产品创业),知名大公司较少(搞嵌入式的大公司主要有Intel、Motorola、TI、Philip、Samsung、Sony、Futjtum、Bell-Alcatel、意法半导体、Microtek、研华、华为、中兴通信、上广电等制造类企业)。这些企业的习惯思维方式是到电子、通信等偏硬专业找人。由于我院以前毕业生以企业计算为主,所以我院与这些企业联系相对较少。我院正积极努力,目前已与其中部分公司建立了联系,争取今后能有我院同学到这些企业中实习或就业。

  (3)有少数公司经常要硕士以上的人搞嵌入式,主要是基于嵌入式的难度。但大多数公司也并无此要求,只要有经验即可。

搞企业应用软件的IT企业,这个用户的系统搞完了,又得去搞下一个用户的,而且每个用户的需求和完成时间都得按客户要求改变,往往疲于奔命,重复劳动。相比而言,搞嵌入式系统的公司,都有自己的产品计划,按自己的节奏行事。所开发的产品通常是通用的,不会因客户的不同而修改。一个产品型号开发完了,往往有较长一段空闲时间(或只是对软件进行一些小修补),有时间进行充电和休整。

  我院同学若学习嵌入式,显然应偏重于嵌入式软件,特别是嵌入式操作系统方面,应是我们的强项。对于搞嵌入式软件的人,最重要的技术显然是(实际上很多公司的招聘广告上就是这样写的):

  (1) 掌握主流嵌入式微处理器的结构与原理

  (2) 必须掌握一个嵌入式操作系统

  (3) 必须熟悉嵌入式软件开发流程并至少做过一个嵌入式软件项目。


  嵌入式入门学习方法

  一、 嵌入式系统的定义

  根据网络上搜索到的关于嵌入式系统的定义,结合自己对嵌入式系统的理解,把嵌入式系统定义如下:

  1、 嵌入式系统简单的说就是面向特定应用设计的专用计算机系统;

  2、嵌入式系统与普通的PC或者notebook不同,嵌入式系统的外形尺寸、功耗、外部适配器等各种特征必须满足应用的要求和限制;

  3、 嵌入式系统的软件包括操作系统烧录在一块电路板上;

  4、使用低功耗的X86级别的CPU,采用模块化的设计,配置了最基本的计算机周边配备而制成。这种计算机通常采用Windows操作系统;

搞企业应用软件的IT企业,这个用户的系统搞完了,又得去搞下一个用户的,而且每个用户的需求和完成时间都得按客户要求改变,往往疲于奔命,重复劳动。相比而言,搞嵌入式系统的公司,都有自己的产品计划,按自己的节奏行事。所开发的产品通常是通用的,不会因客户的不同而修改。一个产品型号开发完了,往往有较长一段空闲时间(或只是对软件进行一些小修补),有时间进行充电和休整。

  5、 嵌入式系统的CPU可以是:4位、8位、16位、32位;

  6、 嵌入式系统应用广泛,诸如:

  1) 小家电

  2) 汽车

  3) 电梯

  4) 电视

  5) 录像机或者VCD、DVD

  6) mp3、mp4

  7) 工业控制

  8) 医疗设备

  9) 卫星

  10) 电话

  11) PDA

  12) 飞行系统等等

  13) ……

  7、 嵌入式系统的体系结构:

  1) CPU

  2) RAM

  3) ROM或者flash ram

  4) AD

  5) DA

  6) 人机界面(例如按键+LED/LCD/彩色液晶显示器/)

  7) I/O

  8) Usart

  9) USB

  10) CAN

  11) 以太网

  12)嵌入式的操作系统,例如:uc/os、linux、vxworks、wince、dos。。。

  8、嵌入式系统更多的表现为SoC的特点,也就是把整个系统都集成在一个芯片上,例如,ATMEL的arm7的芯片91sam7x128/256等;用户可以获得廉价而功能强大的嵌入式系统;


  二、 最正确的学习道路 - 从8位mcu到canbus到ARM7

  第一步:熟悉8位mcu

  个人的看法是,学习嵌入式的技术有个脉络:8位mcu(51或者avr.。。)+can2.0B+arm7+arm9,学习的时候可以按照这个脉络来进行;

  作为低端的嵌入式系统,选择8位mcu作为入门是比较适中的,而8位mcu中,相比pic、avr、freescale等等8位单片机来说,又以选择51核的单片机作为学习8位mcu的首选来更加合适。当然这个观点是仁者见仁智者见智;如果需要理由的话,那么也许以下这些理由可以作为参考:

  1. 51上积累了大量的优秀的代码和其它资源;网络上这样的资源太多了,几乎就是不花钱的;

搞企业应用软件的IT企业,这个用户的系统搞完了,又得去搞下一个用户的,而且每个用户的需求和完成时间都得按客户要求改变,往往疲于奔命,重复劳动。相比而言,搞嵌入式系统的公司,都有自己的产品计划,按自己的节奏行事。所开发的产品通常是通用的,不会因客户的不同而修改。一个产品型号开发完了,往往有较长一段空闲时间(或只是对软件进行一些小修补),有时间进行充电和休整。

  2.生产51内核的单片机的厂家很多,比如:ATMEL、华邦、LG、飞利浦、STC(宏晶科技)、TI、…

  3. 51单片机在细分低端市场,面向不同的行业应用,厂家推出了不同的产品,如LPC900系列,STC的12CXXXX系列;在功能、价格、功耗,体积,封装、抗干扰等方面来满足行业用户的需求;例如,现在的51单片机越来越多的集成了A/D、D/A、SPI、I2C、PWM、内部时钟、看门狗、eeprom、ISP/IAP等等,已经跟传统的ATMEL的89C51/52有了很大的差别!功能越来越强大的同时成本越来越低,而且不担心某个厂家缺货。。。

  4. 。。。。(还在不断增加之中)


  第二步:熟悉can2.0A/B,在精通51的基础上,熟悉can2.0A/B

  为什么是canbus而不是modbus bus、bitbus?

  CAN是德国Bosch 公司为解决现代车辆中众多的控制和数据交换问题,开发出一种CAN(Controller Area Network)现场总线通信结构。其主要特点是:

  1. 8字节的短帧传送,故传输时间短、抗干扰性强;

  2. 高速,最高速度可达1Mbit/s;

  3.多主方式,多主之间又可以分成是主节点和次节点;各节点均可在任意时刻主动向网络上的其他节点发送信息,不分主从,通信灵活;发送的时候总线自动仲裁主次;主节点占有优先权;

  4. 可以做到全区广播、分区广播和点对点通讯;

  5. Can控制器自动过滤帧号不符的帧;大大减轻了CPU的负担;

  6.具有多种错误校验方式如CRC及其他校验措施,数据出错率极低;而且在严重错误的情况下,节点会自动离线,避免影响总线上其它节点;Rs485经常是一个节点影响了总线上所有的节点;

  7. 采用无损坏的仲裁技术;

搞企业应用软件的IT企业,这个用户的系统搞完了,又得去搞下一个用户的,而且每个用户的需求和完成时间都得按客户要求改变,往往疲于奔命,重复劳动。相比而言,搞嵌入式系统的公司,都有自己的产品计划,按自己的节奏行事。所开发的产品通常是通用的,不会因客户的不同而修改。一个产品型号开发完了,往往有较长一段空闲时间(或只是对软件进行一些小修补),有时间进行充电和休整。

  作为一种技术先进、可靠性高、功能完善、成本合理的远程网络通讯控制方式,CAN总线已被广泛应用于各个行业之中。大致有以下这些行业:

  1、 汽车电子

  2、 自动控制

  3、 智能大厦

  4、 电子系统

  5、 纺织

  6、 智能仪表

  7、 医疗系统

  8、 电梯

  9、 安防监控

  10、 电源

  11、 运动控制

  12、 …等各领域中,取代了原来的落后的RS485的通讯方式。bitbus/modbus在物理层上都是Rs485的。


  第三步:熟悉ARM7,掌握ARM这个超级单片机(32位)


  三、 直奔主题 - 不要穿着棉袄洗澡

  学什么很重要,没有必要穿着棉袄洗澡,直奔主题,要学就学最有用的东西。

  比如单片机,学什么型号?市场上的单片机,有51、AVR、PIC、freescale等不同的系列,把任何一款单片机学会了玩通了那都是很不错;

  但是我个人认为还是51系列的单片机在中国使用最多,去中发问问哪款单片机出货量最大就知道啦;

  据说有些大学现在还在教授Z80,在论坛上争论起来,有些人支持,有些人反对;支持的人认为这是一款很好的原型机,可以学到很多计算机的原理;

  但是对于嵌入式系统的学习者,一款已经过时的技术学它做什么?难道学了不能致用是对的?

  学习51不也一样能了解计算机的基础知识?而学好了51毕业出去就能生存;

  大家都知道485总线要想可靠工作非专家不可,而现在canbus作为更加可靠性能更加卓越的总线技术,节点数量每年递增;可以说,51+canbus能够让你如虎添翼;

  那么,是不是去学习canbus要能获得更加远大的前途而不必在485上浪费宝贵的青春?答案显然是前者。

  毕业之前的大学n年+毕业设计就是为了迈出就业的第一步;第一步很重要。

  人生不要有断点,一步接着一步,现在迈出的一步就是为了下一步做好准备,甚至为了比较长远的以后

推荐阅读

史海拾趣

Excelitas公司的发展小趣事

随着技术的不断成熟和市场的扩大,Excelitas公司开始寻求全球扩张。公司先后在北美、欧洲和亚洲设立了研发中心和生产基地,以更好地服务全球客户。在全球扩张的过程中,Excelitas注重本土化战略,积极与当地企业合作,共同开拓市场。这一策略不仅帮助公司快速融入当地市场,还促进了公司业务的持续增长。

Concord Semiconductor Corp公司的发展小趣事

为了进一步提升市场竞争力,Concord Semiconductor Corp积极寻求与其他企业的战略合作。通过与全球领先的电子设备制造商建立长期合作关系,公司成功将其产品打入国际市场,实现了业务的快速增长。同时,公司还与多家研究机构展开技术合作,共同研发新型半导体材料和技术,为公司的长远发展提供了有力支撑。

Corex Intervest Inc公司的发展小趣事

在技术创新和产品创新的基础上,Corex Intervest Inc公司开始积极拓展市场。公司通过参加国际电子展览、与各大电商平台合作等方式,不断提升品牌知名度和影响力。同时,公司还注重与客户的沟通与合作,根据客户需求定制产品方案,赢得了客户的广泛信任和好评。

Denyo Europa Gmbh公司的发展小趣事

Denyo Europa Gmbh公司始终认为企业是社会的一部分,应该承担起相应的社会责任。公司积极参与各种公益活动,为当地社区的发展贡献力量;同时,公司还关注弱势群体的需求,为他们提供力所能及的帮助。这种对社会责任的担当精神,使公司在社会中树立了良好的企业形象。

ALSC [Alliance Semiconductor Corporation]公司的发展小趣事

ALSC公司成立于XXXX年,初创期面临着激烈的市场竞争和技术壁垒。然而,创始人凭借对半导体技术的深刻理解和市场需求的敏锐洞察,决定专注于开发高性能、低功耗的半导体产品。经过多次尝试和不断改进,公司成功推出了一款具有竞争力的产品,并逐渐在市场上获得了一席之地。

Electro-Mech Components Inc公司的发展小趣事

1997年,EMC做出了一次重要的收购决策——从Pollak Transportation Electronics Division(TED)收购了开关灯产品线。这一收购使EMC的产品线得到了极大的扩展,同时也增强了其在电气元件领域的竞争力。收购后的开关灯产品线在EMC的精心运营下,逐渐成为了公司的明星产品之一,为公司带来了丰厚的利润。

问答坊 | AI 解惑

STM32价格这么恐怖?

网上看到的,不知道是不是真的,各位买的时候都多少钱啊? http://china.rs-online.com,这家公司网上查询的价格 …

查看全部问答>

日立、松下、东芝自主开发毫米波通信芯片

“我们希望尽快摆脱依赖特定半导体厂商的状况”(日立制作所技术人员)。   日本国内厂商开发毫米波通信IC的积极性正与日俱增。就目前所知,日立制作所、松下、东芝三家公司都在独立开发60GHz频带收发IC(RF收发IC)(注1)。各公司都希望为数 ...…

查看全部问答>

2440 读 温度芯片,总是无法触发中断,请教有什么方法呀?

BSP包里通过应用层调用IIC文件夹不能正常工作,只好转入到bootloader层去做温度检测了,可是无论如何也不能触发中断,有经验的请指教,先谢谢了。…

查看全部问答>

EVC 关于触屏显示的问题,急啊,解决现给100分

为什么我的EVC程序在X86上跑没问题!但同样的程序在ARM上跑,菜单触摸屏有用,但在窗口上触屏后没反映,是什么原因啊?????请高手指教!…

查看全部问答>

把adoce31.dll拷贝到Windows, CreateProcess(_T("\RegSvrCe" ,_T("/s \Windows\\adoce31.d

把adoce31.dll拷贝到Windows, CreateProcess(_T(\"\\RegSvrCe\" ,_T(\"/s \\Windows\\\\adoce31.dll\" ,NULL .... 这个在wince.net 4.2以及wm5.0上面还不能正常使用 这个问题如何解决. …

查看全部问答>

手里有个模块wavecom的wismo2c,不能上GPRS,怎么处理下可实现上网

据说要做下软件升级,怎么做啊。请高人指点。 查的资料说这个模块刚上市时不支持GPRS,要支持的话需要软件升级,升级软件到哪里下?…

查看全部问答>

大家帮忙看下编译问题,麻烦了!

  我以前一直用9.1,感觉很不好用,今天换成了9.0,可是编译老有错误,错误如下: Internal Error: Sub-system: AMERGE, File: /quartus/atm/amerge/amerge_kpt_op.cpp, Line: 220cmp_merge_kpt_dbStack Trace:0x3D9B7   : amerge_ ...…

查看全部问答>

TI教堂 我无法进入了

TI教堂 我无法进入了 我点击进入学习,结果弹出这个窗口见附件…

查看全部问答>

【连载】【ALIENTEK 战舰STM32开发板】STM32开发指南--第二十三章 内部温度传感器实验

第二十三章 内部温度传感器实验         本章我们将向大家介绍STM32的内部温度传感器。在本章中,我们将使用STM32的内部温度传感器来读取温度值,并在TFTLCD模块上显示出来。本章分为如下几个部分:23.1 STM32 内部 ...…

查看全部问答>

msp430f169 ADC引脚电压

我用的MSP430F169,ADC引脚接地测回的数据也是2000多,测量AD引脚果然有电压,不知道是什么情况,求助啊!!!…

查看全部问答>