国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

面向S5PV210嵌入式平臺的Android系統(tǒng)移植與優(yōu)化的研究

2016-10-17 09:05:09莫太平周園園趙翔翔
電視技術(shù) 2016年9期
關(guān)鍵詞:內(nèi)核應(yīng)用程序嵌入式

莫太平,周園園,趙翔翔

(桂林電子科技大學(xué) 電子工程與自動化學(xué)院,廣西 桂林 541004)

?

面向S5PV210嵌入式平臺的Android系統(tǒng)移植與優(yōu)化的研究

莫太平,周園園,趙翔翔

(桂林電子科技大學(xué) 電子工程與自動化學(xué)院,廣西 桂林541004)

針對Android系統(tǒng)的不依賴設(shè)備甚至平臺的特質(zhì),結(jié)合目前工業(yè)控制領(lǐng)域?qū)ndroid系統(tǒng)移植啟動速度的需求,介紹了在S5PV210嵌入式平臺上進(jìn)行Android系統(tǒng)移植和優(yōu)化的方法,通過實(shí)例具體闡述了內(nèi)核和Android文件系統(tǒng)的移植過程,并在S5PV210平臺上成功移植了Android系統(tǒng),而且從啟動服務(wù)、應(yīng)用程序和預(yù)加載類等方面對Android系統(tǒng)進(jìn)行了啟動優(yōu)化。實(shí)驗(yàn)數(shù)據(jù)證明,Android系統(tǒng)在S5PV210平臺上的啟動速度明顯加快。

S5PV210嵌入式平臺;Android系統(tǒng);移植;優(yōu)化

隨著嵌入式開放平臺的廣泛應(yīng)用,Android系統(tǒng)憑借系統(tǒng)自身所具備的代碼開源、系統(tǒng)可移植、硬件豐富、兼容性好、性能優(yōu)越及其用戶界面友好等特點(diǎn)決定了其使用范圍將不斷擴(kuò)大,并給移動互聯(lián)網(wǎng)、工業(yè)控制、軟件開發(fā)等行業(yè)帶來新的機(jī)遇和挑戰(zhàn)。一方面,將Android系統(tǒng)移植到嵌入式平臺上的研究還處于初始階段,又因嵌入式平臺使開放性移植系統(tǒng)變得更加困難。另一方面,因Android系統(tǒng)底層是基于Linux內(nèi)核的復(fù)雜的多層結(jié)構(gòu),啟動過程就需要加載大量的資源,初始化Runtime就會占據(jù)大量時間,因此,啟動速度異常緩慢,從而影響用戶的體驗(yàn),而且在工業(yè)控制領(lǐng)域這一現(xiàn)象變得更加明顯。

S5PV210是Samsung推出的一款基于ARM Cortex-A8核心的應(yīng)用處理器,采用ARM V7指令集,主頻可達(dá)1 GHz,能夠?qū)崿F(xiàn)每秒兩億條指令集的高性能運(yùn)算能力,適用于工控、通信、手持設(shè)備等領(lǐng)域,典型應(yīng)用有監(jiān)控設(shè)備、人機(jī)界面、視頻電話及Pda等。Android系統(tǒng)能夠在S5PV210平臺上良好地運(yùn)行,使其具備Android系統(tǒng)移植的硬件基礎(chǔ)。又因Android系統(tǒng)提供了ARM的架構(gòu),移植到ARM上就具備了理論支持。

針對上述問題及S5PV210平臺硬件環(huán)境的支持,本文主要研究在S5PV210平臺上移植Android系統(tǒng),并對Android系統(tǒng)的啟動進(jìn)行優(yōu)化。

1 Android系統(tǒng)架構(gòu)

Android系統(tǒng)是有Google公司推出的以移動互聯(lián)網(wǎng)業(yè)務(wù)為主的智能終端平臺,由Linux操作系統(tǒng)、中間件、用戶界面及應(yīng)用軟件等部分組成。其Android系統(tǒng)核心架構(gòu)從上到下分為4層:Linux Kernel,Library+Android Runtime,Application Framework,Applications,具體如圖1所示。

1)Linux Kernel

