新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應用 > 嵌入式技術(shù)優(yōu)缺點分析,嵌入式入門學習方法

嵌入式技術(shù)優(yōu)缺點分析,嵌入式入門學習方法

作者: 時間:2017-10-11 來源:網(wǎng)絡 收藏

  嵌入式技術(shù)優(yōu)缺點分析

  從事嵌入式軟件開發(fā)的好處是:

本文引用地址:http://m.butianyuan.cn/article/201710/365214.htm

  1 目前國內(nèi)外這方面的人都很稀缺。

  一方面,是因為這一領(lǐng)域入門門檻較高,不僅要懂較底層軟件(例如操作系統(tǒng)級、驅(qū)動程序級軟件),對軟件專業(yè)水平要求較高(嵌入式系統(tǒng)對軟件設(shè)計的時間和空間效率要求較高),而且必須懂得硬件的工作原理(推薦:網(wǎng)絡工程師培訓),所以非專業(yè)IT人員很難切入這一領(lǐng)域;

  另一方面,是因為這一領(lǐng)域較新,目前發(fā)展太快,很多軟硬件技術(shù)出現(xiàn)時間不長或正在出現(xiàn)(如ARM處理器、嵌入式操作系統(tǒng)、MPEG技術(shù)、無線通信協(xié)議等),掌握這些新技術(shù)的人當然很找(嵌入式技術(shù)培訓:ARM開發(fā)培訓、FPGA培訓、DSP培訓 等 )。嵌入式人才稀缺,身價自然就高,越有經(jīng)驗價格就越高。其實嵌入式人才稀少,根本原因可能是大多數(shù)人無條件接觸,這需要相應的嵌入式開發(fā)板和軟件,另外需要有經(jīng)驗的人進行指導開發(fā)流程。

  與企業(yè)計算等應用軟件不同,嵌入式領(lǐng)域人才的工作強度通常低一些(但收入不低)。

  搞企業(yè)應用軟件的IT企業(yè),這個用戶的系統(tǒng)搞完了,又得去搞下一個用戶的,而且每個用戶的需求和完成時間都得按客戶要求改變,往往疲于奔命,重復勞動。相比而言,搞嵌入式系統(tǒng)的公司,都有自己的產(chǎn)品計劃,按自己的節(jié)奏行事。所開發(fā)的產(chǎn)品通常是通用的,不會因客戶的不同而修改。一個產(chǎn)品型號開發(fā)完了,往往有較長一段空閑時間(或只是對軟件進行一些小修補),有時間進行充電和休整。

  另外,從事嵌入式軟件的每個人工作范圍相對狹窄,所涉及的專業(yè)技術(shù)范圍就是那些(ARM、RTOS、MPEG、802.11等),時間長了這些東西會越搞越有經(jīng)驗,賣賣老本,幾句指導也夠讓那些初入道者琢磨半年的。若搞應用軟件,可能下一個客戶要換成一個完全不同的軟件開發(fā)平臺,那就苦了。

  想進入嵌入式開發(fā)行業(yè)的人員,推薦培訓課程有:嵌入式Linux開發(fā)培訓、 嵌入式WinCE開發(fā)培訓 、3G手機開發(fā)培訓、Android嵌入式開發(fā)培訓等。

  從事嵌入式軟件開發(fā)的缺點是:

 ?。?) 入門起點較高,所用到的技術(shù)往往都有一定難度,若軟硬件基礎(chǔ)不好,特別是操作系統(tǒng)級軟件功底不深,則可能不適于此行。

 ?。?) 這方面的企業(yè)數(shù)量要遠少于企業(yè)計算類企業(yè)。特別是從事嵌入式的小企業(yè)數(shù)量較多(小企業(yè)要搞自己的產(chǎn)品創(chuàng)業(yè)),知名大公司較少(搞嵌入式的大公司主要有Intel、Motorola、TI、Philip、Samsung、Sony、Futjtum、Bell-Alcatel、意法半導體、Microtek、研華、華為、中興通信、上廣電等制造類企業(yè))。這些企業(yè)的習慣思維方式是到電子、通信等偏硬專業(yè)找人。由于我院以前畢業(yè)生以企業(yè)計算為主,所以我院與這些企業(yè)聯(lián)系相對較少。我院正積極努力,目前已與其中部分公司建立了聯(lián)系,爭取今后能有我院同學到這些企業(yè)中實習或就業(yè)。

 ?。?)有少數(shù)公司經(jīng)常要碩士以上的人搞嵌入式,主要是基于嵌入式的難度。但大多數(shù)公司也并無此要求,只要有經(jīng)驗即可。

  我院同學若學習嵌入式,顯然應偏重于嵌入式軟件,特別是嵌入式操作系統(tǒng)方面,應是我們的強項。對于搞嵌入式軟件的人,最重要的技術(shù)顯然是(實際上很多公司的招聘廣告上就是這樣寫的):

 ?。?) 掌握主流嵌入式微處理器的結(jié)構(gòu)與原理

 ?。?) 必須掌握一個嵌入式操作系統(tǒng)

 ?。?) 必須熟悉嵌入式軟件開發(fā)流程并至少做過一個嵌入式軟件項目。

  嵌入式入門學習方法

  一、 嵌入式系統(tǒng)的定義

  根據(jù)網(wǎng)絡上搜索到的關(guān)于嵌入式系統(tǒng)的定義,結(jié)合自己對嵌入式系統(tǒng)的理解,把嵌入式系統(tǒng)定義如下:

  1、 嵌入式系統(tǒng)簡單的說就是面向特定應用設(shè)計的專用計算機系統(tǒng);

  2、嵌入式系統(tǒng)與普通的PC或者notebook不同,嵌入式系統(tǒng)的外形尺寸、功耗、外部適配器等各種特征必須滿足應用的要求和限制;

  3、 嵌入式系統(tǒng)的軟件包括操作系統(tǒng)燒錄在一塊電路板上;

  4、使用低功耗的X86級別的CPU,采用模塊化的設(shè)計,配置了最基本的計算機周邊配備而制成。這種計算機通常采用Windows操作系統(tǒng);

  5、 嵌入式系統(tǒng)的CPU可以是:4位、8位、16位、32位;

  6、 嵌入式系統(tǒng)應用廣泛,諸如:

  1) 小家電

  2) 汽車

  3) 電梯

  4) 電視

  5) 錄像機或者VCD、DVD

  6) mp3、mp4

  7) 工業(yè)控制

  8) 醫(yī)療設(shè)備

  9) 衛(wèi)星

  10) 電話

  11) PDA

  12) 飛行系統(tǒng)等等

  13) ……

  7、 嵌入式系統(tǒng)的體系結(jié)構(gòu):

  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) 以太網(wǎng)

  12)嵌入式的操作系統(tǒng),例如:uc/os、linux、vxworks、ce、dos。。。

  8、嵌入式系統(tǒng)更多的表現(xiàn)為SoC的特點,也就是把整個系統(tǒng)都集成在一個芯片上,例如,ATMEL的7的芯片91sam7x128/256等;用戶可以獲得廉價而功能強大的嵌入式系統(tǒng);

  二、 最正確的學習道路 - 從8位mcu到canbus到ARM7

  第一步:熟悉8位mcu

  個人的看法是,學習嵌入式的技術(shù)有個脈絡:8位mcu(51或者avr.。。)+can2.0B+7+9,學習的時候可以按照這個脈絡來進行;

  作為低端的嵌入式系統(tǒng),選擇8位mcu作為入門是比較適中的,而8位mcu中,相比pic、avr、freescale等等8位來說,又以選擇51核的作為學習8位mcu的首選來更加合適。當然這個觀點是仁者見仁智者見智;如果需要理由的話,那么也許以下這些理由可以作為參考:

  1. 51上積累了大量的優(yōu)秀的代碼和其它資源;網(wǎng)絡上這樣的資源太多了,幾乎就是不花錢的;

  2.生產(chǎn)51內(nèi)核的的廠家很多,比如:ATMEL、華邦、LG、飛利浦、STC(宏晶科技)、TI、…

  3. 51單片機在細分低端市場,面向不同的行業(yè)應用,廠家推出了不同的產(chǎn)品,如LPC900系列,STC的12CXXXX系列;在功能、價格、功耗,體積,封裝、抗干擾等方面來滿足行業(yè)用戶的需求;例如,現(xiàn)在的51單片機越來越多的集成了A/D、D/A、SPI、I2C、PWM、內(nèi)部時鐘、看門狗、eeprom、ISP/IAP等等,已經(jīng)跟傳統(tǒng)的ATMEL的89C51/52有了很大的差別!功能越來越強大的同時成本越來越低,而且不擔心某個廠家缺貨。。。

  4. 。。。。(還在不斷增加之中)

  第二步:熟悉can2.0A/B,在精通51的基礎(chǔ)上,熟悉can2.0A/B

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

  CAN是德國Bosch 公司為解決現(xiàn)代車輛中眾多的控制和數(shù)據(jù)交換問題,開發(fā)出一種CAN(Controller Area Network)現(xiàn)場總線通信結(jié)構(gòu)。其主要特點是:

  1. 8字節(jié)的短幀傳送,故傳輸時間短、抗干擾性強;

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

  3.多主方式,多主之間又可以分成是主節(jié)點和次節(jié)點;各節(jié)點均可在任意時刻主動向網(wǎng)絡上的其他節(jié)點發(fā)送信息,不分主從,通信靈活;發(fā)送的時候總線自動仲裁主次;主節(jié)點占有優(yōu)先權(quán);

  4. 可以做到全區(qū)廣播、分區(qū)廣播和點對點通訊;

  5. Can控制器自動過濾幀號不符的幀;大大減輕了CPU的負擔;

  6.具有多種錯誤校驗方式如CRC及其他校驗措施,數(shù)據(jù)出錯率極低;而且在嚴重錯誤的情況下,節(jié)點會自動離線,避免影響總線上其它節(jié)點;Rs485經(jīng)常是一個節(jié)點影響了總線上所有的節(jié)點;

  7. 采用無損壞的仲裁技術(shù);

  作為一種技術(shù)先進、可靠性高、功能完善、成本合理的遠程網(wǎng)絡通訊控制方式,CAN總線已被廣泛應用于各個行業(yè)之中。大致有以下這些行業(yè):

  1、 汽車電子

  2、 自動控制

  3、 智能大廈

  4、 電子系統(tǒng)

  5、 紡織

  6、 智能儀表

  7、 醫(yī)療系統(tǒng)

  8、 電梯

  9、 安防監(jiān)控

  10、 電源

  11、 運動控制

  12、 …等各領(lǐng)域中,取代了原來的落后的RS485的通訊方式。bitbus/modbus在物理層上都是Rs485的。

  第三步:熟悉ARM7,掌握ARM這個超級單片機(32位)

  三、 直奔主題 - 不要穿著棉襖洗澡

  學什么很重要,沒有必要穿著棉襖洗澡,直奔主題,要學就學最有用的東西。

  比如單片機,學什么型號?市場上的單片機,有51、AVR、PIC、freescale等不同的系列,把任何一款單片機學會了玩通了那都是很不錯;

  但是我個人認為還是51系列的單片機在中國使用最多,去中發(fā)問問哪款單片機出貨量最大就知道啦;

  據(jù)說有些大學現(xiàn)在還在教授Z80,在論壇上爭論起來,有些人支持,有些人反對;支持的人認為這是一款很好的原型機,可以學到很多計算機的原理;

  但是對于嵌入式系統(tǒng)的學習者,一款已經(jīng)過時的技術(shù)學它做什么?難道學了不能致用是對的?

  學習51不也一樣能了解計算機的基礎(chǔ)知識?而學好了51畢業(yè)出去就能生存;

  大家都知道485總線要想可靠工作非專家不可,而現(xiàn)在canbus作為更加可靠性能更加卓越的總線技術(shù),節(jié)點數(shù)量每年遞增;可以說,51+canbus能夠讓你如虎添翼;

  那么,是不是去學習canbus要能獲得更加遠大的前途而不必在485上浪費寶貴的青春?答案顯然是前者。

  畢業(yè)之前的大學n年+畢業(yè)設(shè)計就是為了邁出就業(yè)的第一步;第一步很重要。

  人生不要有斷點,一步接著一步,現(xiàn)在邁出的一步就是為了下一步做好準備,甚至為了比較長遠的以后



關(guān)鍵詞: 單片機 arm win

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