官术网_书友最值得收藏!

1.2.2 基于Android的嵌入式系統

1.操作系統及引導器選型

嵌入式系統結構分布如圖1-19所示。應用程序通過調用嵌入式操作系統實現對以嵌入式處理器為核心的硬件平臺的操作。簡單嵌入式系統通常不運行操作系統,而是將用戶代碼直接運行在CPU上。在遇到相對復雜的任務時,選擇適當的操作系統可以減少開發的時間。一般來說,運行在單片機上的操作系統有OpenRTOS、FreeRTOS、uc/OS-ii等,這些操作系統的典型特征是簡單、不具備動態程序加載的功能,它們與用戶程序連接在一起,沒有或很少有完整的文件系統,適合于固定的應用環境。

圖1-19 嵌入式系統結構分布

相比較而言,高級一些的復雜嵌入式系統則不然。以移動電話為例,軟件部分在處理存儲等內部請求的同時響應用戶的操作。更主要的,用戶還要能夠安裝自定義的應用程序,這使得操作系統必須具有復雜的任務調度、請求處理能力。常見的高級操作系統有GNU/Linux、Windows CE、Windows Phone、vxWorks等,這些系統與前面所述的FreeRTOS等不同,擁有常見的計算機操作系統架構,能處理更加復雜的請求和動態加載代碼。

很多處理器上電時僅有部分基本模塊工作,為了成功加載操作系統內核,還必須借助引導器。以Linux內核來說,需要使用Grub/Lilo等引導器才能夠在x86計算機上運行。同樣,在手機等移動設備常用的ARM處理器上,Linux需要U-Boot、vivo、blob等引導器才能啟動。引導器通常不需要編寫,通過修改原有的代碼,使之運行在自定義的平臺上即可。

2.中間件選型

中間件是為系統軟件和應用軟件提供連接的軟件,如數據庫、Web服務器等均屬于中間件。為便于軟件各部件之間的溝通,在現代信息技術應用框架中,如Web服務、面向服務的體系結構等,中間件的應用比較廣泛。嚴格來講,中間件技術已經不局限于應用服務器、數據庫服務器。圍繞中間件,Apache基金會、IBM、Oracle、微軟各自發展出了較為完整的軟件產品體系。中間件技術創建在對應用軟件部分常用功能的抽象上,將常用且重要的過程調用、分布式組件、消息隊列、事務、安全、連接器、商業流程、網絡并發、HTTP服務器、Web Service等功能集于一身,或者分別在不同品牌的不同產品中完成。

在嵌入式系統中,中間件一般不會處理復雜的大型應用。簡單來說,嵌入式中間件就是運行在應用程序之下、操作系統之上,聯系應用程序與操作系統,或應用程序與其他應用程序的軟件。一般情況下,一個典型的系統中,圖形用戶界面、嵌入式數據庫、運行庫等都屬于中間件。在傳統開發過程中,軟件通常由開發商自行開發完成。然而,隨著嵌入式系統越來越大,功能越來越強,系統中從底層架構到上層需求之間或多或少存在重復,中間件就成為了一種低成本、高質量的選擇。好的中間件選型會大幅度減少開發者的工作,同時減少測量、調試的工作。

一個完備的Android嵌入式系統中,成品的中間件幾乎包含了支持APK程序的一切,從底層庫函數到Java虛擬機,再到第三方的JNI庫,最后是各種各樣的JAR包。這些大量的中間件大幅度減少了Android系統開發的時間與成本。

3.應用程序開發

作為運行在系統最頂層的程序——應用程序(簡稱APP),需要直接與用戶溝通,因此不僅需要具備完善的功能,還要具備美觀大方的用戶界面,以及舒適的用戶體驗。APP開發往往依據常規軟件工程的開發流程,在此不贅述。

4.pcDuino的軟件配置

pcDuino是聯斯普瑞電子科技有限公司發布的一款小巧而強大的PC平臺,它結合了ARM架構的迷你PC和Arduino的優勢,實現了開源軟件Linux和開源硬件Arduino生態系統的完美結合。

pcDuino支持Ubuntu Linux和Android 4.0ICS,采用標準的Android SDK,支持Python、C語言、Java等編程語言。pcDuino的出廠默認設置是將Ubuntu安裝在NAND flash里,Ubuntu可以從NAND flash啟動,或者通過可啟動的Micro SD卡啟動。用戶可以根據自己的需要將pcDuino的系統更新為最新的系統。

pcDuino&Ubuntu支持Ubuntu Linux 12.04版,該版本是為在具有DRAM限制并且支持NAND flash的ARM Cortex平臺上運行而優化的定制版。設備可以通過支持USB接口的鼠標和鍵盤來操作,具體的支持程序清單如表1-4所示。

表1-4 Ubuntu Linux 12.04版的支持程序

注:系統管理員和密碼都是ubuntu。

pcDuino為支持HD-TV的輸出顯示設備對Android 4.0進行優化,形成定制版Android 4.0。此顯示設備需要通過支持USB接口的鼠標和鍵盤來操作,具體支持的部分程序清單如表1-5所示。

表1-5 Android 4.0定制版支持的部分程序

主站蜘蛛池模板: 兰州市| 十堰市| 宜丰县| 广东省| 朝阳市| 松江区| 河西区| 定日县| 桂平市| 杨浦区| 丽江市| 黄山市| 同心县| 巩义市| 民丰县| 鄄城县| 耿马| 郓城县| 普兰县| 杂多县| 芜湖市| 贵州省| 保定市| 齐齐哈尔市| 尼玛县| 任丘市| 阜新市| 新干县| 湖南省| 米泉市| 隆昌县| 咸阳市| 五峰| 永济市| 汝南县| 万州区| 仙桃市| 夏津县| 苍南县| 安吉县| 武强县|