Linux內(nèi)核層,主要由內(nèi)核及各種設(shè)備驅(qū)動組成。Android內(nèi)核早期使用的是Linux 2.6,后來更新到Linux 3.0及其以上版本。Linux內(nèi)核提供了系統(tǒng)的核心服務(wù)[1]:安全機(jī)制、網(wǎng)絡(luò)堆棧、進(jìn)程及內(nèi)存管理等。Linux內(nèi)核是一個抽象層,連接著硬件和軟件,所以對于Android應(yīng)用開發(fā)人員來說,要把主要精力放在軟件實(shí)現(xiàn)上,而不用關(guān)心底層的具體細(xì)節(jié)。

圖 1 Android系統(tǒng)架構(gòu)

2)Android Runtime

Android運(yùn)行時,由Dalvik虛擬機(jī)及Android核心庫集組成[2]。Java語言的核心庫所具有的功能,Android核心庫集絕大部分都有提供,主要用于控制底層的設(shè)備和驅(qū)動,實(shí)現(xiàn)底層與上層的連接。Android 應(yīng)用的運(yùn)行由Dalvik虛擬機(jī)負(fù)責(zé),每個應(yīng)用對應(yīng)一個Dalvik線程。不同于一般的JVM,Dalvik虛擬機(jī)運(yùn)行專有的.dex文件,不但可以提高運(yùn)行效率,而且在性能上又有所優(yōu)化。另外,常規(guī)的JVM是基于棧的,而Dalvik虛擬機(jī)是基于寄存器實(shí)現(xiàn)的,這樣的虛擬機(jī)在性能上會有更好的表現(xiàn),比較適合應(yīng)用在移動智能設(shè)備上。

3)Library

函數(shù)庫,含有一套C/C++庫集,能夠被不同的組件使用。Android應(yīng)用開發(fā)人員可以通過Application Framework來調(diào)用這套C/C++庫集。其中的核心庫主要有SQLite、系統(tǒng)C庫、Surface Manager、媒體庫、LibWebCore、SGL、3D library、Free Type等。

4)Application Framework

應(yīng)用程序框架層,提供了大量的API,供Android應(yīng)用開發(fā)者調(diào)用,如View、Button、TextView等UI組件。另外,應(yīng)用程序框架層還提供了一系列的本地服務(wù)和Android系統(tǒng)服務(wù)。應(yīng)用程序框架是應(yīng)用程序開發(fā)的基礎(chǔ),該框架優(yōu)化了組件的復(fù)用性,當(dāng)按照框架的規(guī)定發(fā)布應(yīng)用程序功能模塊之后,其他的應(yīng)用程序便可以調(diào)用此發(fā)布模塊。

5)Applications

應(yīng)用程序?qū)樱珹ndroid系統(tǒng)的許多核心應(yīng)用程序分布在此層,如電子郵件、日歷、地圖、SMS、Web瀏覽器、聯(lián)系人和開發(fā)者基于SDK開發(fā)的應(yīng)用等。該層的應(yīng)用程序是用Java編寫的,運(yùn)行于Dalvik虛擬機(jī)中。

通過詳細(xì)分析Android的分層框架這一結(jié)構(gòu),才能使Android做系統(tǒng)移植的開發(fā)一目了然。同時,各層間的關(guān)聯(lián)性很小,從而系統(tǒng)的穩(wěn)定性及可移植性得到有效提高,維護(hù)修改所付出的代價相對較少。

2 Android內(nèi)核移植

將一個實(shí)時內(nèi)核運(yùn)行在某個微處理器或微控制器上即是移植,將不同平臺和不同編譯環(huán)境的程序代碼經(jīng)過修改后轉(zhuǎn)移到所需系統(tǒng)中運(yùn)行的實(shí)現(xiàn)過程即為移植過程。本文是將Android系統(tǒng)移植到S5PV210 ARM平臺上,使Android內(nèi)核能夠在S5PV210 ARM核心平臺上運(yùn)行起來。本文對Android內(nèi)核進(jìn)行移植需要做的工作主要有修改平臺支持和驅(qū)動移植。其中,修改平臺支持是根據(jù)具體的環(huán)境修改與硬件平臺相關(guān)的內(nèi)核源碼,包括添加對ARM的支持,修改平臺輸入時鐘和機(jī)器碼。而驅(qū)動移植主要是Android系統(tǒng)必要的驅(qū)動移植,包括nandflash驅(qū)動、yaffs2文件系統(tǒng)以及Android專有驅(qū)動[3]。當(dāng)然也可以根據(jù)具體需要另外移植一些需要的驅(qū)動,如LCD顯示驅(qū)動、網(wǎng)卡驅(qū)動、觸摸屏驅(qū)動等。

