嵌入式培訓(xùn)總結(jié)(通用16篇)
發(fā)表時(shí)間:2021-06-24嵌入式培訓(xùn)總結(jié)(通用16篇)。
一. 嵌入式培訓(xùn)總結(jié)
嵌入式系統(tǒng)是一種專用的計(jì)算機(jī)系統(tǒng),作為裝置或設(shè)備的一部分。通常,嵌入式系統(tǒng)是一個(gè)控制程序存儲(chǔ)在ROM中的嵌入式處理器控制板。事實(shí)上,所有帶有數(shù)字接口的設(shè)備,如手表、微波爐、錄像機(jī)、汽車等,都使用嵌入式系統(tǒng),有些嵌入式系統(tǒng)還包含操作系統(tǒng),但大多數(shù)嵌入式系統(tǒng)都是是由單個(gè)程序?qū)崿F(xiàn)整個(gè)控制邏輯,籠統(tǒng)地來說,嵌入式系統(tǒng)是以應(yīng)用為中心,以計(jì)算機(jī)技術(shù)為基礎(chǔ),軟硬件可裁剪,適應(yīng)應(yīng)用系統(tǒng)對(duì)功能、可靠性、成本、體積、功耗等嚴(yán)格要求的專用計(jì)算機(jī)系統(tǒng)。
所謂物聯(lián)網(wǎng),是指通過射頻識(shí)別(RFID)、紅外感應(yīng)器、全球定位系統(tǒng)、激光掃描器等信息傳感設(shè)備,按約定的協(xié)議,把任何物品與互聯(lián)網(wǎng)相連接,進(jìn)行信息交換和通信,以實(shí)現(xiàn)對(duì)物品的智能化識(shí)別、定位、跟蹤、監(jiān)控和管理的一種網(wǎng)絡(luò)。而嵌入式技術(shù)是將“無感知物體”轉(zhuǎn)變?yōu)椤爸悄芪矬w”的關(guān)鍵技術(shù),該特性使物體具備根據(jù)外部環(huán)境變化進(jìn)行反應(yīng)的能力。嵌入式智能技術(shù)的特點(diǎn)是將硬件和軟件相結(jié)合,利用了嵌入式微處理器的`低功耗、體積小、集成度高,以及嵌入式軟件的高效率、高可靠性等優(yōu)點(diǎn),綜合人工智能技術(shù),推動(dòng)物聯(lián)網(wǎng)中智能環(huán)境的實(shí)現(xiàn)。
嵌入式系統(tǒng)涵蓋嵌入式硬件和軟件兩大部分,硬件由嵌入式處理器、存儲(chǔ)器與外圍設(shè)備、現(xiàn)場(chǎng)總線組成,軟件包括操作系統(tǒng)、文件系統(tǒng)、圖形用戶接口等。伴隨著網(wǎng)聯(lián)網(wǎng)時(shí)代的到來,也極大得推動(dòng)嵌入式技術(shù)的發(fā)展和應(yīng)用。
二. 嵌入式培訓(xùn)總結(jié)
嵌入式系統(tǒng)是以應(yīng)用為中心,以計(jì)算機(jī)為基礎(chǔ),軟硬件可裁剪,適用于系統(tǒng)對(duì)功能、可靠性、成本、功耗嚴(yán)格要求的專用計(jì)算機(jī)系統(tǒng)。實(shí)時(shí)性是嵌入式系統(tǒng)的基本要求,其次,還要求代碼小,速度快,可靠性高。嵌入式Linux(Embedded Linux)是指對(duì)Linux經(jīng)過裁剪小型化后,可固化在存儲(chǔ)器或單片機(jī)中,應(yīng)用于特定嵌入式場(chǎng)合的專用Linux操作系統(tǒng)。嵌入式Linux的開發(fā)和研究已經(jīng)成為目前操作系統(tǒng)領(lǐng)域的一個(gè)熱點(diǎn)。與其它嵌入式操作系統(tǒng)相比,Linux的特點(diǎn)如下:
第一,Linux系統(tǒng)是層次結(jié)構(gòu)且內(nèi)核完全開放。Linux是由很多體積小且性能高的微內(nèi)核系統(tǒng)組成。在內(nèi)核代碼完全開放的前提下,不同領(lǐng)域和不同層次的用戶可以根據(jù)自己的應(yīng)用需要方便地對(duì)內(nèi)核進(jìn)行改造,低成本地設(shè)計(jì)和開發(fā)出滿足自己需要的嵌入式系統(tǒng)。
第二,強(qiáng)大的網(wǎng)絡(luò)支持功能。Linux誕生于因特網(wǎng)時(shí)代并具有Unix的特性,保證了它支持所有標(biāo)準(zhǔn)因特網(wǎng)協(xié)議,并且可以利用Linux的網(wǎng)絡(luò)協(xié)議棧將其開發(fā)成為嵌入式的TCP/IP網(wǎng)絡(luò)協(xié)議棧。
第三,Linux具備一整套工具鏈,容易自行建立嵌入式系統(tǒng)的開發(fā)環(huán)境和交叉運(yùn)行環(huán)境,可以跨越嵌入式系統(tǒng)開發(fā)中仿真工具的障礙。Linux也符合IEEE POSIX.1標(biāo)準(zhǔn),使應(yīng)用程序具有較好的可移植性。
傳統(tǒng)的嵌入式開發(fā)的程序調(diào)試和調(diào)試工具是用在線仿真器(ICE)實(shí)現(xiàn)的。它通過取代目標(biāo)板的微處理器,給目標(biāo)程序提供一個(gè)完整的仿真環(huán)境,完成監(jiān)視和調(diào)試程序;但一般價(jià)格比較昂貴,只適合做非常底層的調(diào)試。
第四,Linux具有廣泛的`硬件支持特性。無論是RISC還是CISC、32位還是64位等各種處理器,Linux都能運(yùn)行。這意味著嵌入式Linux將具有更廣泛的應(yīng)用前景。
三. 嵌入式培訓(xùn)總結(jié)
職責(zé)描述:
1、負(fù)責(zé)關(guān)于產(chǎn)品硬件視頻圖像處理和計(jì)算機(jī)通訊專業(yè)技術(shù)范圍內(nèi)的技術(shù)協(xié)調(diào);
2、負(fù)責(zé)視頻圖像處理及通訊控制相關(guān)電路的技術(shù)方案評(píng)審及重大問題攻關(guān);
3、負(fù)責(zé)視頻圖像處理及計(jì)算機(jī)通訊相關(guān)電路的原理、pcb設(shè)計(jì);
5、負(fù)責(zé)相關(guān)硬件電路的單板調(diào)試與排故任務(wù);
6、負(fù)責(zé)具體工作中產(chǎn)生的各種文檔的編寫輸出,提供生產(chǎn)、裝配過程中的技術(shù)支持。
任職要求:
1、基本要求:具有2年以上嵌入式硬件開發(fā)、設(shè)計(jì)經(jīng)驗(yàn)
專業(yè)要求:電子信息、自動(dòng)化、計(jì)算機(jī)類專業(yè)
2、經(jīng)驗(yàn)要求:視頻圖像處理及計(jì)算機(jī)通訊相關(guān)硬件設(shè)計(jì)
3、專業(yè)知識(shí)及技能要求:
(1)熟悉eda設(shè)計(jì)工具及硬件開發(fā)流程,熟悉altera或xilinx公司fpga開發(fā)工具,掌握vhdl或verilog;
(2)掌握powerpc、arm等cup硬件電路設(shè)計(jì)原理,熟悉uart、spi、i2c、pcie、以太網(wǎng)等通訊協(xié)議。
(3)具有zq系列fpga soc開發(fā)經(jīng)驗(yàn),熟悉arm總結(jié)接口(axi/ahb/apb)協(xié)議者優(yōu)先。
4、其他要求:
(1)有較強(qiáng)的溝通能力;
(2)工作認(rèn)真踏實(shí),有較強(qiáng)的學(xué)習(xí)能力;
(3)有良好的團(tuán)隊(duì)精神。
mcu嵌入式軟件經(jīng)理深圳市思創(chuàng)捷電子科技有限公司深圳市思創(chuàng)捷電子科技有限公司,思創(chuàng)捷,深圳思創(chuàng)捷,思創(chuàng)捷崗位職責(zé):
1、負(fù)責(zé)設(shè)備端軟件整體架構(gòu)設(shè)計(jì)、軟件規(guī)劃;
2、編寫產(chǎn)品軟件項(xiàng)目文檔,概要與細(xì)節(jié)設(shè)計(jì),包括項(xiàng)目方案、項(xiàng)目計(jì)劃、項(xiàng)目時(shí)間進(jìn)度表等;
3、配合市場(chǎng)對(duì)接海外客戶,了解客戶技術(shù)需求,組織評(píng)審,導(dǎo)入與硬件部門協(xié)調(diào)工作;
4、熟悉各類sensor的系統(tǒng)驅(qū)動(dòng)程序的.編寫,鏈調(diào);
5、精通匯編語言c,c++,進(jìn)行嵌入式系統(tǒng)pic avr stm8 32 51等mcu單片機(jī)開發(fā),較強(qiáng)的底層驅(qū)動(dòng)代碼的編寫;5年以上經(jīng)驗(yàn);
6、熟悉tcp/ip/ussd iic usb iis rs485 r232等通訊及網(wǎng)絡(luò)后臺(tái)協(xié)議對(duì)接調(diào)試;
7、有主流手機(jī)平臺(tái)軟件驅(qū)動(dòng)層豐富調(diào)試經(jīng)驗(yàn)優(yōu)先,有成熟團(tuán)隊(duì)引入優(yōu)先;
8、自我代碼能力,達(dá)到高級(jí)程序員水平、并在目前崗位上有持續(xù)編碼能力;
任職要求:
1、大學(xué)本科及以上學(xué)歷,英文四級(jí)以上,有英文文檔制作能力;
2、三年以上無線通訊類設(shè)備或模塊(2g 3g 4g wifi ble)成熟應(yīng)用開發(fā)經(jīng)驗(yàn),熟悉wifi ble 4g等無線傳輸協(xié)議應(yīng)用;
3、具有良好的溝通協(xié)調(diào)能力,軟件團(tuán)隊(duì)建設(shè)能力;
4、熟悉cortex—m3,m4編程,熟悉rtos系統(tǒng)如ucos,freertos;
5、tracker行業(yè)排名前五從業(yè)經(jīng)驗(yàn)者優(yōu)先,對(duì)物聯(lián)網(wǎng)行業(yè)有濃厚的興趣;
6、行業(yè)經(jīng)驗(yàn)要求:工作7年以上經(jīng)驗(yàn),有iot智能硬件行業(yè)5年以上工作經(jīng)驗(yàn),有主管以上管理經(jīng)驗(yàn)。
四. 嵌入式培訓(xùn)總結(jié)
嵌入式linux 是將日益流行的Linux操作系統(tǒng)進(jìn)行裁剪修改,使之能在嵌入式計(jì)算機(jī)系統(tǒng)上運(yùn)行的一種操作系統(tǒng)。以下是關(guān)于學(xué)習(xí)嵌入式Linux系統(tǒng)的方法,希望大家認(rèn)真學(xué)習(xí)!
第一,學(xué)習(xí)基本的裸機(jī)編程
對(duì)于學(xué)硬件的人而言,必須先對(duì)硬件的基本使用方法有感性的認(rèn)識(shí),更必須深刻認(rèn)識(shí)該硬件的控制方式,如果一開始就學(xué)linux系統(tǒng)、學(xué)移植那么只會(huì)馬上就陷入一個(gè)很深的漩渦。我在剛剛開始學(xué)ARM的時(shí)候是選擇ARM7(主意是當(dāng)時(shí)ARM9還很貴),學(xué)ARM7的時(shí)候還是保持著學(xué)51單片機(jī)的思維,使用ADS去編程,第一個(gè)實(shí)驗(yàn)就是控制led.學(xué)過一段時(shí)間ARM的人都會(huì)笑這樣很笨,實(shí)際上也不是,我倒是覺得有這個(gè)過程會(huì)好很多,因?yàn)闊o論做多復(fù)雜的系統(tǒng)最終都會(huì)落實(shí)到這些最底層的硬件控制,因此對(duì)這些硬件的控制有了感性的認(rèn)識(shí)就好很多了學(xué)習(xí)裸機(jī)的編程的同時(shí)要好好理解這個(gè)硬件的構(gòu)架、控制原理,這些我稱他為理解硬件。
所謂的理解硬件就是說,理解這個(gè)硬件是怎么組織這么多資源的,這些資源又是怎么由cpu、由編程進(jìn)行控制的。比如說,s3c2410中有AD轉(zhuǎn)換器,有GPIO(通用IO口),還有nandflash控制器,這些東西都有一些寄存器來控制,這些寄存器都有一個(gè)地址,那么這些地址是什么意思?又怎么通過寄存器來控制這些外圍設(shè)備的運(yùn)轉(zhuǎn)?還有,norflash內(nèi)部的每一個(gè)單元在這個(gè)芯片的內(nèi)存中都有一個(gè)相應(yīng)的地址單元,那么這些地址與剛剛說的寄存器地址又有什么關(guān)系?他們是一樣的嗎?而與norflash相對(duì)應(yīng)的nandflash內(nèi)部的儲(chǔ)存單元并不是線性排放的,那么s3c2410怎么將nandflash的地址映射在內(nèi)存空間上進(jìn)行使用?或者簡(jiǎn)單地說應(yīng)該怎么用nandflash?再有,使用ADS進(jìn)對(duì)arm9行編程時(shí)都需要使用到一個(gè)初始化的匯編文件,這個(gè)文件究竟有什么用?他里面的代碼是什么意思?不要這個(gè)可以嗎?
諸如此類都是對(duì)硬件的理解,理解了這些東西就對(duì)硬件有很深的理解了,這對(duì)以后更深一步的學(xué)習(xí)將有很大的幫助,如果跳過這一步,我相信越往后學(xué)越會(huì)覺得迷茫,越覺得這寫東西深不可測(cè)。因?yàn)椋愕母鶝]打好。
不過先聲明一下,本人并沒有使用ADS對(duì)ARM9進(jìn)行編程,我是學(xué)完ARM7后直接就使用ARM9學(xué)linux系統(tǒng)的,因此涉及使用ADS對(duì)arm9進(jìn)行編程的問題我很難回答^_^,自己去研究研究吧。
對(duì)于這部分不久將提供一份教程,這個(gè)教程中的例程并不是我為我們所代理的板子寫的,是我在我們學(xué)院實(shí)驗(yàn)室拿的,英培特為他們自己 的實(shí)驗(yàn)箱寫的,不過很有借鑒意義,可以作為一份有價(jià)值的參考。
第二,使用linux系統(tǒng)進(jìn)行一些基本的實(shí)驗(yàn)
在買一套板子的時(shí)候一般會(huì)提供一些linux的試驗(yàn)例程,好好做一段時(shí)間這個(gè)吧,這個(gè)過程也是很有意義的,也是為進(jìn)一步的學(xué)習(xí)積累感性認(rèn)識(shí),你能想象一個(gè)從沒有使用過linux系統(tǒng)的人能學(xué)好linux的編程嗎?好好按照手冊(cè)上的例程做一做里面的實(shí)驗(yàn),雖然有點(diǎn)娃娃學(xué)走路,有點(diǎn)弱智,但是我想很多高手都會(huì)經(jīng)歷這個(gè)過程。
在這方面我們深藍(lán)科技目前沒有計(jì)劃提供相應(yīng)的例程,主要是開發(fā)板的提供商會(huì)提供很豐富的例程,我們不做重復(fù)工作,只提供他們沒有的、最有價(jià)值的東西給大家。
第三,研究完整的linux系統(tǒng)的的運(yùn)行過程
所謂完整的linux系統(tǒng)包括哪些部分呢?
三部分:bootloader、linux kernel(linux內(nèi)核)、rootfile(根文件系統(tǒng))。
那么這3部分是怎么相互協(xié)作來構(gòu)成這個(gè)系統(tǒng)的呢?各自有什么用呢?三者有什么聯(lián)系?怎么聯(lián)系?系統(tǒng)的執(zhí)行流程又是怎么樣的呢?搞清楚這個(gè)問題你對(duì)整個(gè)系統(tǒng)的運(yùn)行就很清楚了,對(duì)于下一步制作這個(gè)linux系統(tǒng)就打下了另一個(gè)重要的根基。介紹這方面的資料網(wǎng)上可以挖掘到幾噸,自己好好研究吧。
第四,開始做系統(tǒng)移植
上面說到完整的linux有3部分,而且你也知道了他們之間的關(guān)系和作用,那么現(xiàn)在你要做的便是自己動(dòng)手學(xué)會(huì)制作這些東西。
當(dāng)然我不可能叫你編寫這些代碼,這不實(shí)現(xiàn)。事實(shí)上這個(gè)3者都能在網(wǎng)下載到相應(yīng)的源代碼,但是這個(gè)源代碼不可能下載編譯后就能在你的系統(tǒng)上運(yùn)行,需要很多的修改,直到他能運(yùn)行在你的板子上,這個(gè)修改的過程就叫移植。在進(jìn)行移植的過程中你要學(xué)的東西很多,要懂的相關(guān)知識(shí)也很多,等你完成了這個(gè)過程你會(huì)發(fā)現(xiàn)你已經(jīng)算是一個(gè)初出茅廬的高手了。
在這個(gè)過程中如果你很有研究精神的話你必然會(huì)想到看源代碼。很多書介紹你怎么閱讀linux源代碼,我不提倡無目的地去看linux源代碼,用許三多的話說,這沒有意義。等你在做移植的時(shí)候你覺得你必須去看源代碼時(shí)再去找基本好書看看,這里我推薦一本好書倪繼利的《linux內(nèi)核的分析與編程》,這是一本針對(duì)linux-2.6.11內(nèi)核的書,說得很深,建議先提高自己的C語言編程水平再去看。
至于每個(gè)部分的移植網(wǎng)上也可以找到好多噸的資料,自己研究研究吧,不過要提醒的`是,很多介紹自己經(jīng)驗(yàn)的東西都或多或少有所保留,你按照他說的去做總有一些問題,但是他不會(huì)告訴你怎么解決,這時(shí)就要靠自己,如果自己都靠不住就找我一起研究研究吧,我也不能保證能解決你的問題,因?yàn)槲椅幢赜龅竭^你的問題,不過我相信能給你一點(diǎn)建議,也許有助你解決問題。
這一步的最終目的是,從源代碼的官方主頁(yè)上(都是外國(guó)的,悲哀)下載標(biāo)準(zhǔn)的源代碼包,然后進(jìn)行修改,最終運(yùn)行在板子上。
盜用阿基米德的一句話:“給我一根網(wǎng)線,我能將linux搞定”。
第五,研究linux驅(qū)動(dòng)程序的編寫
移植系統(tǒng)并不是最終的目的,最終的目的是開發(fā)產(chǎn)品,做項(xiàng)目,這些都要進(jìn)行驅(qū)動(dòng)程序的開發(fā)。
Linux的驅(qū)動(dòng)程序可以說是五花八門,linux2.4和linux2.6的編寫有相當(dāng)大的區(qū)別,就是同為linux2.6但是不同版本間的驅(qū)動(dòng)程序也有區(qū)別,因此編寫linux的驅(qū)動(dòng)程序變都不是那么容易的事情,對(duì)于最新版本的驅(qū)動(dòng)程序的編寫甚至還沒有足夠的參考資料。那么我的建議就是使用、移植一個(gè)不算很新的版本內(nèi)核,這樣到時(shí)學(xué)驅(qū)動(dòng)的編程就有足夠的資料了。
這部分的推薦書籍可以參考另一篇文章《推薦幾本學(xué)習(xí)嵌入式linux的書籍》。
第六,研究應(yīng)用程序的編寫
做作品做項(xiàng)目除了編寫驅(qū)動(dòng)程序,最后還要編寫應(yīng)用程序。現(xiàn)在的趨勢(shì)是圖形應(yīng)用程序的開發(fā),而圖形應(yīng)用程序中用得最多的還是qt/e函數(shù)庫(kù)。我一直就使用這個(gè)函數(shù)庫(kù)來開發(fā)自己的應(yīng)用程序,不過我希望你能使用國(guó)產(chǎn)的MiniGUI函數(shù)庫(kù)。盜用周杰倫的廣告詞就是“支持國(guó)產(chǎn),支持MiniGUI”。MiniGUI的編程比較相似Windows下的VC編程,比較容易上手,效果應(yīng)該說是相當(dāng)不錯(cuò)的,我曾使用過來開發(fā)arm7的程序。不過MiniGUI最大的不好就是沒有像qtopia這樣的圖形操作平臺(tái),這大大限制了他的推廣,我曾經(jīng)幻想過與北京飛漫公司(就是MiniGUI的版權(quán)擁有者)合作使用MiniGUI函數(shù)庫(kù)開發(fā)像qtopia這樣的圖形操作平臺(tái),不過由于水平有限這只能是幻想了,呵呵。
完成這一步你基本就學(xué)完了嵌入式linux的全部?jī)?nèi)容了。
還有一個(gè)小小的經(jīng)驗(yàn)想和大家分享。我在學(xué)習(xí)嵌入式linux的過程中很少問人,客觀原因是身邊的老師、同學(xué)師兄都沒有這方面的高手,主觀原因是我不喜歡問人,喜歡自己研究解決問題。這樣做有個(gè)好處,就是可以提高自己解決問題的能力,因?yàn)樽鲞@些東西總有很多問題你難以理解,別人也沒有這方面的經(jīng)驗(yàn),也不是所有問題都有人給你答案,這時(shí)必須要自己解決問題,這樣,個(gè)人的解決問題能力就顯得非常關(guān)鍵了。因此我的建議就是一般的問題到網(wǎng)上搜索一下,確實(shí)找不到答案了就問問高手,還是不行了就自己去研究,不要一味去等別人幫你解決問題。
五. 嵌入式培訓(xùn)總結(jié)
嵌入式軟件是嵌入式系統(tǒng)的核心技術(shù)之一。在應(yīng)用最廣的計(jì)算機(jī)技術(shù)之一,并被廣泛應(yīng)用于網(wǎng)絡(luò)通信、消費(fèi)電子、醫(yī)療電子、工業(yè)控制和交通系統(tǒng)等領(lǐng)域。
每年全球嵌入式系統(tǒng)相關(guān)工業(yè)產(chǎn)值已超過1萬億美元,全球嵌入式系統(tǒng)硬件和軟件開發(fā)工具市場(chǎng)約值2千億美元,而中國(guó)嵌入式軟件的產(chǎn)業(yè)規(guī)模也已經(jīng)超過千億元人民幣。賽迪顧問提供的數(shù)據(jù)表明,由于市場(chǎng)空間巨大,中國(guó)嵌入式軟件產(chǎn)業(yè)將繼續(xù)保持高速增長(zhǎng),2009年中國(guó)嵌入式軟件市場(chǎng)規(guī)模已達(dá)到2496.2億元人民幣。而到2011年,其規(guī)模有望達(dá)到4650億元人民幣。
嵌入式應(yīng)用領(lǐng)域
嵌入式系統(tǒng)是當(dāng)前最熱門、最具發(fā)展前途的IT應(yīng)用領(lǐng)域之一。包括手機(jī)、電子字典、可視電話、數(shù)字相機(jī)、數(shù)字?jǐn)z像機(jī)、U-Disk、機(jī)頂盒、高清電視、游戲機(jī)、智能玩具、交換機(jī)、路由器、數(shù)控設(shè)備或儀表、汽車電子、家電控制系統(tǒng)、醫(yī)療儀器、航天航空設(shè)備等都是典型的嵌入式系統(tǒng)。因此,通過嵌入式培訓(xùn)成為專業(yè)的'嵌入式技術(shù)人才,其職業(yè)發(fā)展空間較大。
嵌入式人才需求
目前國(guó)內(nèi)嵌入式人才極度匱乏,權(quán)威部門統(tǒng)計(jì),我國(guó)目前嵌入式軟件人才缺口每年為40萬人左右。供不應(yīng)求使得嵌入式人才身價(jià)上漲,而且,越有專業(yè)經(jīng)驗(yàn),就業(yè)競(jìng)爭(zhēng)力就越大。因此,IT專業(yè)人士通過培訓(xùn)掌握嵌入式技術(shù),就能成為炙手可熱的專業(yè)人才,其培訓(xùn)回報(bào)有保障。
嵌入式就業(yè)方向
由于大唐各約嵌入式技術(shù)支持工程師都高居前五位。
六. 嵌入式培訓(xùn)總結(jié)
2017年嵌入式系統(tǒng)題庫(kù)
嵌入式系統(tǒng)的核心是由一個(gè)或幾個(gè)預(yù)先編程好以用來執(zhí)行少數(shù)幾項(xiàng)任務(wù)的微處理器或者單片機(jī)組成。下面是小編收集的嵌入式系統(tǒng)題庫(kù),希望大家認(rèn)真閱讀!
1:用C語言實(shí)現(xiàn)大小端的測(cè)試
Int CheckCpu()
{
union
{
int a;
char b;
}c;
c.a=1;
if(c.b==1)
printf(“小端”);
else printf(“大端”);
}
2:volatile的作用有哪些?
Volatile第一變量相當(dāng)于告訴編譯器這個(gè)變量的值會(huì)隨時(shí)發(fā)生變化,每次使用之前都要去內(nèi)存里從新讀取它的值,并不要隨意針對(duì)它做優(yōu)化,主要用在:
1:一個(gè)中斷子程序中會(huì)訪問到的非自動(dòng)變量;
2:多線程應(yīng)用中被幾個(gè)線程共享的變量;
3:并行設(shè)備的硬件寄存器。
3:C語言中static關(guān)鍵字的作用有哪些?
1:在函數(shù)體中,一個(gè)被聲明為靜態(tài)的變量在這個(gè)變量在調(diào)用過程中維持其值不變;
2:在模塊內(nèi)(但在函數(shù)體外),一個(gè)被聲明為靜態(tài)的變量,可以被這個(gè)模塊內(nèi)的所用函數(shù)使用,但不能被模塊外的函數(shù)使用,它是一個(gè)本地的全局變量;
3:在模塊內(nèi),一個(gè)被聲明為靜態(tài)變量的函數(shù),智能被這個(gè)模塊內(nèi)的函數(shù)調(diào)用;
4:static全局變量與局部變量的'區(qū)別:static全局變量只能被初始化一次,防止其他單元文件中被引用;
5:static局部變量與局部變量的區(qū)別:static局部變量只能被初始化一次,下一次依據(jù)上一次結(jié)果的值;
6:static函數(shù)與普通函數(shù)的區(qū)別:static在內(nèi)存中只用一份,普通函數(shù)在每一次調(diào)用中維持一份拷貝。
4:請(qǐng)問下面三種變量的區(qū)別:
Int const *p : 指向常整型的指針;
Int *const p; 指向整型的常指針;
Int *const *p: 指向常整型的常指針;
5:在ARM系統(tǒng)中,在函數(shù)調(diào)用的時(shí)候,參數(shù)是通過哪種方式傳遞的。
當(dāng)參數(shù)小于等于4的時(shí)候是通過r0~r3來進(jìn)行傳遞的,當(dāng)參數(shù)大于4的時(shí)候是通過壓棧的方式進(jìn)行傳遞。
6:中斷與異常有何區(qū)別.
異常在處理的時(shí)候必須考慮與處理器的時(shí)鐘同步,實(shí)際上異常也稱為同步中斷,在處理器執(zhí)行到因編譯錯(cuò)誤而導(dǎo)致的錯(cuò)誤指令時(shí),或者在執(zhí)行期間出現(xiàn)特殊錯(cuò)誤,必須靠?jī)?nèi)核處理的時(shí)候,處理器就會(huì)產(chǎn)生一個(gè)異常;所謂中斷是指外部硬件產(chǎn)生的一個(gè)電信號(hào)從CPU的中斷引腳進(jìn)入,打斷CPU的運(yùn)行。所謂異常是指軟件運(yùn)行過程中發(fā)生了一些必須作出處理的事件,CPU自動(dòng)產(chǎn)生一個(gè)陷入來打斷CPU的運(yùn)行。
7:用預(yù)處理指令#define表示一年中有多少秒
#define SECONDS_PER_YEAR (60*60*24*365)UL
注意后面必須加UL,表示計(jì)算的結(jié)構(gòu)是常整型。
8:簡(jiǎn)述SPI,UART,I2C三種傳輸方式。
SPI:高速同步串行口,首發(fā)獨(dú)立,可同步進(jìn)行
SPI接口主要應(yīng)用在EEPROM,F(xiàn)lash,實(shí)時(shí)時(shí)鐘,A/D轉(zhuǎn)化器,數(shù)字信號(hào)處理,是一種全雙工同步通訊總線,該接口一般使用四條線:串行時(shí)鐘線(sck),主出從入線,主入從出線,低電平有效地的從機(jī)選擇線。
I2C協(xié)議:是單片機(jī)與其他芯片進(jìn)行通訊的協(xié)議:1:只要求兩條總線線路,一條是串行時(shí)鐘線,一條是串行數(shù)據(jù)線; 2:通過軟件設(shè)定地址 3:是一個(gè)多主機(jī)總線,如果兩個(gè)或更多主機(jī)同時(shí)初始化數(shù)據(jù)傳送可通過沖突檢測(cè)和仲裁防止數(shù)據(jù)破壞; 4:I2C總線傳輸?shù)氖菙?shù)據(jù)的總高位
UART:主要是由一個(gè)modem(調(diào)制解調(diào)器),可以將模擬信號(hào)量轉(zhuǎn)化成數(shù)字信號(hào)量。
9:中斷不能返回一個(gè)值,中斷不能傳遞參數(shù)。
10:嵌入式系統(tǒng)總要求用戶對(duì)變量或者寄存器進(jìn)行位操作,給定一個(gè)整型變量a:
define BIT3 (oxo1<<3)
static int a ;
void set_bit3(void)
{
a|=BIT3;
}
void clear_bit3(void)
{
a&=~BIT3;
}
作為一個(gè)嵌入式程序員,這種程序是小菜一碟,至所以給出這個(gè)程序,是想規(guī)范大家寫程序方法,這里主要是用到了一個(gè)宏定義:BIT3 這樣的話就可以增加程序的可讀性
同時(shí)移植性也增強(qiáng)。
11:嵌入式系統(tǒng)中經(jīng)常要求程序去訪問某特定內(nèi)存的特點(diǎn),在某工程中,要求設(shè)定一個(gè)絕對(duì)地址0x6799的整型變量的值為0xaa66.
Int *ptr;
ptr=(int*)0x67a9;
*ptr=aa66
12:引用和指針有什么區(qū)別?
1:應(yīng)用必須初始化,指針不必;
2:引用處畫化后不能改變,指針可以被改變;
3:不存在指向空值的引用,但存在指向空值的指針;
13:全局變量與局部變量在內(nèi)存中是否有區(qū)別,是什么區(qū)別?
全局變量存儲(chǔ)在靜態(tài)數(shù)據(jù)庫(kù),局部變量存儲(chǔ)在堆棧;
14:寫出float,bool,int類型與零的比較,假設(shè)變量為X:
Int : if(x==0)
Float: if(x>0.0000001&&x<0.0000001)
Bool: if(x==false)
15:Intertnet采用哪種網(wǎng)絡(luò)協(xié)議,該協(xié)議的主要層次結(jié)構(gòu)?
TCP/IP協(xié)議
應(yīng)用層/傳輸層/網(wǎng)絡(luò)層/數(shù)字鏈路層/物理層。
16:IP地址有兩部分組成:網(wǎng)絡(luò)號(hào)和主機(jī)號(hào)
17:程序的局部變量存儲(chǔ)在(棧)中,全局變量存儲(chǔ)于(靜態(tài)存儲(chǔ)區(qū)),動(dòng)態(tài)申請(qǐng)數(shù)據(jù)存儲(chǔ)于(堆中);
18:編寫一個(gè)字符串復(fù)制函數(shù):strcpy(const char *str,const char *str1)
void strcpy(const *char str,const chat *str1)
{
if(*str1==’\0’) return;
char *sp1,*sp2;
sp1= str;
sp2=str1;
while(*sp2!=’\0’)
{
*sp1=sp2;
sp1++;
sp2++;
}
}
19:編寫一個(gè)函數(shù)實(shí)現(xiàn)字符串翻轉(zhuǎn) void rechange(char *str)
void rechange(char *str)
{
Int len;
char t;
len=strlen(str);
for(int i=0;len/2;i++)
{
t=str[i];
str[i]=str[len-i-1];
str[len-i-1]=t;
}
}
20:編寫一個(gè)函數(shù)實(shí)現(xiàn)字符串比較 int strcmp(char *str1,char *str2),相等返回1,不相等返回0:
int strcmp(char *str1,char *str2)
{
if(*str1==‘\0’||*str2==’\0’) return;
while(*str1!=’\0’&&*str2!=’\0’&&*str1==*str2)
{
str1++;
str2++;
}
if(*str1==*str2)
return 1;
else return 0;
}
}
21:進(jìn)程和線程的區(qū)別:
1:調(diào)度:線程作為調(diào)度和分配的基本單元,進(jìn)程作為擁有資源的基本單位;
2:并發(fā)性:不僅進(jìn)程可以并發(fā)執(zhí)行,同一進(jìn)程內(nèi)的線程也可以并發(fā)執(zhí)行。
3:擁有資源:進(jìn)程是擁有資源的基本獨(dú)立單元,線程不擁有資源,但可以訪問進(jìn)程內(nèi)的資源;
4:在創(chuàng)建或撤銷線程時(shí),由于系統(tǒng)都要為之分配和回收內(nèi)存資源,導(dǎo)致系統(tǒng)的開銷明顯大于創(chuàng)建或撤銷線程時(shí)的開銷。
七. 嵌入式培訓(xùn)總結(jié)
嵌入式培訓(xùn)在國(guó)內(nèi)從“流行”至今已經(jīng)十年有余了,正式由于其廣泛的實(shí)用性,讓很大一部分年輕人投身于嵌入式系統(tǒng)開發(fā)的行業(yè)中來,作為新人剛開始顯然是困難重重,所以嵌入式培訓(xùn)在此時(shí)就成為了有效的突破口!不得不承認(rèn),經(jīng)過專業(yè)系統(tǒng)化的的學(xué)習(xí)加以實(shí)踐,才能逐漸進(jìn)入這一行,畢竟這是一項(xiàng)技術(shù)。面對(duì)各式各樣的嵌入式培訓(xùn)機(jī)構(gòu),究竟嵌入式培訓(xùn)哪家好呢?
首先不得不提到國(guó)內(nèi)最早的嵌入式培訓(xùn)機(jī)構(gòu)——華清遠(yuǎn)見嵌入式學(xué)院,這家公司在這行業(yè)整整做了將近十年,從師資力量上講還是比較突出的,教師多為資深的嵌入式工作者,經(jīng)驗(yàn)均超過8年。正是由于他們的兢兢業(yè)業(yè),在這十年來將近培養(yǎng)出50000多名嵌入式工程師,其次這家教育機(jī)構(gòu)的培訓(xùn)教材均為自主研發(fā)。教材也同時(shí)在電子工業(yè)出版社、郵電出版社均出版,在社會(huì)上市場(chǎng)上熱賣多年。
近些年來,互聯(lián)網(wǎng)推廣的興起,很多機(jī)構(gòu)都花上百萬來的廣告費(fèi)來宣傳自己,華清市場(chǎng)策略沒把網(wǎng)絡(luò)推廣當(dāng)成自己的存活的資本,而一直以來以學(xué)生滿意度放在至上,口碑相傳使得華清遠(yuǎn)見逐漸變大,對(duì)于一個(gè)十年的培訓(xùn)教育機(jī)構(gòu)變成當(dāng)今500人的教育集團(tuán),無疑是行業(yè)最優(yōu)秀的企業(yè)。
嵌入式培訓(xùn)哪家好呢?以上簡(jiǎn)單對(duì)行業(yè)的巨頭做了一下介紹,也許你對(duì)華清遠(yuǎn)見還不是很了解,更多詳情均可登錄華清遠(yuǎn)見官方的網(wǎng)站看看畢業(yè)生的.就業(yè)感言。真實(shí)的記載了這十年來華清成長(zhǎng)的點(diǎn)點(diǎn)滴滴。
同時(shí)介紹一下華清遠(yuǎn)見嵌入式培訓(xùn)課程大綱,讓更多有意向?qū)W習(xí)的朋友們了解,嵌入式培訓(xùn)究竟培訓(xùn)哪些東西。
第一階段:嵌入式Linux軟件工程師
1、Linux操作系統(tǒng)使用
2、嵌入式Linux C語言編程
3、Java編程基礎(chǔ)
4、嵌入式Linux項(xiàng)目開發(fā)流程
第二階段:嵌入式Linux系統(tǒng)工程師
5、嵌入式 Linux應(yīng)用編程
6、Android應(yīng)用編程
7、ARM處理器編程
8、ARM硬件接口開發(fā)
9、嵌入式Linux系統(tǒng)開發(fā)
10、嵌入式Linux內(nèi)核開發(fā)
11、嵌入式Linux驅(qū)動(dòng)開發(fā)基礎(chǔ)
12、嵌入式Linux驅(qū)動(dòng)高級(jí)開發(fā)
13、綜合案例的實(shí)戰(zhàn)訓(xùn)練
第三階段:嵌入式Linux驅(qū)動(dòng)工程師
14、嵌入式Linux在3G領(lǐng)域的典型應(yīng)用--3G手機(jī)Android操作系統(tǒng)
15、Android底層系統(tǒng)開發(fā)
16、嵌入式Linux項(xiàng)目實(shí)踐
最后!華清遠(yuǎn)見嵌入式培訓(xùn)學(xué)院跟廣大學(xué)員承諾說:
1. 在華清學(xué)習(xí)0首付,先就業(yè)后付款,通過入學(xué)測(cè)試即簽就業(yè)協(xié)議,承諾半年內(nèi)必須實(shí)現(xiàn)高薪就業(yè),絕非推薦就業(yè);
2. 其次這是國(guó)內(nèi)首個(gè)為學(xué)員提供“貼心就業(yè)”服務(wù)的培訓(xùn)機(jī)構(gòu),學(xué)員在入學(xué)時(shí)我們?yōu)槊棵麑W(xué)員建立就業(yè)檔案,記錄學(xué)員的就業(yè)傾向及就業(yè)要求甚至細(xì)微到就業(yè)區(qū)域,并且詳細(xì)記錄學(xué)員的學(xué)習(xí)狀態(tài),針對(duì)性的為學(xué)員提供職業(yè)素質(zhì)輔導(dǎo),確保準(zhǔn)確的為學(xué)員提供就業(yè)服務(wù),保證就業(yè)質(zhì)量。
嵌入式培訓(xùn)哪家好呢?華清提供免費(fèi)視聽課,真正的把學(xué)員滿意放在第一位,同時(shí)在全國(guó)8個(gè)地方均可報(bào)名參與。包括(北京、上海、南京、西安、成都、武漢、廣州、深圳),熱烈歡迎每一位想學(xué)習(xí)的同學(xué),由我們專業(yè)的講師助您實(shí)現(xiàn)嵌入式系統(tǒng)開發(fā)的夢(mèng)想!
八. 嵌入式培訓(xùn)總結(jié)
所有帶有數(shù)字接口的設(shè)備,如手表、微波爐、錄像機(jī)、汽車等,都使用嵌入式系統(tǒng),有些嵌入式系統(tǒng)還包含操作系統(tǒng),但大多數(shù)嵌入式系統(tǒng)都是由單個(gè)程序?qū)崿F(xiàn)整個(gè)控制邏輯。下面是小編整理的關(guān)于嵌入式系統(tǒng)體系結(jié)構(gòu),歡迎大家參考!
嵌入式系統(tǒng)體系結(jié)構(gòu):
嵌入式系統(tǒng)的組成包含了硬件層、中間層、系統(tǒng)軟件層和應(yīng)用軟件層。
1、硬件層:嵌入式微處理器、存儲(chǔ)器、通用設(shè)備接口和I/O接口。
嵌入式核心模塊=微處理器+電源電路+時(shí)鐘電路+存儲(chǔ)器
Cache:位于主存和嵌入式微處理器內(nèi)核之間,存放的是最近一段時(shí)間微處理器使用最多的程序代碼和數(shù)據(jù)。它的主要目標(biāo)是減小存儲(chǔ)器給微處理器內(nèi)核造成的存儲(chǔ)器訪問瓶頸,使處理速度更快。
2、中間層(也稱為硬件抽象層HAL或者板級(jí)支持包BSP).
它將系統(tǒng)上層軟件和底層硬件分離開來,使系統(tǒng)上層軟件開發(fā)人員無需關(guān)系底層硬件的具體情況,根據(jù)BSP層提供的接口開發(fā)即可。BSP有兩個(gè)特點(diǎn):硬件相關(guān)性和操作系統(tǒng)相關(guān)性。
設(shè)計(jì)一個(gè)完整的BSP需要完成兩部分工作:
A、 嵌入式系統(tǒng)的硬件初始化和BSP功能。
片級(jí)初始化:純硬件的初始化過程,把嵌入式微處理器從上電的默認(rèn)狀態(tài)逐步設(shè)置成系統(tǒng)所要求的工作狀態(tài)。
板級(jí)初始化:包含軟硬件兩部分在內(nèi)的初始化過程,為隨后的系統(tǒng)初始化和應(yīng)用程序建立硬件和軟件的運(yùn)行環(huán)境。
系統(tǒng)級(jí)初始化:以軟件為主的初始化過程,進(jìn)行操作系統(tǒng)的初始化。
B、 設(shè)計(jì)硬件相關(guān)的設(shè)備驅(qū)動(dòng)。
3、系統(tǒng)軟件層:由RTOS、文件系統(tǒng)、GUI、網(wǎng)絡(luò)系統(tǒng)及通用組件模塊組成。
RTOS是嵌入式應(yīng)用軟件的基礎(chǔ)和開發(fā)平臺(tái)。
4、應(yīng)用軟件:由基于實(shí)時(shí)系統(tǒng)開發(fā)的應(yīng)用程序組成。
嵌入式芯片體系結(jié)構(gòu)介紹
1.嵌入式微處理器(Micro Processor Unit,MPU)
嵌入式微處理器是由通用計(jì)算機(jī)中的CPU演變而來的。它的特征是具有32位以上的處理器,具有較高的性能,當(dāng)然其價(jià)格也相應(yīng)較高。但與計(jì)算機(jī)處理器不同的是,在實(shí)際嵌入式應(yīng)用中,只保留和嵌入式應(yīng)用緊密相關(guān)的功能硬件,去除其他的冗余功能部分,這樣就以最低的功耗和資源實(shí)現(xiàn)嵌入式應(yīng)用的特殊要求。和工業(yè)控制計(jì)算機(jī)相比,嵌入式微處理器具有體積小、重量輕、成本低、可靠性高的優(yōu)點(diǎn)。目前主要的嵌入式處理器類型有Am186/88、386EX、SC-400、Power PC、68000、MIPS、ARM/ StrongARM系列等。其中Arm/StrongArm是專為手持設(shè)備開發(fā)的嵌入式微處理器,屬于中檔的價(jià)位。
Power PC:
由IBM、Apple和Motorola聯(lián)合開發(fā),并制造出基于PowerPC的多處理器計(jì)算機(jī)。PowerPC架構(gòu)具有可伸縮性好、方便靈活的特點(diǎn)。主要有以下產(chǎn)品使用Power PC微處理器
蘋果公司:Power Macintosh系列、PowerBook系列(1995年以后的產(chǎn)品)、iBook系列、iMac系列(2005年以前的產(chǎn)品)、eMac系列產(chǎn)品。
任天堂:GameCube 和 Wii。
Sony:PlayStation 3。
MIPS:
MIPS是世界上很流行的一種RISC處理器。MIPS的意思“無內(nèi)部互鎖流水級(jí)的微處理器”(Microprocessor without interlocked piped stages),其機(jī)制是盡量利用軟件辦法避免流水線中的數(shù)據(jù)相關(guān)問題。它最早是在80年代初期由斯坦福(Stanford)大學(xué)Hennessy教授領(lǐng)導(dǎo)的研究小組研制出來的。MIPS公司的R系列就是在此基礎(chǔ)上開發(fā)的RISC工業(yè)產(chǎn)品的'微處理器。這些系列產(chǎn)品為很多計(jì)算機(jī)公司采用構(gòu)成各種工作站和計(jì)算機(jī)系統(tǒng)。MIPS技術(shù)公司是美國(guó)著名的芯片設(shè)計(jì)公司,它采用精簡(jiǎn)指令系統(tǒng)計(jì)算結(jié)構(gòu)(RISC)來設(shè)計(jì)芯片。和英特爾采用的復(fù)雜指令系統(tǒng)計(jì)算結(jié)構(gòu)(CISC)相比,RISC具有設(shè)計(jì)更簡(jiǎn)單、設(shè)計(jì)周期更短等優(yōu)點(diǎn),并可以應(yīng)用更多先進(jìn)的技術(shù),開發(fā)更快的下一代處理器。MIPS是出現(xiàn)最早的商業(yè)RISC架構(gòu)芯片之一,新的架構(gòu)集成了所有原來MIPS指令集,并增加了許多更強(qiáng)大的功能。MIPS處理器是八十年代中期RISC CPU設(shè)計(jì)的一大熱點(diǎn)。MIPS是賣的最好的RISC CPU,可以從任何地方,如Sony, Nintendo的游戲機(jī),Cisco的路由器和SGI超級(jí)計(jì)算機(jī),看見MIPS產(chǎn)品在銷售。目前隨著RISC體系結(jié)構(gòu)遭到x86芯片的競(jìng)爭(zhēng),MIPS有可能是起初RISC CPU設(shè)計(jì)中唯一的一個(gè)在本世紀(jì)盈利的。和英特爾相比,MIPS的授權(quán)費(fèi)用比較低,也就為除英特爾外的大多數(shù)芯片廠商所采用。
2.嵌入式微控制器(Microcontroller Unit, MCU)
嵌入式微控制器的典型代表是單片機(jī),從70年代末單片機(jī)出現(xiàn)到今天,雖然已經(jīng)經(jīng)過了20多年的歷史,但這種8位的電子器件目前在嵌入式設(shè)備中仍然有著極其廣泛的應(yīng)用。單片機(jī)芯片內(nèi)部集成ROM/EPROM、RAM、總線、總線邏輯、定時(shí)/計(jì)數(shù)器、看門狗、I/O、串行口、脈寬調(diào)制輸出、A/D、D/A、Flash RAM、EEPROM等各種必要功能和外設(shè)。和嵌入式微處理器相比,微控制器的最大特點(diǎn)是單片化,體積大大減小,從而使功耗和成本下降、可靠性提高。微控制器是目前嵌入式系統(tǒng)工業(yè)的主流。微控制器的片上外設(shè)資源一般比較豐富,適合于控制,因此稱微控制器。由于MCU低廉的價(jià)格,優(yōu)良的功能,所以擁有的品種和數(shù)量最多,比較有代表性的包括8051、MCS-251、MCS-96/196/296、P51XA、C166/167、68K系列以及 MCU 8XC930/931、C540、C541,并且有支持I2C、CAN-Bus、LCD及眾多專用MCU和兼容系列。目前MCU占嵌入式系統(tǒng)約70%的市場(chǎng)份額。近來Atmel出產(chǎn)的Avr單片機(jī)由于其集成了FPGA等器件,所以具有很高的性價(jià)比,勢(shì)必將推動(dòng)單片機(jī)獲得更高的發(fā)展。
3.嵌入式DSP處理器(Embedded Digital Signal Processor, EDSP)
DSP處理器是專門用于信號(hào)處理方面的處理器,其在系統(tǒng)結(jié)構(gòu)和指令算法方面進(jìn)行了特殊設(shè)計(jì),具有很高的編譯效率和指令的執(zhí)行速度。在數(shù)字濾波、FFT、譜分析等各種儀器上DSP獲得了大規(guī)模的應(yīng)用。DSP的理論算法在70年代就已經(jīng)出現(xiàn),但是由于專門的DSP處理器還未出現(xiàn),所以這種理論算法只能通過MPU等由分立元件實(shí)現(xiàn)。MPU較低的處理速度無法滿足DSP的算法要求,其應(yīng)用領(lǐng)域僅僅局限于一些尖端的高科技領(lǐng)域。隨著大規(guī)模集成電路技術(shù)發(fā)展,1982年世界上誕生了首枚DSP芯片。其運(yùn)算速度比MPU快了幾十倍,在語音合成和編碼解碼器中得到了廣泛應(yīng)用。至80年代中期,隨著CMOS技術(shù)的進(jìn)步與發(fā)展,第二代基于CMOS工藝的DSP芯片應(yīng)運(yùn)而生,其存儲(chǔ)容量和運(yùn)算速度都得到成倍提高,成為語音處理、圖像硬件處理技術(shù)的基礎(chǔ)。到80年代后期,DSP的運(yùn)算速度進(jìn)一步提高,應(yīng)用領(lǐng)域也從上述范圍擴(kuò)大到了通信和計(jì)算機(jī)方面。90年代后,DSP發(fā)展到了第五代產(chǎn)品,集成度更高,使用范圍也更加廣闊。目前最為廣泛應(yīng)用的是TI的TMS320C2000/C5000系列,另外如Intel的MCS-296和Siemens的TriCore也有各自的應(yīng)用范圍。根據(jù)芯片廠商采用不同的IP核,可以分為以下幾類:
StarCore
Freescale
飛思卡爾數(shù)字信號(hào)處理器采用StarCore技術(shù),是業(yè)內(nèi)最高性能的可編程器件,可滿足基帶、航空航天、國(guó)防、醫(yī)療和測(cè)試與測(cè)量市場(chǎng)的需求。我們?cè)O(shè)計(jì)的StarCore DSP系列產(chǎn)品提供全面靈活擴(kuò)展的解決方案,幫助客戶加快產(chǎn)品上市。StarCore DSP具有低功耗、低成本的顯著特點(diǎn),是下一代設(shè)計(jì)的理想解決方案。通過新一代創(chuàng)新實(shí)現(xiàn)更加智能的世界。多核芯片主要包括:MSC8122: 帶有以太網(wǎng)的四核16位DSP,MSC8126: 帶有以太網(wǎng)、TCOP和VCOP的四核16位DSP,MSC8144: 四核DSP,MSC8152: 高性能雙核DSP,MSC8154: 高性能四核DSP,MSC8154E: 帶有安全功能的高性能四核DSP,MSC8156: 高性能六核DSP,MSC8156E: 帶有安全功能的高性能六核DSP,MSC8157: MSC8157寬帶無線接入DSP,MSC8158: MSC8158寬帶無線接入DSP,MSC8252: 高性能雙核DSP,MSC8254: 高性能四核DSP,MSC8256: 高性能六核DSP 。單核芯片主要包括: MSC8151: 高性能單核DSP,MSC8251: 高性能單核DSP。
4.嵌入式片上系統(tǒng)(System On Chip)
SoC追求產(chǎn)品系統(tǒng)最大包容的集成器件,是目前嵌入式應(yīng)用領(lǐng)域的熱門話題之一。SOC最大的特點(diǎn)是成功實(shí)現(xiàn)了軟硬件無縫結(jié)合,直接在處理器片內(nèi)嵌入操作系統(tǒng)的代碼模塊。而且SOC具有極高的綜合性,在一個(gè)硅片內(nèi)部運(yùn)用VHDL等硬件描述語言,實(shí)現(xiàn)一個(gè)復(fù)雜的系統(tǒng)。用戶不需要再像傳統(tǒng)的系統(tǒng)設(shè)計(jì)一樣,繪制龐大復(fù)雜的電路板,一點(diǎn)點(diǎn)的連接焊制,只需要使用精確的語言,綜合時(shí)序設(shè)計(jì)直接在器件庫(kù)中調(diào)用各種通用處理器的標(biāo)準(zhǔn),然后通過仿真之后就可以直接交付芯片廠商進(jìn)行生產(chǎn)。由于絕大部分系統(tǒng)構(gòu)件都是在系統(tǒng)內(nèi)部,整個(gè)系統(tǒng)就特別簡(jiǎn)潔,不僅減小了系統(tǒng)的體積和功耗,而且提高了系統(tǒng)的可靠性,提高了設(shè)計(jì)生產(chǎn)效率。由于SOC往往是專用的,所以大部分都不為用戶所知,比較典型的SOC產(chǎn)品是Philips的Smart XA。少數(shù)通用系列如Siemens的TriCore,Motorola的M-Core,某些ARM系列器件,Echelon和Motorola聯(lián)合研制的Neuron芯片等。預(yù)計(jì)不久的將來,一些大的芯片公司將通過推出成熟的、能占領(lǐng)多數(shù)市場(chǎng)的SOC芯片,一舉擊退競(jìng)爭(zhēng)者。SOC芯片也將在聲音、圖像、影視、網(wǎng)絡(luò)及系統(tǒng)邏輯等應(yīng)用領(lǐng)域中發(fā)揮重要作用。
嵌入式系統(tǒng)的組成結(jié)構(gòu)
- ?讀書筆記吧dsBj1.cOM優(yōu)質(zhì)珍藏:
- 嵌入式心得體會(huì)?|?保潔培訓(xùn)總結(jié)?|?煤礦培訓(xùn)總結(jié)?|?護(hù)理培訓(xùn)總結(jié)?|?嵌入式培訓(xùn)總結(jié)?|?嵌入式培訓(xùn)總結(jié)
1.硬件層
(1)嵌入式微處理器
嵌入式系統(tǒng)硬件層的核心是嵌入式微處理器,嵌入式微處理器與通用CPU的不同在于嵌入式微處理器大多工作在為特定用戶群所專門設(shè)計(jì)的系統(tǒng)中,它將通用CPU許多由板卡完成的任務(wù)集成在芯片內(nèi)部,從而有利于嵌入式系統(tǒng)在設(shè)計(jì)時(shí)趨于小型化,同時(shí)還具有很高的效率和可靠性。
嵌入式微處理器有各種不同的體系,即使在同一體系中也可能具有不同的時(shí)鐘頻率和數(shù)據(jù)總線寬度,或集成了不同的外設(shè)和接口。據(jù)不完全統(tǒng)計(jì),目前全世界嵌入式微處理器已經(jīng)超過1000多種,體系結(jié)構(gòu)有30多個(gè)系列,其中主流的體系有ARM、MIPS( Microprocessor without InterlockedPiped Stages,無互鎖流水級(jí)的微處理器)/Power PC、X86、SH等。
(2)存儲(chǔ)器
嵌入式系統(tǒng)需要存儲(chǔ)器來存放可執(zhí)行代碼和數(shù)據(jù)。嵌入式系統(tǒng)的存儲(chǔ)器包含Cache、內(nèi)存和外存。
① Cache: Cache是一種容量小、速度快的存儲(chǔ)器陣列,它位于內(nèi)存和嵌入式微處理器內(nèi)核之間,存放的是近一段時(shí)間微處理器使用多的程序代碼和數(shù)據(jù)。在嵌入式系統(tǒng)中,Cache全部集成在嵌入式微處理器內(nèi),可分為數(shù)據(jù)Cache、指令Cache和混合Cache, Cache的大小依不同處理器而定。
②內(nèi)存:位于微處理器的內(nèi)部,用來存放系統(tǒng)和用戶的程序及數(shù)據(jù)。片內(nèi)存儲(chǔ)器容量小、速度快。
③外存:外存用來存放大數(shù)據(jù)量的程序代碼或信息,它的容量大,但讀取速度與內(nèi)存相比慢很多,用來長(zhǎng)期保存用戶的信息。
嵌入式系統(tǒng)中常用的外存有硬盤、NAND Flash、CF卡、MMC、SD卡等。
(3)通用設(shè)備接口和I/O接口
嵌入式系統(tǒng)和外界交互需要一定形式的通用設(shè)備接口,如A/D、D/A、I/O等,外設(shè)通過和片外其他設(shè)備或傳感器的連接來實(shí)現(xiàn)微處理器的輸入/輸出功能。每個(gè)外設(shè)通常都只有單一的功能,它可以在芯片外也可以內(nèi)置芯片中。外設(shè)的種類很多,可從一個(gè)簡(jiǎn)單的串行通信設(shè)備到非常復(fù)雜的802.11無線設(shè)備。
目前,嵌入式系統(tǒng)中常用的通用設(shè)備接口有A/D(模/數(shù)轉(zhuǎn)換接口)、D/A(數(shù)/模轉(zhuǎn)換接口),I/O接口有RS-232接口(串行通信接口)、Ethernet(以太網(wǎng)接口)、USB(通用串行總線接口)、音頻接口、VGA視頻輸出接口、I2C(現(xiàn)場(chǎng)總線)、SPI(串行外圍設(shè)備接口)、IrDA(紅外線接口)等
2.中間層
硬件層與軟件層之間為中間層,也稱為硬件抽象層( Hardware Abstract Layer,HAL)或板級(jí)支持包( Board support Package,BSP),它將系統(tǒng)上層軟件與底層硬件分離開來,使系統(tǒng)的底層驅(qū)動(dòng)程序與硬件無關(guān),上層軟件開發(fā)人員無須關(guān)心底層硬件的具體情況,根據(jù)BSP層提供的接口即可進(jìn)行開發(fā)。該層一般包含相關(guān)底層硬件的初始化、數(shù)據(jù)的輸入/輸出操作和硬件設(shè)備的配置功能。
實(shí)際上,BSP是一個(gè)介于操作系統(tǒng)和底層硬件之間的軟件層次,包括了系統(tǒng)中大部分與硬件聯(lián)系緊密的軟件模塊。設(shè)計(jì)一個(gè)完整的BSP需要完成兩部分工作:嵌入式系統(tǒng)的硬件初始化以及BSP功能,設(shè)計(jì)硬件相關(guān)的設(shè)備驅(qū)動(dòng)。
3.軟件層
軟件層由嵌入式操作系統(tǒng)( Embedded OperaTIon System,EOS)、文件系統(tǒng)、圖形用戶接口( Graphic User Interface,GUI)、網(wǎng)絡(luò)系統(tǒng)及通用組件模塊組成。EOS是嵌入式應(yīng)用軟件的基礎(chǔ)和開發(fā)平臺(tái)。以下先介紹前三種。
(1)嵌入式操作系統(tǒng)
不同功能的嵌入式系統(tǒng)的復(fù)雜程度有很大不同。簡(jiǎn)單的嵌入式系統(tǒng)僅僅具有單一的功能,存儲(chǔ)器中的程序就是為了這一功能設(shè)計(jì)的,其系統(tǒng)處理核心也是單一任務(wù)處理器。復(fù)雜的嵌入式系統(tǒng)不僅功能強(qiáng)大,往往還配有嵌入式操作系統(tǒng),如功能強(qiáng)大的智能手機(jī)等,幾乎具有與微型計(jì)算機(jī)一樣的功能。
嵌入式操作系統(tǒng)( Embedded OperaTIon System,BOS)是一種用途廣泛的系統(tǒng)軟件,過去它主要應(yīng)用于工業(yè)控制和國(guó)防系統(tǒng)領(lǐng)域。EOS負(fù)責(zé)嵌入系統(tǒng)的全部軟、硬件資源的分配、任務(wù)調(diào)度,控制、協(xié)調(diào)并發(fā)活動(dòng)。它必須體現(xiàn)其所在系統(tǒng)的特征,能夠通過裝卸某些模塊來達(dá)到系統(tǒng)所要求的功能。目前,已推出一些應(yīng)用比較成功的EOS產(chǎn)品系列。隨著 Internet技術(shù)的發(fā)展、信息家電的普及應(yīng)用及EOS的微型化和專業(yè)化,EOS開始從單一的弱功能向高專業(yè)化的強(qiáng)功能方向發(fā)展。嵌入式操作系統(tǒng)在系統(tǒng)實(shí)時(shí)高效性、硬件的相關(guān)依賴性、軟件固化、應(yīng)用的專用性等方面具有較為突出的特點(diǎn)。
(2)文件系統(tǒng)
嵌入式文件系統(tǒng)比較簡(jiǎn)單,主要提供文件存儲(chǔ)、檢索、更新等功能,一般不提供保護(hù)、加密等安全機(jī)制。它以系統(tǒng)調(diào)用和命令方式提供文件的各種操作,主要有設(shè)置、修改對(duì)文件和目錄的存取權(quán)限,提供建立、修改、改變和刪除目錄等服務(wù),提供創(chuàng)建、打開、讀寫、關(guān)閉和撤銷文件等服務(wù)。
(3)圖形用戶接口
圖形用戶接口(GUI)的廣泛應(yīng)用是當(dāng)今計(jì)算機(jī)發(fā)展的重大成就之一,它極大地方便了非專業(yè)用戶的使用,人們從此不再需要死記硬背大量的命令,取而代之的是通過窗口、菜單、按鍵等方式來方便地進(jìn)行操作。而嵌入式GUI具有下面幾個(gè)方面的基本要求:輕型、占用資源少、高性能、高可靠性、便于移植、可配置等特點(diǎn)。
4.功能層
功能層也稱為應(yīng)用軟件層,應(yīng)用軟件是由基于實(shí)時(shí)系統(tǒng)開發(fā)的應(yīng)用程序組成,運(yùn)行在嵌入式操作系統(tǒng)之上,一般情況下與操作系統(tǒng)是分開的。應(yīng)用軟件用來實(shí)現(xiàn)對(duì)被控制對(duì)象的控制功能。功能層是要面對(duì)被控對(duì)象和用戶,為方便用戶操作,往往需要提供一個(gè)友好的人機(jī)界面。
九. 嵌入式培訓(xùn)總結(jié)
1、長(zhǎng)期培訓(xùn):一般四五個(gè)月左右,適合于畢業(yè)后有志于從事嵌入式方面的開發(fā)工作的應(yīng)屆大學(xué)畢業(yè)生和已經(jīng)工作過一段時(shí)間,但是想進(jìn)行職業(yè)方向的轉(zhuǎn)型,轉(zhuǎn)而從事嵌入式開發(fā)方面的工作的職場(chǎng)人士。在長(zhǎng)期培訓(xùn)的`基礎(chǔ)上很多培訓(xùn)機(jī)構(gòu)都會(huì)包就業(yè)。
2、短期培訓(xùn):時(shí)間較短,培訓(xùn)一般在周末、節(jié)假日等業(yè)余時(shí)間進(jìn)行,適合于在職的工程師進(jìn)行工作方面的知識(shí)充電,學(xué)員需要一定的技術(shù)基礎(chǔ);
3、企業(yè)級(jí)培訓(xùn):一般時(shí)間非常短,需要根據(jù)企業(yè)的需求進(jìn)行定制化的課程講授,屬于企業(yè)組織的員工職場(chǎng)充電。
十. 嵌入式培訓(xùn)總結(jié)
嵌入式是以應(yīng)用為中心,以計(jì)算機(jī)技術(shù)為基礎(chǔ),軟硬件可裁剪,適應(yīng)應(yīng)用系統(tǒng)對(duì)功能、可靠性、成本、體積、功耗等嚴(yán)格要求的專用計(jì)算機(jī)系統(tǒng)。由于嵌入式系統(tǒng)通常具有低功耗、體積小、集成度高等特點(diǎn),因此隨著消費(fèi)家電的智能化和廉價(jià)微處理器的出現(xiàn),嵌入式系統(tǒng)將在日常生活里形成更大的應(yīng)用領(lǐng)域。嵌入式就業(yè)廣泛,嵌入式人才社會(huì)需求量大。
嵌入式軟件開發(fā)應(yīng)用領(lǐng)域
嵌入式系統(tǒng)是當(dāng)前最熱門、最具發(fā)展前途的IT應(yīng)用領(lǐng)域之一。包括手機(jī)、電子字典、可視電話、數(shù)字相機(jī)、數(shù)字?jǐn)z像機(jī)、U-Disk、機(jī)頂盒、高清電視、游戲機(jī)、智能玩具、交換機(jī)、路由器、數(shù)控設(shè)備或儀表、汽車電子、家電控制系統(tǒng)、醫(yī)療儀器、航天航空設(shè)備等都是典型的嵌入式系統(tǒng)。因此,通過嵌入式培訓(xùn)成為專業(yè)的嵌入式技術(shù)人才,其職業(yè)發(fā)展空間較大。
嵌入式軟件開發(fā)人才需求
目前國(guó)內(nèi)嵌入式人才極度匱乏,權(quán)威部門統(tǒng)計(jì),我國(guó)目前嵌入式軟件人才缺口每年為40萬人左右。供不應(yīng)求使得嵌入式人才身價(jià)上漲,而且,越有專業(yè)經(jīng)驗(yàn),就業(yè)競(jìng)爭(zhēng)力就越大。因此,IT專業(yè)人士通過培訓(xùn)掌握嵌入式技術(shù),就能成為炙手可熱的'專業(yè)人才,其培訓(xùn)回報(bào)有保障。
嵌入式軟件開發(fā)就業(yè)方向
由于大唐各約嵌入式技術(shù)支持工程師都高居前五位。
十一. 嵌入式培訓(xùn)總結(jié)
摘要:覆蓋測(cè)試是驗(yàn)證軟件功能結(jié)構(gòu)正確性以及查找問題的非常重要的方法和手段,它要借助一定的工具才能取得較好的效果,滿足軟件在質(zhì)量和時(shí)間上的雙重要求(純粹的人工測(cè)試工作量大、不方便、周期長(zhǎng))。如何利用好這方面比較成熟的工具,對(duì)其機(jī)理的研究及適應(yīng)性改造是很重要。本文著重描述這類工具的工作機(jī)理,以及對(duì)嵌入式軟件測(cè)試的特殊要求,并以對(duì)自主知識(shí)產(chǎn)權(quán)嵌入式操作系統(tǒng)的測(cè)試為例進(jìn)行說明。關(guān)鍵詞:嵌入式操作系統(tǒng)覆蓋測(cè)試軟件測(cè)試工具
1概述
軟件測(cè)試是很廣的概念。從其貫穿軟件生命周期全過程來看,測(cè)試可分為模塊測(cè)試、集成測(cè)試、系統(tǒng)測(cè)試等階段。測(cè)試還可分為靜態(tài)檢查和動(dòng)態(tài)運(yùn)行測(cè)試兩大類。在動(dòng)態(tài)運(yùn)行測(cè)試中,又可有基于程序結(jié)構(gòu)的白盒測(cè)試(或稱為覆蓋測(cè)試)和基于功能的黑盒測(cè)試。測(cè)試不僅關(guān)注程序的功能,還有性有測(cè)試、強(qiáng)度測(cè)試等等。
要達(dá)到比較好的測(cè)試效果,除了要有周全的測(cè)試計(jì)劃、可控的測(cè)試過程、測(cè)試人員豐富的經(jīng)驗(yàn)外,還需要借助一些行之有效的輔助工具,尤其在當(dāng)今軟件規(guī)模日益龐大、測(cè)試工作量成倍增加的情況下。對(duì)應(yīng)上述的測(cè)試分類情況,測(cè)試工具可劃分為:支持對(duì)程序源代碼進(jìn)行靜態(tài)規(guī)則檢查和質(zhì)量評(píng)估的靜態(tài)分析工具、支持對(duì)程序單元進(jìn)行動(dòng)態(tài)覆蓋測(cè)試的工具、對(duì)軟件系統(tǒng)的整體運(yùn)行性能進(jìn)行測(cè)試的工具。另外,還有一些特殊用途的或?qū)S霉ぞ撸鐓f(xié)議測(cè)試儀、內(nèi)存檢測(cè)工具等。這些工具都有較為成熟的商業(yè)化產(chǎn)品,也可通過自行開發(fā)的方式獲得。
本文具體討論了對(duì)一類特殊的系統(tǒng)軟件——嵌入式實(shí)時(shí)操作系統(tǒng)——進(jìn)行覆蓋測(cè)試的情況。內(nèi)容涉及對(duì)這類軟件特性的研究、測(cè)試的難點(diǎn)和特點(diǎn)、對(duì)現(xiàn)有測(cè)試工具的適應(yīng)性改造和測(cè)試實(shí)例說明。
2軟件覆蓋測(cè)試
覆蓋是一種白盒測(cè)試方法,測(cè)試人員必須擁有程序的規(guī)格說明和程序清單,以程序的內(nèi)部結(jié)構(gòu)為基礎(chǔ),來設(shè)計(jì)測(cè)試案例。其基本準(zhǔn)則是則測(cè)試案例來盡可能多地覆蓋程序的內(nèi)部邏輯結(jié)構(gòu),發(fā)現(xiàn)其中的錯(cuò)誤和問題。所以,覆蓋測(cè)試一般應(yīng)用在軟件測(cè)試的早期,即單元測(cè)試階段。
覆蓋的幾種方法或策略如表1所列。
表1幾種典型的覆蓋策略
覆蓋策略定義語句覆蓋在制定測(cè)試案例時(shí),使程序中的每個(gè)語句都至少執(zhí)行1次。其缺點(diǎn)是不能發(fā)現(xiàn)某些邏輯錯(cuò)誤判定覆蓋執(zhí)行足夠的測(cè)試案例,使得程序中每個(gè)判定都獲得一次“真”值和“假”值,或者說使每一個(gè)分支都至少通過1次條件覆蓋執(zhí)行足夠的測(cè)試案例,使得判定中的每個(gè)條件獲得各種可能的結(jié)果判定/條件覆蓋執(zhí)行足夠的測(cè)試案例,使得判定中的每個(gè)條件取得各種可能的值,并使得每個(gè)判定取得各種可能的結(jié)果條件組合覆蓋執(zhí)行足夠的測(cè)試案例,使得每個(gè)判定中的條件的各種組合都至少出現(xiàn)1次。其特點(diǎn)是覆蓋較充分,滿足條件組合覆蓋的測(cè)試案例也一定滿足判定覆蓋、條件覆蓋和判定/條件覆蓋。
從以上簡(jiǎn)要介紹可看出,這幾種覆蓋策略的嚴(yán)格程序有如下趨勢(shì):
其它一些覆蓋策略還包括:修改的條件/判斷覆蓋(通常簡(jiǎn)稱為MCDC)、路徑覆蓋、函數(shù)覆蓋、調(diào)用覆蓋、線性代碼順序和跳轉(zhuǎn)覆蓋、數(shù)據(jù)流覆蓋、目標(biāo)代碼分支覆蓋、循環(huán)覆蓋、關(guān)系操作符覆蓋等。隨著軟件規(guī)模的增長(zhǎng),實(shí)現(xiàn)全面的覆蓋所需的測(cè)試案例的數(shù)目也越來越龐大,因此根據(jù)被測(cè)軟件對(duì)象的特點(diǎn)選擇適當(dāng)?shù)母采w策略是非常重要的;同時(shí),要確定合理測(cè)試目標(biāo),達(dá)到100%的覆蓋往往要付出很大的代價(jià),應(yīng)該同形式化評(píng)審等方法結(jié)合,以發(fā)現(xiàn)更多的軟件故障。
3覆蓋測(cè)試工具
要取得較好的覆蓋測(cè)試效果,需要借助一定的工具軟件。這些工具軟件一般具備如下的功能特點(diǎn),可彌補(bǔ)人為測(cè)試的缺陷:
①分析軟件內(nèi)部結(jié)構(gòu),幫助制定覆蓋策略及設(shè)計(jì)測(cè)試案例;
②與適當(dāng)?shù)木幾g器結(jié)合,對(duì)被測(cè)軟件實(shí)施自動(dòng)插裝,以便在其運(yùn)行過程中生成覆蓋信息并收集這些信息;
③根據(jù)搜集的覆蓋信息計(jì)算覆蓋率,幫助測(cè)試人員找到未被覆蓋的軟件部位,以改進(jìn)測(cè)試案例提高覆蓋率。
在利用工具進(jìn)行動(dòng)態(tài)覆蓋測(cè)試時(shí),需要3個(gè)要素:測(cè)試用例、插裝過的被測(cè)代碼、搜集覆蓋信息并進(jìn)行分析的工具本身。代碼插裝由工具自動(dòng)完成,通過執(zhí)行測(cè)試用例,再由工具搜集覆蓋信息并進(jìn)行分析,就可以看到覆蓋率指標(biāo)了。圖1展示實(shí)現(xiàn)覆蓋測(cè)試的基本過程。
4嵌入式軟件的覆蓋測(cè)試原理
嵌入式軟件的開發(fā)與通用軟件很大的不同點(diǎn)在于,需要采用交叉開發(fā)的方式:開發(fā)工具運(yùn)行在軟硬件配置豐富的宿主機(jī)上,而嵌入式應(yīng)用程序運(yùn)行在軟硬件資源相對(duì)缺乏的目標(biāo)機(jī)上。對(duì)于這類軟件的測(cè)試也存在著同樣的問題:測(cè)試工具運(yùn)行在宿主機(jī)上,測(cè)試所需要的信息在目標(biāo)機(jī)上產(chǎn)生,并通過一定的物理/邏輯連接傳輸?shù)娇s主機(jī)上,由測(cè)試工具接收。因此,嵌入式軟件測(cè)試的一個(gè)重要問題是建立宿主機(jī)與目標(biāo)機(jī)之間的物理/邏輯連接,解決數(shù)據(jù)信息的傳輸問題。
嵌入式軟件覆蓋測(cè)試的基本原理如圖2所示。
在目標(biāo)機(jī)方,插裝過的被測(cè)應(yīng)用程序?qū)⒏采w信息發(fā)送到消息隊(duì)列中,一個(gè)專門的任務(wù)負(fù)責(zé)在適當(dāng)?shù)臅r(shí)候?qū)⑦@些信息發(fā)送到宿主機(jī)方。縮主機(jī)方有專門的模塊負(fù)責(zé)接收覆蓋信息。并交給分析工具分析和在線動(dòng)態(tài)顯示覆蓋率的增長(zhǎng)情況。
支持嵌入式軟件覆蓋測(cè)試的工具應(yīng)解決如下2方面的關(guān)鍵問題:
*與嵌入式操作系統(tǒng)的結(jié)合
覆蓋測(cè)試工具與嵌入式操作系統(tǒng)的結(jié)合體現(xiàn)在3方面。首先,在目標(biāo)機(jī)方,應(yīng)用任務(wù)與專門負(fù)責(zé)收集/上傳覆蓋信息的任務(wù)是通過消息隊(duì)列來傳遞數(shù)據(jù)的,該消息隊(duì)列可使用嵌入式操作系統(tǒng)的相應(yīng)機(jī)制實(shí)
十二. 嵌入式培訓(xùn)總結(jié)
此次設(shè)計(jì)我們采用以LM3S2100為微控制器,并通過硬件和軟件兩方面設(shè)計(jì),結(jié)合6位LED數(shù)碼管,放大整形電路,來實(shí)現(xiàn)頻率計(jì)在嵌入式系統(tǒng)中的開發(fā)與應(yīng)用。
本次課程設(shè)計(jì)其主要目的是通過這學(xué)期所學(xué)的ARM知識(shí),來實(shí)現(xiàn)頻率計(jì)的功能,本次設(shè)計(jì)我們利用了定時(shí)計(jì)數(shù)器的功能,對(duì)輸入的信號(hào)進(jìn)行實(shí)時(shí)的、高精度的頻率測(cè)量,并通過6位LED數(shù)碼顯示管顯示測(cè)量結(jié)果。論文中闡述了相關(guān)的硬件原理與應(yīng)用方案,并在此基礎(chǔ)上敘述了軟件設(shè)計(jì)最終結(jié)合硬件和軟件完成了本次設(shè)計(jì)。
關(guān)鍵詞:LM3S2100、頻率計(jì)、LED數(shù)碼顯示管
1 緒論
頻率計(jì)是計(jì)算機(jī)、通訊設(shè)備、音頻視頻等科研生產(chǎn)領(lǐng)域不可缺少的測(cè)量?jī)x器。它是一種用十進(jìn)制數(shù)字顯示被測(cè)信號(hào)頻率的數(shù)字測(cè)量?jī)x器。它的基本功能是測(cè)量正弦信號(hào),方波信號(hào)及其他各種單位時(shí)間內(nèi)變化的物理量。在進(jìn)行模擬、數(shù)字電路的設(shè)計(jì)、安裝、調(diào)試過程中,由于其使用十進(jìn)制數(shù)顯示,測(cè)量迅速,精確度高,顯示直觀,經(jīng)常要用到頻率計(jì)。
本頻率計(jì)將采用定時(shí)、計(jì)數(shù)的方法測(cè)量頻率。測(cè)量范圍在9kHz以下的方波,時(shí)基寬度為1us,10us,100us,1ms。用ARM芯片實(shí)現(xiàn)自動(dòng)測(cè)量功能。
基本設(shè)計(jì)原理是直接用十進(jìn)制數(shù)字顯示被測(cè)信號(hào)頻率的一種測(cè)量裝置。它以測(cè)量周期的方法對(duì)方波的頻率進(jìn)行自動(dòng)的測(cè)量。
1.1本次設(shè)計(jì)任務(wù)
一.設(shè)計(jì)題目:ARM為內(nèi)核的頻率計(jì)
二.主要功能:用ARM的定時(shí)器/計(jì)數(shù)器的定時(shí)和計(jì)數(shù)功能,外部擴(kuò)展6位數(shù)碼管,要
求累計(jì)每秒進(jìn)入ARM的外部脈沖個(gè)數(shù),用LED數(shù)碼管顯示出來,或是
用上位機(jī)顯示。
三.設(shè)計(jì)要求:用protel畫出最小系統(tǒng)和外圍擴(kuò)展電路。顯示部分可用LED數(shù)碼管或是
上位機(jī)顯示。要求小組成員分工明確。
1.2設(shè)計(jì)基本原理
所謂頻率,就是周期性信號(hào)在單位時(shí)間(1s)內(nèi)變化的次數(shù),若在一定時(shí)間間隔T內(nèi)測(cè)得這個(gè)周期性信號(hào)的重復(fù)變化次數(shù)為N,則其頻率可表示為
被測(cè)信號(hào)經(jīng)放大整形電路變成計(jì)數(shù)器所要求的脈沖信號(hào),其頻率與被測(cè)信號(hào)的頻率相同。當(dāng)1s信號(hào)來到時(shí),被測(cè)脈沖信號(hào)進(jìn)入芯片相關(guān)的,計(jì)數(shù)器開始計(jì)數(shù),直到1s信號(hào)結(jié)束時(shí),停止計(jì)數(shù)。若在1s時(shí)間內(nèi)計(jì)數(shù)器計(jì)得的脈沖數(shù)為N,則被測(cè)信號(hào)頻率fX?Nhz。
2 設(shè)計(jì)理念及設(shè)備
2.1設(shè)計(jì)理念
說到用單片機(jī)設(shè)計(jì)[2]的頻率計(jì),這里說一下單片頻率計(jì)ICM7216D。單片頻率計(jì)ICM7216D是美國(guó)Intersil公司首先研制的專用測(cè)頻大規(guī)模集成芯片。它是標(biāo)準(zhǔn)的28引腳的雙列直插式集成電路,采用單一的+5V穩(wěn)壓電源工作。它內(nèi)含高頻振蕩器、10進(jìn)制計(jì)數(shù)器、7段譯碼器、位多路復(fù)用器、能夠直接驅(qū)動(dòng)LED顯示器的8段段碼驅(qū)動(dòng)器、8位位碼驅(qū)動(dòng)器。其基本的測(cè)頻范圍為DC至10MHz,若加預(yù)置的`分頻電路,則上限頻率可達(dá)40MHz或100MHz,單片頻率計(jì)ICM7216D只要加上晶振、量程選擇、LED顯示器等少數(shù)器件即可構(gòu)成一個(gè)DC至40MHz的微型頻率計(jì),可用于頻率測(cè)量、機(jī)械轉(zhuǎn)速測(cè)量等方面的應(yīng)用。還有,PTS2600是英國(guó)研制的一款微波頻率計(jì),該頻率計(jì)可以測(cè)量頻率高達(dá)26GHz的信號(hào),而價(jià)格才只有幾萬元,可謂是物美價(jià)廉。PTS2600雖然是一個(gè)低價(jià)格的微波頻率計(jì),但它能在四個(gè)波段有很好的靈敏度測(cè)量40Hz到20GHz的頻率。也可以用它來測(cè)量高達(dá)26GHz的頻率,只是靈敏度稍稍低了一些。日常工作中,用它來測(cè)量
VF/VHF/UHF頻段的頻率,也十分方便和準(zhǔn)確。PTS2600使用一個(gè)12位數(shù)字的LCD液晶顯示屏來顯示所測(cè)得的頻率、閘口時(shí)間(分辨率相關(guān))、菜單功能以及頻率表的測(cè)量結(jié)果。所有這些數(shù)值都是同時(shí)顯示在一個(gè)屏幕上的。PTS2600的機(jī)箱采用高標(biāo)準(zhǔn)的鋁質(zhì)材料制成,各模塊安裝在下方有鋼板支承的母板上。模塊相對(duì)獨(dú)立,維修方便,主要通過更換模塊進(jìn)行。 我國(guó)利用相檢寬帶測(cè)頻技術(shù)設(shè)計(jì)的高精度頻率計(jì)也非常具有突破性和實(shí)用性。該項(xiàng)新技術(shù)及儀器是針對(duì)已有測(cè)頻技術(shù)的特點(diǎn)及存在問題,推出完全新穎的檢測(cè)精度高、便于實(shí)施且設(shè)備構(gòu)成又比較經(jīng)濟(jì)的一種新技術(shù)及儀器。
2.2設(shè)計(jì)所用設(shè)備和器材
(1)電源模塊
(2)放大整形電路(三極管9014和74LS00)
(3)ARM開發(fā)板LPC2131
(4)LED數(shù)碼顯示管
3 硬件設(shè)計(jì)方案
3.1設(shè)計(jì)系統(tǒng)原理框圖及介紹
圖1 原理框圖
由上圖知,一個(gè)被測(cè)信號(hào)經(jīng)過放大整形再進(jìn)入ARM開發(fā)板,然后經(jīng)過1S的定時(shí)捕獲得出頻率值,再經(jīng)由6位LED數(shù)碼顯示管顯示出數(shù)值。
3.2電源
電源模塊——參考電壓源為系統(tǒng)芯片如A/D、D/A轉(zhuǎn)換IC或外設(shè)提供參考電壓,電路如圖2。
十三. 嵌入式培訓(xùn)總結(jié)
當(dāng)下,微型化和專業(yè)化成為發(fā)展的新趨勢(shì),嵌入式產(chǎn)品成為信息產(chǎn)業(yè)的主流。下面yjbys小編為大家準(zhǔn)備了關(guān)于嵌入式Linux系統(tǒng)的文章,歡迎閱讀。
1 嵌入式Linux的特點(diǎn)
嵌入式系統(tǒng)是以應(yīng)用為中心,以計(jì)算機(jī)為基礎(chǔ),軟硬件可裁剪,適用于系統(tǒng)對(duì)功能、可靠性、成本、功耗嚴(yán)格要求的專用計(jì)算機(jī)系統(tǒng)。實(shí)時(shí)性是嵌入式系統(tǒng)的基本要求,其次,還要求代碼小,速度快,可靠性高。嵌入式Linux(Embedded Linux)是指對(duì)Linux經(jīng)過裁剪小型化后,可固化在存儲(chǔ)器或單片機(jī)中,應(yīng)用于特定嵌入式場(chǎng)合的專用Linux操作系統(tǒng)。嵌入式Linux的開發(fā)和研究已經(jīng)成為目前操作系統(tǒng)領(lǐng)域的一個(gè)熱點(diǎn)。與其它嵌入式操作系統(tǒng)相比,Linux的特點(diǎn)如下:
第一,Linux系統(tǒng)是層次結(jié)構(gòu)且內(nèi)核完全開放。Linux是由很多體積小且性能高的微內(nèi)核系統(tǒng)組成。在內(nèi)核代碼完全開放的前提下,不同領(lǐng)域和不同層次的用戶可以根據(jù)自己的應(yīng)用需要方便地對(duì)內(nèi)核進(jìn)行改造,低成本地設(shè)計(jì)和開發(fā)出滿足自己需要的嵌入式系統(tǒng)。
第二,強(qiáng)大的網(wǎng)絡(luò)支持功能。Linux誕生于因特網(wǎng)時(shí)代并具有Unix的特性,保證了它支持所有標(biāo)準(zhǔn)因特網(wǎng)協(xié)議,并且可以利用Linux的網(wǎng)絡(luò)協(xié)議棧將其開發(fā)成為嵌入式的TCP/IP網(wǎng)絡(luò)協(xié)議棧。
第三,Linux具備一整套工具鏈,容易自行建立嵌入式系統(tǒng)的開發(fā)環(huán)境和交叉運(yùn)行環(huán)境,可以跨越嵌入式系統(tǒng)開發(fā)中仿真工具的障礙。Linux也符合IEEE POSIX.1標(biāo)準(zhǔn),使應(yīng)用程序具有較好的可移植性。
傳統(tǒng)的嵌入式開發(fā)的程序調(diào)試和調(diào)試工具是用在線仿真器(ICE)實(shí)現(xiàn)的。它通過取代目標(biāo)板的微處理器,給目標(biāo)程序提供一個(gè)完整的仿真環(huán)境,完成監(jiān)視和調(diào)試程序;但一般價(jià)格比較昂貴,只適合做非常底層的調(diào)試。
第四,Linux具有廣泛的`硬件支持特性。無論是RISC還是CISC、32位還是64位等各種處理器,Linux都能運(yùn)行。這意味著嵌入式Linux將具有更廣泛的應(yīng)用前景。
2 Linux嵌入式系統(tǒng)開發(fā)平臺(tái)
2.1 系統(tǒng)軟件操作平臺(tái)
操作系統(tǒng)是一種在計(jì)算機(jī)上運(yùn)行的軟件。它的主要任務(wù)是管理計(jì)算機(jī)上的系統(tǒng)資源,為用戶提供使用計(jì)算機(jī)及其外部設(shè)備的接口。它存在的目的是為了管理所有硬件資源,并且提供應(yīng)用軟件一個(gè)合適的操作環(huán)境。
Linux作為嵌入式操作系統(tǒng)是完全可行的。因?yàn)長(zhǎng)inux提供了完成嵌入功能的基本內(nèi)核和所需要的所有用戶界面,能處理嵌入式任務(wù)和用戶界面。將Linux看作是連續(xù)的統(tǒng)一體,從一個(gè)具有內(nèi)存管理、任務(wù)切換和時(shí)間服務(wù)及其它分拆的微內(nèi)核到完整的服務(wù)器,支持所有的文件系統(tǒng)和網(wǎng)絡(luò)服務(wù)。
嵌入式Linux系統(tǒng)需要下面三個(gè)基本元素:系統(tǒng)引導(dǎo)工具(用于機(jī)器加電后的系統(tǒng)定位引導(dǎo))、Linux微內(nèi)核(內(nèi)存管理、 程序管理)、初始化進(jìn)程。但如果要它成為完整的操作系統(tǒng)并且繼續(xù)保持小型化,還必須加上硬件驅(qū)動(dòng)程序、硬件接口程序和應(yīng)用程序組。
Linux是基于GNU的C編譯器,作為GNU工具鏈的一部分,與gdb源調(diào)試器一起工作的。它提供了開發(fā)嵌入式Linux系統(tǒng)的所有軟件工具。
2.2 系統(tǒng)硬件平臺(tái)
在選擇硬件時(shí),常由于缺乏完整或精確的信息而使硬件選擇成為復(fù)雜且困難的工作。現(xiàn)在比較流行的硬件平臺(tái)有Intel公司的StrongARM 系列,Motorola公司的DragonBall系列,NEC公司的VR系列,Hitachi公司的SH3、SH4系列等等。選定硬件平臺(tái)前,首先要確定系統(tǒng)的應(yīng)用功能和所需要的速度,并制定好外接設(shè)備和接口標(biāo)準(zhǔn)。這樣才能準(zhǔn)確地定位所需要的硬件方案,得到性價(jià)比最高的系統(tǒng)。
3 嵌入式Linux系統(tǒng)開發(fā)模式
嵌入式系統(tǒng)通常為一個(gè)資源受限的系統(tǒng)。直接在嵌入式系統(tǒng)的硬件平臺(tái)上編寫軟件比較困難,有時(shí)甚至是不可能的。目前,一般采用的辦法是,先在通用計(jì)算機(jī)上編寫程序,然后,通過交叉編譯,生成目標(biāo)平臺(tái)上可運(yùn)行的二進(jìn)制代碼格式,最后下載到目標(biāo)平臺(tái)上的特定位置上運(yùn)行,具體步驟如下。
第一步,建立嵌入式Linux交叉開發(fā)環(huán)境。目前,常用的交叉開發(fā)環(huán)境主要有開放和商業(yè)兩種類型。開放的交叉開發(fā)環(huán)境的典型代表是GNU工具鏈,目前已經(jīng)能夠支持x86、ARM、MIPS、PowerPC等多種處理器。商業(yè)的交叉開發(fā)環(huán)境主要有Metrowerks CodeWarrior、ARM Software Development Toolkit、SDS Cross compiler、WindRiver Tornado、Microsoft Embedded Visual C++等。交叉開發(fā)環(huán)境是指編譯、鏈接和調(diào)試嵌入式應(yīng)用軟件的環(huán)境。它與運(yùn)行嵌入式應(yīng)用軟件的環(huán)境有所不同,通常采用宿主機(jī)/目標(biāo)機(jī)模式。
第二步,交叉編譯和鏈接。在完成嵌入式軟件的編碼之后,就是進(jìn)行編譯和鏈接,以生成可執(zhí)行代碼。由于開發(fā)過程大多是在Intel公司x86系列CPU的通用計(jì)算機(jī)上進(jìn)行的,而目標(biāo)環(huán)境的處理器芯片卻大多為ARM、MIPS、PowerPC、DragonBall等系列的微處理器,這就要求在建立好的交叉開發(fā)環(huán)境中進(jìn)行交叉編譯和鏈接。
第三步,交叉調(diào)試。
① 硬件調(diào)試。如果不采用在線仿真器,可以讓CPU直接在其內(nèi)部實(shí)現(xiàn)調(diào)試功能,并通過在開發(fā)板上引出的調(diào)試端口,發(fā)送調(diào)試命令和接收調(diào)試信息,完成調(diào)試過程。目前,ARM公司提供的開發(fā)板上使用的則是JTAG調(diào)試端口。
② 軟件調(diào)試。在嵌入式Linux系統(tǒng)中,Linux系統(tǒng)內(nèi)核調(diào)試,可以先在Linux內(nèi)核中設(shè)置一個(gè)調(diào)試樁(debug stub),用作調(diào)試過程中和宿主機(jī)之間的通信服務(wù)器。然后,可以在宿主機(jī)中通過調(diào)試器的串口與調(diào)試樁進(jìn)行通信,并通過調(diào)試器控制目標(biāo)機(jī)上Linux內(nèi)核的運(yùn)行。
第四步,系統(tǒng)測(cè)試。整個(gè)軟件系統(tǒng)編譯過程,嵌入式系統(tǒng)的硬件一般采用專門的測(cè)試儀器進(jìn)行測(cè)試,而軟件則需要有相關(guān)的測(cè)試技術(shù)和測(cè)試工具的支持,并要采用特定的測(cè)試策略。測(cè)試技術(shù)指的是軟件測(cè)試的專門途徑,以及能夠更加有效地運(yùn)用這些途徑的特定方法。
1 實(shí)時(shí)系統(tǒng)
實(shí)時(shí)系統(tǒng)是指數(shù)據(jù)產(chǎn)生時(shí),能以足夠快的速度來進(jìn)行處理,處理的結(jié)果能在規(guī)定的時(shí)間內(nèi)來控制生產(chǎn)過程與處理系統(tǒng),讓它做出極快的響應(yīng)。在實(shí)時(shí)系統(tǒng)中,如果指定的時(shí)間沒有完成確定的任務(wù),整個(gè)系統(tǒng)會(huì)全面失敗,這被稱為硬實(shí)時(shí)系統(tǒng),反之,如果在指定的時(shí)間內(nèi)沒有完成確定的任務(wù),不會(huì)出現(xiàn)致命的錯(cuò)誤就被稱為軟實(shí)時(shí)系統(tǒng)。
2 分時(shí)系統(tǒng)
分時(shí)系統(tǒng)是把時(shí)間劃為長(zhǎng)短基本相同的時(shí)間片,操作系統(tǒng)輪流分配給各個(gè)作業(yè)使用,如果某個(gè)作業(yè)在時(shí)間片結(jié)束完成,這個(gè)作業(yè)被掛起,等下一輪循環(huán)再繼續(xù)使用,分時(shí)操作系統(tǒng)具有以下幾個(gè)特點(diǎn):多路性,用戶通過各自的'終端可以同時(shí)使用一個(gè)系統(tǒng);及時(shí)性,對(duì)于提出的要求,系統(tǒng)能在較短的時(shí)間內(nèi)得到響應(yīng)與處理;獨(dú)立性,雖然同一時(shí)間內(nèi)可以多個(gè)用戶使用同一個(gè)CPU,但是用戶之間操作獨(dú)立,彼此不干涉。
3 嵌入式系統(tǒng)選型
選擇自己需要的嵌入式系統(tǒng),可以從以下幾方面進(jìn)行對(duì)比選擇。
3.1 進(jìn)入市場(chǎng)時(shí)間
產(chǎn)品的進(jìn)入時(shí)間與選擇的操作系統(tǒng)有很大的關(guān)系,實(shí)際的產(chǎn)品與演示的產(chǎn)品不同。一些高效推出的操作系統(tǒng)由于研發(fā)時(shí)間不夠、技術(shù)累積不夠,導(dǎo)致成本高、核心競(jìng)爭(zhēng)能力差。比如WinCE操作系統(tǒng),它就是在windows系統(tǒng)上作一定程度的改變,去掉一些不需要的功能,很快推出產(chǎn)品,結(jié)果實(shí)用時(shí)出現(xiàn)很多問題。
3.2 可移植性
通常來說,嵌入式系統(tǒng)的移植性越好,可在在不同平臺(tái)、不同系統(tǒng)上都能移植,那是處于最理想的狀態(tài),然而實(shí)際運(yùn)用中并不能達(dá)到這種理想狀態(tài),如果過于強(qiáng)調(diào)移植性,那么會(huì)付出性能優(yōu)化的代價(jià)。
3.3 可利用資源
嵌入式系統(tǒng)是以快速、低成本、高效率的推平適合用戶需要的一個(gè)系統(tǒng)平臺(tái),而在這個(gè)平臺(tái)上能使用多少功能,需要使用第三方的產(chǎn)品,因此這個(gè)平臺(tái)上能使用多少第三方的產(chǎn)品是選型的一個(gè)重要條件,有些嵌入式系統(tǒng)為了滿足高性能、高可靠性的要求,使用比較封閉的操作系統(tǒng),多數(shù)只能使用自己獨(dú)立
3.4 系統(tǒng)定制能力
用戶在使用嵌入式操作系統(tǒng)的時(shí)候,要求能定制不同的硬件平臺(tái),比如會(huì)要求能否對(duì)系統(tǒng)提出底層的更動(dòng)要求?能否定制出現(xiàn)能滿足自己需要、更有自己特色的系統(tǒng)、能否開放原代碼等等。
3.5 成本
選擇嵌入式操作系統(tǒng),需要考慮成本的問題,比如一個(gè)系統(tǒng)是完全免費(fèi)的,還是需要支付許可使用費(fèi)等等,在這個(gè)選擇中,并不是免費(fèi)的就是最好的,這要考慮到硬件設(shè)計(jì)人員的投入、公司的管理、第三方軟件的開發(fā)及使用,等等方面的問題,最后對(duì)成本作一個(gè)綜合考量。
3.6 語言內(nèi)核支持
語言內(nèi)核支持指操作系統(tǒng)能使用幾種語言操作,比如西文的、中文的,如果是可以使用中文操作,那么它是否支持雙字節(jié)編碼,是只支持簡(jiǎn)體中文系統(tǒng)還是同時(shí)支持繁體系統(tǒng),同時(shí)還要考慮中文輸入法與處理系統(tǒng),語言內(nèi)核的支持與第三方軟件資源的利用有非常重要的聯(lián)系。 yjbys 男 25歲 福建人 學(xué)歷: 大專 工作年限: 1-2年 期望薪資: 面議 工作地點(diǎn): 福州 - 不限 求職意向:其他電氣/能源職位 | 電氣工程師 工作經(jīng)驗(yàn)(工作了2年4個(gè)月,做了2份工作) 深圳市沁芯微電子有限公司 工作時(shí)間:6月 至 8月[2年2個(gè)月] 職位名稱:系統(tǒng)設(shè)計(jì)工程師 工作內(nèi)容: 1、編寫單片機(jī)程序(PIC和STM32) 2、設(shè)計(jì)、焊接單片機(jī)仿真器電路板 3、用C#開發(fā)仿真器和OTP燒錄器的上位機(jī)程序 深圳市國(guó)宇源創(chuàng)科技有限公司 工作時(shí)間:203月 至 年5月[2個(gè)月] 職位名稱:技術(shù)員 工作內(nèi)容:負(fù)責(zé)公司產(chǎn)品(RFID火車車號(hào)識(shí)別)電路板的焊接調(diào)試 教育經(jīng)歷 2014年6月畢業(yè) 浙江機(jī)電職業(yè)技術(shù)學(xué)院 應(yīng)用電子技術(shù) 項(xiàng)目/培訓(xùn)經(jīng)驗(yàn) 1月-206月電子秤 項(xiàng)目/培訓(xùn)內(nèi)容:包含人體秤和廚房秤,使用國(guó)產(chǎn)的仿PIC單片和匯編語言。十四. 嵌入式培訓(xùn)總結(jié)
十五. 嵌入式培訓(xùn)總結(jié)
十六. 嵌入式培訓(xùn)總結(jié)
摘要:首先,闡述藍(lán)牙在公共交換電話網(wǎng)絡(luò)PSTN中的一種應(yīng)用——三合一電話。然后,分別從硬件、驅(qū)動(dòng)程序、應(yīng)用軟件三個(gè)方面進(jìn)行詳細(xì)介紹。最后,給出測(cè)試結(jié)果,并提出改進(jìn)方案。
關(guān)鍵詞:藍(lán)牙公共交換電話網(wǎng)絡(luò)PSTN接入點(diǎn)μClinux設(shè)備驅(qū)動(dòng)程序
引言
源碼開放的μClinux由于其強(qiáng)大的網(wǎng)絡(luò)功能和較低的成本,得到了廣泛的應(yīng)用。嵌入式藍(lán)牙公共交換電話網(wǎng)絡(luò)PSTN(PublicSwitchedTelephoneNetwork)語音接入點(diǎn),就是我們和廣東省電信科學(xué)研究院合作,在μClinux系統(tǒng)上開發(fā)的一種具有廣闊前景的應(yīng)用。其應(yīng)用場(chǎng)景如圖1所示。
藍(lán)牙GSM雙模手機(jī)在進(jìn)入藍(lán)牙PSTN語音接入點(diǎn)的信號(hào)覆蓋范圍后,即自動(dòng)通過接入點(diǎn)在PSTN網(wǎng)絡(luò)上登記,這樣用戶的話務(wù)就被轉(zhuǎn)移到PSTN網(wǎng)絡(luò),使用時(shí)只需繳納固定電話費(fèi);網(wǎng)關(guān)具有小型交換機(jī)的功能,可以為多個(gè)藍(lán)牙手機(jī)提供類似的服務(wù);而且同一個(gè)接入點(diǎn)信號(hào)覆蓋范圍之內(nèi)的藍(lán)牙手機(jī)間,還可以不經(jīng)過PSTN直接進(jìn)行相互間通話,就像對(duì)講機(jī)一樣,不用付費(fèi)。本文主要介紹接入點(diǎn)軟硬件以及設(shè)備驅(qū)動(dòng)程序的設(shè)計(jì)與實(shí)現(xiàn)。
1硬件的設(shè)計(jì)與實(shí)現(xiàn)
嵌入式藍(lán)牙PSTN語音接入點(diǎn)的硬件系統(tǒng)框圖如圖2所示。整個(gè)接入點(diǎn)主要由網(wǎng)關(guān)控制模塊、電話線路接口模塊和藍(lán)牙收發(fā)模塊組成。
1.1網(wǎng)關(guān)控制模塊
網(wǎng)關(guān)控制模塊是整個(gè)網(wǎng)關(guān)軟件的運(yùn)行平臺(tái)。ΜClinux操作系統(tǒng)運(yùn)行于此硬件平臺(tái)之上,而所有應(yīng)用軟件又運(yùn)行于操作系統(tǒng)之上。復(fù)雜的控制流程以及大量的外擴(kuò)模塊要求MPU具有較強(qiáng)的處理能力。經(jīng)多方權(quán)衡,本設(shè)計(jì)最終選用了Motorola公司的ColdFire嵌入式處理器MCF5272。
MCF5272內(nèi)部的SRAM和ROM對(duì)于運(yùn)行μClinux操作系統(tǒng)是遠(yuǎn)遠(yuǎn)不夠的。本設(shè)計(jì)對(duì)MCF5272的RAM和ROM進(jìn)行了擴(kuò)充,外擴(kuò)了16MB的SDRAM和4MB的FlashROM。這樣的存儲(chǔ)器配置不僅滿足了語音接入點(diǎn)軟件的需要,還為網(wǎng)關(guān)增加各種功能留有較多的余地。
1.2電話線路接口模塊
電話線路接口模塊是網(wǎng)關(guān)和PSTN的接口,由線路切換繼電器、電話線接口芯片、DTMF接收電路、DTMF發(fā)送電路和FSK解調(diào)及振鈴接收電路組成。它通過MCF5272的12根GPIO線和4個(gè)外部中斷線和網(wǎng)關(guān)控制模塊相連。線路切換繼電器用于實(shí)現(xiàn)電話線上的信號(hào)在振鈴接收電路和語音電路之間的切換,即實(shí)現(xiàn)摘機(jī)掛機(jī)的功能。在待機(jī)狀態(tài)下繼電器觸點(diǎn)切換在振鈴接收電路一側(cè),等待接收振鈴信號(hào)。當(dāng)需要摘機(jī)時(shí),MCF5272控制繼電器切換到話音電路一側(cè)。
電話線路接口芯片選用Philips公司的TEA1062A。TEA1062A把電話線上送來的模擬語音信號(hào)放大后發(fā)送到藍(lán)牙收到模塊的PCM編解碼器;相反,也把PCM編解碼器送來的語音信號(hào)放大后,放到電話線上傳輸。此外,它還提供了消側(cè)音、自動(dòng)增益控制等功能。
網(wǎng)關(guān)還需具備轉(zhuǎn)發(fā)來電顯示信息的功能。常見的來電顯示標(biāo)準(zhǔn)分為DTMF和FSK兩種。我國(guó)的來電顯示國(guó)家標(biāo)準(zhǔn)是FSK制式的,大部分PSTN交換機(jī)也支持FSK標(biāo)準(zhǔn)的來電顯示信息;但是也有少量PSTN交換機(jī)和一些用戶內(nèi)部交換機(jī)發(fā)送的是DTMF標(biāo)準(zhǔn)的來電顯示信息。我們HOLT 推薦閱讀: 嵌入式心得體會(huì)(精選5篇) 博士培訓(xùn)總結(jié)(精華16篇) 網(wǎng)絡(luò)備課培訓(xùn)總結(jié)(集合16篇) 云賬房培訓(xùn)總結(jié)(通用12篇)
想了解更多【嵌入式培訓(xùn)總結(jié)】網(wǎng)的資訊,請(qǐng)?jiān)L問:嵌入式培訓(xùn)總結(jié)