嵌入式技术优缺点分析
从事嵌入式软件开发的好处是:
本文引用地址:
1 目前,国内外该领域的人才非常稀缺。
一方面是因为这个领域的入门门槛比较高,不仅要了解较低级别的软件(如操作系统级别、驱动级别的软件),而且对软件专业度的要求也更高(对嵌入式系统中软件设计的时间和空间效率要求较高),而且必须了解硬件的工作原理(推荐:网络工程师培训),所以非专业的IT人员很难切入这个领域;
另一方面,由于这个领域比较新,目前发展太快,很多软硬件技术都没有出现很长时间或正在兴起(如ARM处理器、嵌入式操作系统、MPEG技术、无线通信协议) , 等等。)。当然,有新技术的人在找他们(嵌入式技术培训:ARM开发培训、FPGA培训、DSP培训等)。嵌入式人才稀缺,其身价自然很高。他们拥有的经验越多,价格就越高。事实上,嵌入式人才是稀缺的。根本原因可能是大多数人无条件访问,需要相应的嵌入式开发板和软件,需要有经验的人来指导开发过程。
与企业计算等应用程序不同,嵌入式人才的工作强度通常较低(但收入也不低)。
620)this.width=620;’ alt=”/>
对于从事企业应用软件的IT公司来说,当用户的系统完成后,还要去找下一个用户,而每个用户的需求和完成时间都要根据客户的要求而改变,而且经常会累死重复. 相比之下,从事嵌入式系统的公司有自己的产品计划,并按照自己的节奏运作。开发的产品一般都是通用的,不会针对不同的客户进行修改。一个产品模型开发出来后,往往会有一段很长的空闲时间(或者只是一些小的软件修复),有时间充电休息。
另外,大家从事嵌入式软件的工作范围都比较窄,涉及的专业技术范围就是那些(ARM、RTOS、MPEG、802.11等),以后会越来越多随着时间的推移更有经验。,卖老钱,几句话的指导,足以让那些初学者沉思半年。如果你是从事应用软件的,下一个客户可能要切换到一个完全不同的软件开发平台从51到arm—32位嵌入式系统入门,这会很难。
对于想进入嵌入式开发行业的人,推荐的培训课程有:嵌入式Linux开发培训、嵌入式WinCE开发培训、3G手机开发培训、Android嵌入式开发培训等。
从事嵌入式软件开发的缺点是:
(1)入门起点比较高,使用的技术往往比较难。如果软硬件基础不好,尤其是操作系统级别的软件基础不深,可能不太适合这条线。
(2)这个领域的公司数量远远少于企业计算公司。尤其是从事嵌入式产品的小公司大量(小公司需要自己做产品),而且知名大公司(嵌入式公司)较少,风格上的大公司主要有英特尔、摩托罗拉、TI、飞利浦、三星、索尼、Futjtum、贝尔阿尔卡特、意法半导体、Microtek、研华、华为、中兴通讯、广电等生产企业)。这些企业习惯性的思维方式是在电子、通信等骨干专业找人。由于我校历届毕业生主要关注企业计算,我校与这些公司的接触相对较少。我院积极努力,成立了一些公司。为了取得联系,今后我们会争取有我校学生到这些企业实习或就业。
(3)有少数公司经常要求硕士以上学历的人从事嵌入式,主要是基于嵌入式的难易程度。但大部分公司没有这个要求,只要有经验就行。
620)this.width=620;’ alt=”/>
如果我们的学生学习嵌入式,显然他们应该专注于嵌入式软件,尤其是嵌入式操作系统,这应该是我们的强项。对于从事嵌入式软件工作的人来说,最重要的技术显然是(其实很多公司的招聘广告都是这么说的):
(1)掌握主流嵌入式微处理器的结构和原理
(2) 必须掌握嵌入式操作系统
(3) 必须熟悉嵌入式软件开发流程,并从事过至少一个嵌入式软件项目。
嵌入式入门学习法
一、 嵌入式系统的定义
根据网上搜索到的嵌入式系统的定义,结合我自己对嵌入式系统的理解,嵌入式系统定义如下:
1、 嵌入式系统只是为特定应用设计的专用计算机系统;
2、嵌入式系统不同于普通的 PC 或笔记本电脑。嵌入式系统的各种特性,例如外形尺寸、功耗和外部适配器,必须满足应用要求和限制;
3、 嵌入式系统的软件,包括操作系统,烧写在一块电路板上;
4、采用低功耗X86 CPU,模块化设计,最基本的电脑外设。此类计算机通常使用 Windows 操作系统;
620)this.width=620;’ alt=”/>
5、嵌入式系统的CPU可以是:4位、8位、16位、32位;
6、 嵌入式系统应用广泛,如:
1) 小家电
2) 汽车
3) 电梯
4) 电视
5) 录像机或 VCD、DVD
6)mp3、mp4
7) 工业控制
8) 医疗设备
9) 卫星
10) 电话
11)掌上电脑
12) 飞行系统等
13) …
7、 嵌入式系统架构:
1) 中央处理器
2) 内存
3) ROM 或闪存
4) 广告
5) 达
6)人机界面(如按键+LED/LCD/彩色液晶显示器/)
7) 输入/输出
8) 乌萨特
9) USB
10) CAN
11) 以太网
12)嵌入式操作系统,如:uc/os、linux、vxworks、wince、dos。. .
8、嵌入式系统更具有SoC的特点,即整个系统集成在一个芯片上,例如ATMEL的arm7芯片91sam7x128/256等;用户可以获得廉价而强大的嵌入式系统;
二、 最正确的学习路径——从8bit mcu到canbus再到ARM7
第 1 步:熟悉 8 位 MCU
个人观点是学习嵌入式技术有一个上下文:8位mcu(51或者avr…)+can2.0B+arm7+arm9,学习的时候可以按照这个上下文;
作为低端嵌入式系统,选择8位单片机作为切入点较为温和。在8位单片机中,相比pic、avr、freescale等8位单片机,选择51核单片机作为学习8位单片机的首选。当然,这种观点是仁者见仁,智者见智;如果需要理由,或许可以参考以下理由:
1、51积累了大量优秀代码等资源;网上这样的资源太多了,几乎没钱;
620)this.width=620;’ alt=”/>
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是德国博世公司为解决现代车辆的诸多控制和数据交换问题而开发的CAN(Controller Area Network)现场总线通信结构。其主要特点是:
1、8字节短帧传输,传输时间短,抗干扰性强;
2、高速,最高速度可达1Mbit/s;
3.多主模式,多主可分为主节点和从节点;每个节点都可以随时主动向网络上的其他节点发送信息,不分主从,通信灵活;发送时,总线自动仲裁主从;主节点具有优先权;
4、可实现全域广播、分区广播和点对点通信;
5、Can控制器自动过滤帧数不一致的帧;大大减轻了CPU的负担;
6、采用CRC等多种校验手段,数据错误率极低;并且在严重错误的情况下,节点会自动下线,避免影响总线上的其他节点;Rs485 通常是影响总线的节点。所有节点;
7. 使用无损害仲裁技术;
620)this.width=620;’ alt=”/>
CAN总线作为一种技术先进、可靠性高、功能完善、成本合理的远程网络通讯控制方式,已广泛应用于各行各业。大致有以下几个行业:
1、 汽车电子
2、 自动控制
3、 智能建筑
4、 电子系统
5、 纺织品
6、 智能电表
7、 医疗保健系统
8、 电梯
9、 安全监控
10、 电源
11、 运动控制
12、 …等字段,替代了原来RS485的反向通讯方式。bitbus/modbus 在物理层都是 Rs485。
第 3 步:熟悉 ARM7 并掌握 ARM,超级微控制器(32 位)
三、 直截了当——不要穿着棉袄洗澡
学点东西很重要,没必要穿着棉袄洗澡,直奔主题,学最有用的东西。
比如单片机,要学什么模型?市面上有AVR、PIC、飞思卡尔等不同系列的单片机5款。学习玩任何单片机都很好;
但我个人认为51系列单片机是国内用得最多的。去中发问问哪个微控制器出货量最大。
据说有些大学还在教Z80,还在论坛上争论。有人支持有人反对;支持者认为它是一个很好的原型,可以学到很多计算机原理;
但是对于嵌入式系统的学习者来说,过时的技术要学会做什么呢?不能学以致用是对的吗?
学习 51 不就是了解计算机基础知识吗?而学完51,毕业后还能活下来;
大家都知道485总线需要专家才能可靠工作,而现在canbus作为更可靠、更优秀的总线技术,节点数量逐年增加;可以说51+canbus可以让你如虎添翼;
那么从51到arm—32位嵌入式系统入门,是否有必要学习canbus才能在485上不浪费宝贵的青春才能获得更美好的未来呢?答案显然是前者。
毕业前的n年大学+毕业设计,是迈出就业的第一步;第一步非常重要。
人生不应该有断点,一步一个脚印,你现在迈出的一步,就是为下一步做准备,甚至是为长远的未来做准备。
请登录后发表评论
注册
社交帐号登录