2.1添加對ARM的支持

只有讓內(nèi)核確定所選擇的架構(gòu),Android系統(tǒng)才能使用正確的編譯方式對內(nèi)核進(jìn)行編譯。因此,需要在內(nèi)核頂層Makefile中修改設(shè)置編譯器(CROSS_COMPILE)和指定目標(biāo)平臺(ARCH):

ARCH?= arm

CROSS_COMPILE ? = arm-linux-

2.2修改平臺輸入時鐘

平臺輸入時鐘頻率由時鐘控制邏輯單元決定,不同硬件平臺有不同的輸入時鐘。因此,Android內(nèi)核源碼中的時鐘頻率必需與S5PV210的工作頻率一致。關(guān)于時鐘頻率的內(nèi)核源碼在Android內(nèi)核/arch/arm/mach-s5pv210目錄下的板級文件mach-smdk210中[4]。mach-smdk210是內(nèi)核提供的,在其基礎(chǔ)上修改即可。也可以參考mach-smdk210創(chuàng)建自己的板級文件,然后通過修改makefile和config配置選擇自己的板級文件。因S5PV210使用的時鐘為24 MHz,在smdkv210_map_io(void)函數(shù)里面設(shè)置s3c24XX_init_clocks(24000000)。

2.3修改機(jī)器碼

在目標(biāo)機(jī)上使用的bootloader中設(shè)定了機(jī)器碼為3466。內(nèi)核的機(jī)器碼需要與bootloader中設(shè)置的機(jī)器碼保持一致,否則開機(jī)啟動時會提示“找不到CPU類型的錯誤”。內(nèi)核中的機(jī)器碼保存在/arch/arm/tools/mach-types文件中,并在/arch/arm/mach-s5pv210/mach-smdk210.c文件中通過代碼MACHINE_START(SMDKV210,"SMDKV210")調(diào)用[5]。所以要在mach-types中找到關(guān)鍵字SMDKV210 所在那一行,然后將后面的機(jī)器碼改成與bootloader對應(yīng)的機(jī)器碼。

2.4驅(qū)動移植

在Android內(nèi)核中已經(jīng)存在yaffs2文件系統(tǒng)和Android特有驅(qū)動[6],只需要在配置里選擇即可[7]。yaffs2文件系統(tǒng)對應(yīng)/fs/yaffs2文件夾,Android特有驅(qū)動(主要包括binder 驅(qū)動、log記錄驅(qū)動、lowmem kill驅(qū)動等)在內(nèi)核目錄driver/staging/Android/下。

nandflash驅(qū)動已經(jīng)集成到Android內(nèi)核源碼當(dāng)中,以s5pv210-nand命名注冊為平臺驅(qū)動,對應(yīng)文件為drivers/mtd/nand/s3c_nand.c。使用時需要添加硬件資源信息和分區(qū)信息,并在板級文件mach-smdk210將nandflash驅(qū)動注冊為平臺設(shè)備s3c_device_nand的平臺驅(qū)動。首先,在smdk210_machine_init()函數(shù)中通過platform_add_devices()函數(shù)注冊s3c_device_nand為平臺設(shè)備。然后,在smdkv210_map_io()函數(shù)里設(shè)置s5pv210-nand為s3c_device_nand的平臺驅(qū)動為s3c_device_nand.name = "s5pv210-nand"。這樣在編譯時,系統(tǒng)通過驅(qū)動名可以從設(shè)備驅(qū)動中找到對應(yīng)的驅(qū)動。最后,在s3c_nand.c中的mtd_partitions3c_partition_info修改nandflash的分區(qū)信息。移植完成后,通過串口打印效果如圖2所示。

圖2 內(nèi)核啟動信息(截圖)

3 Android文件系統(tǒng)的移植

Android文件系統(tǒng)移植通過編譯文件系統(tǒng)和根文件系統(tǒng)影像制作兩個步驟得到支持S5PV210的系統(tǒng)映像。

3.1文件系統(tǒng)編譯

使用命令source build/envsetup.sh初始化環(huán)境變量。lunch命令可以列出平臺編譯選項(xiàng),此時可以看到之前在定制文件系統(tǒng)時添加的選項(xiàng)并選擇為當(dāng)前編譯項(xiàng)。Make開始執(zhí)行編譯,由于Android文件系統(tǒng)較大所以編譯時間會較長。

3.2制作根文件系統(tǒng)影像

Android文件系統(tǒng)編譯完成之后,會在/out/target/product/board_name/下生成ramdisk.img,system.img,userdata.img這3個鏡像文件和root,system,data等文件夾。其中,ramdisk.img是根文件系統(tǒng),system.img包括主要的包和庫等文件,userdata.img為用戶數(shù)據(jù)。而root,system,data這3個文件夾分別對應(yīng)上述3個img解壓之后的內(nèi)容。在制作根文件系統(tǒng)方法是將system和data文件夾的內(nèi)容復(fù)制到root文件夾里面的system和data目錄下,然后進(jìn)行打包。打包是使用mkyaffs2image-128M工具通過命令mkyaffs2image-128M./root root.img將root文件夾下的文件系統(tǒng)內(nèi)容打包成root.img鏡像。將root.img 鏡像和內(nèi)核鏡像下載到S5PV210中就可以運(yùn)行起Android系統(tǒng)了,效果如圖3所示。

圖3 系統(tǒng)運(yùn)行效果(截圖)

4 Android系統(tǒng)的啟動優(yōu)化

開機(jī)速度慢是智能系統(tǒng)普遍存在的一個問題,Android系統(tǒng)同樣如此。Android系統(tǒng)在手機(jī)移動平臺上使用的時候,由于手機(jī)開關(guān)機(jī)并不頻繁,開機(jī)速度影響不大。但當(dāng)Android系統(tǒng)要移植到其他非移動平臺上時,由于其相對頻繁的開關(guān)機(jī)頻率,開機(jī)速度將成為影響用戶體驗(yàn)的一個重要因素。所以此時對Android系統(tǒng)的啟動是非常必要的。

整個系統(tǒng)的啟動流程,包括Bootloader啟動、內(nèi)核啟動,根文件系統(tǒng)啟動3部分。其中,從Bootloader啟動到內(nèi)核完全啟動只用2~4 s,沒有太大優(yōu)化空間。文件系統(tǒng)啟動是整個啟動過程占時最長的階段,包括啟動服務(wù)、預(yù)加載類和掃描應(yīng)用程序包等環(huán)節(jié)。

本文從啟動服務(wù)、預(yù)加載類、應(yīng)用程序3方面對Android系進(jìn)行啟動優(yōu)化,以求達(dá)到理想的優(yōu)化效果。

4.1裁剪啟動服務(wù)

Android系統(tǒng)的服務(wù)包括本地服務(wù)和Android系統(tǒng)服務(wù)兩部分。這些服務(wù)多種多樣,但并不是所有的服務(wù)對于系統(tǒng)的運(yùn)行都至關(guān)重要。在不同硬件環(huán)境下,Android系統(tǒng)對于服務(wù)的需求也將不同。這些服務(wù)將在系統(tǒng)運(yùn)行時占用大量資源,增加啟動時間。因此,針對不同的應(yīng)用環(huán)境需要根據(jù)需求裁剪服務(wù)。

本地服務(wù)是通過init解析執(zhí)行init.rc腳本啟動的[8]。Init.rc文件中有調(diào)用本地服務(wù)的命令,init通過這些命令啟動對應(yīng)的服務(wù)。因此,要對本地服務(wù)進(jìn)行裁剪,只需要將調(diào)用服務(wù)的命令注釋掉或刪除即可。具體方法是在/system/core/rootdir目錄下找到init.rc,在文件中找到service開始的程序段,注釋掉或刪除要裁剪的服務(wù)對應(yīng)的程序段。

Android系統(tǒng)服務(wù)運(yùn)行在systemserver進(jìn)程中,通過SystemServer.java中的ServiceManager.addService()方法添加,將/frameworks/base/services/java/com/android/server/SystemServer.java中添加服務(wù)的程序段注釋掉或刪除就可以達(dá)到裁剪Android系統(tǒng)服務(wù)的目的。

本地服務(wù)中Android系統(tǒng)必不可少的關(guān)鍵服務(wù)有5個,包括Zygote,servicemannager,media,vold和neted。只要保留這5個服務(wù)就能順利啟動Android系統(tǒng)。而Android系統(tǒng)服務(wù)對系統(tǒng)服務(wù)的應(yīng)用性較強(qiáng),要保留較多服務(wù)。

4.2應(yīng)用程序裁剪

系統(tǒng)啟動時,Package Manager服務(wù)會解析(/system/framework,/system/app,/data/app,/data/app-private)這4個文件夾中所有的應(yīng)用程序apk包來獲取需要啟動的應(yīng)用程序表。而無用的應(yīng)用程序apk包將會增加Package Manager服務(wù)的掃描時間,使系統(tǒng)啟動變慢。

應(yīng)用程序的功能明確,關(guān)聯(lián)相對較少,所以其裁剪方法也比較簡單:刪除鏡像中應(yīng)用程序的apk包。本文中保留Launcher2.apk和SettingsProvider.apk兩個應(yīng)用即可。Launcher2.apk用于提供用戶界面,保證系統(tǒng)能進(jìn)入用戶待機(jī)狀態(tài)。SettingsProvider.apk是對Android系統(tǒng)進(jìn)行設(shè)定的應(yīng)用程序,它通過調(diào)用系統(tǒng)服務(wù)來完成Android各種狀態(tài)的設(shè)置。若沒有這個應(yīng)用程序,將會缺少用戶對系統(tǒng)的控制。

4.3裁剪預(yù)加載類

預(yù)加載類是Android系統(tǒng)啟動中耗時最多的環(huán)節(jié)之一,在Zygote服務(wù)啟動過程中通過preloadClasses()讀取/frameworks/base/preloaded-classes文件中的預(yù)加載列表來實(shí)現(xiàn)。其目的是通過預(yù)加載應(yīng)用程序啟動需要的類來提高應(yīng)用程序的啟動速度。但Android系統(tǒng)中預(yù)加載類多達(dá)一千多個,需要消耗過多的時間。預(yù)加載類分為兩種類型,一種是Android相關(guān)的類,另一種是Java基礎(chǔ)類。而Android相關(guān)的類是構(gòu)建在Java基礎(chǔ)類之上的。預(yù)加載類的優(yōu)化方法是將Android相關(guān)的類全部去掉,只留下Java基礎(chǔ)類。這樣增加了Android系統(tǒng)的啟動速度,同時對應(yīng)用程序啟動影響也不大。

5 測試運(yùn)行

在S5PV210 ARM平臺上對啟動優(yōu)化方案進(jìn)行運(yùn)行和測試,完成Android系統(tǒng)移植與優(yōu)化后系統(tǒng)運(yùn)行效果如圖4所示。并通過表1列出同正常流程啟動的數(shù)據(jù)進(jìn)行對比分析,發(fā)現(xiàn)優(yōu)化后系統(tǒng)啟動時間從原來的平均42.04 s減少到了22.6 s。啟動優(yōu)化后,Android系統(tǒng)啟動速度明顯加快,優(yōu)化效果明顯。

圖4 系統(tǒng)運(yùn)行效果(截圖)

s

分類12345平均優(yōu)化前42.641.742.341.642.042.04優(yōu)化后22.922.622.322.722.522.6

6 小結(jié)

Android系統(tǒng)的開放性決定了Android系統(tǒng)要運(yùn)行在不同的硬件平臺上,使得掌握Android系統(tǒng)的移植成為開發(fā)的基礎(chǔ)。另外,Android系統(tǒng)啟動時間過長嚴(yán)重影響了用戶體驗(yàn)。根據(jù)這一研究背景,結(jié)合工業(yè)控制領(lǐng)域的應(yīng)用需求,本文主要研究了在S5PV210平臺上移植Android系統(tǒng),并對Android系統(tǒng)進(jìn)行啟動優(yōu)化,通過實(shí)驗(yàn)數(shù)據(jù)分析,得出S5PV210平臺上運(yùn)行的Android系統(tǒng)啟動時間得以優(yōu)化。

[1]宋小倩,周東升.基于Android平臺的應(yīng)用開發(fā)研究[J].軟件導(dǎo)刊,2011(2):104-106.

[2]吳昊,張哲.基于國產(chǎn)自主CPU的SEP0611平臺中Dalvik虛擬機(jī)的移植和優(yōu)化[J].電子器件,2012(3):322-

326.

[3]仲元昌,王靖欣,胡江坤,等.Android內(nèi)核移植及遠(yuǎn)程監(jiān)控中的應(yīng)用[J].重慶理工大學(xué)學(xué)報(自然科學(xué)),2011,25(1):102-106.

[4]邵艷杰.Android操作系統(tǒng)移植及應(yīng)用研究[D].長沙:湖南大學(xué),2011.

[5]柯元旦.Android內(nèi)核剖析[M].北京:電子工業(yè)出版社,2011.

[6]郭甲.基于數(shù)字電視平臺的Android定制與優(yōu)化[D].成都:電子科技大學(xué),2012.

[7]MA W F,WANG J H. Analysis of the Linux 2.6 kernel scheduler[C]//Proc. International Conference on Computer Design and Applications(ICCDA 2010). Qinhuangdao:[s.n.],2010:71-74.

[8]希凡.Android關(guān)鍵服務(wù)分析與啟動過程優(yōu)化[D]. 成都:電子科技大學(xué),2012.

莫太平(1974— ),碩士生導(dǎo)師,副教授,主要研究方向?yàn)橹悄芸刂婆c模式識別、嵌入式系統(tǒng)及現(xiàn)場總線等;

周園園(1988— ),女,碩士生,主研智能信息處理;

趙翔翔(1991— ),碩士生,主研嵌入式軟件開發(fā)。

責(zé)任編輯:許盈

Research of transplantation and optimization of Android system based on S5PV210 embedded platform

MO Taiping, ZHOU Yuanyuan, ZHAO Xiangxiang

(SchoolofElectronicEngneeringandAutomation,GuilinUniversityofElectrnicandTechnology,GuangxiGuilin541004,China)

For the characteristic that Android system is not dependent on equipment and even platform, the method of Android transplantation and optimization on embedded platform S5PV210 is introduced in this paper by combining the need for Android system transplantation boot speed at present in the field of the industrial control. Some specific examples are used to describe the transplantation process of kernel and Android file system, and then the Android system is ported to the platform S5PV210 successful. Besides, the method does startup optimization in startup services, application, pre-loaded class etc. on Android system. The experimental data show that the startup speed of the Android system on the S5PV210 platform is significantly accelerated.

S5PV210 embedded platform; Android system; optimization; transplantation

TP393

A

10.16280/j.videoe.2016.09.009

國家自然科學(xué)基金項(xiàng)目(61263013);廣西教育廳重大項(xiàng)目(201101ZD007);廣西信息科學(xué)實(shí)驗(yàn)中心重大項(xiàng)目(20130110);桂林電子科技大學(xué)研究生教育創(chuàng)新計(jì)劃資助項(xiàng)目(GDYCSZ201475);桂林電子科技大學(xué)研究生教育創(chuàng)新計(jì)劃資助項(xiàng)目(GDYCSZ201477)

2016-02-23

文獻(xiàn)引用格式:莫太平,周園園,趙翔翔. 面向S5PV210嵌入式平臺的Android系統(tǒng)移植與優(yōu)化的研究[J].電視技術(shù),2016,40(9):46-50.

MO T P,ZHOU Y Y,ZHAO X X. Research of transplantation and optimization of Android system based on S5PV210 embedded platform [J].Video engineering,2016,40(9):46-50.

猜你喜歡
內(nèi)核應(yīng)用程序嵌入式
萬物皆可IP的時代,我們當(dāng)夯實(shí)的IP內(nèi)核是什么?
強(qiáng)化『高新』內(nèi)核 打造農(nóng)業(yè)『硅谷』
刪除Win10中自帶的應(yīng)用程序
電腦報(2019年12期)2019-09-10 05:08:20
基于嵌入式Linux內(nèi)核的自恢復(fù)設(shè)計(jì)
Linux內(nèi)核mmap保護(hù)機(jī)制研究
搭建基于Qt的嵌入式開發(fā)平臺
嵌入式軟PLC在電鍍生產(chǎn)流程控制系統(tǒng)中的應(yīng)用
Altera加入嵌入式視覺聯(lián)盟
倍福 CX8091嵌入式控制器
自動化博覽(2014年4期)2014-02-28 22:31:15
關(guān)閉應(yīng)用程序更新提醒
電腦迷(2012年15期)2012-04-29 17:09:47
习水县| 淅川县| 油尖旺区| 华安县| 乾安县| 边坝县| 建瓯市| 离岛区| 清涧县| 土默特左旗| 藁城市| 山东省| 鹤山市| 仁怀市| 布尔津县| 济源市| 嘉禾县| 肇庆市| 商水县| 咸丰县| 青岛市| 阳朔县| 甘洛县| 札达县| 仪陇县| 沾化县| 垣曲县| 双江| 自治县| 聊城市| 城固县| 卢湾区| 巴塘县| 白城市| 治县。| 囊谦县| 上林县| 新龙县| 攀枝花市| 嘉峪关市| 扎鲁特旗|