好久沒有看技術的東東了,趁今天去參加了由微軟與信息產(chǎn)業(yè)部軟件與集成電路促進中心(CSIP)聯(lián)合舉辦的.NET Micro Framework技術大會,寫點東西.
微軟在壟斷了桌面軟件市場后,現(xiàn)在又轉(zhuǎn)入了嵌入式領域,希望不會再出現(xiàn)桌面的那種一邊倒的局面了.不過看到今天的會上出現(xiàn)了諸多國內(nèi)的大公司后,發(fā)覺Microsoft不僅擅長政府公關,企業(yè)關注度也是很高,看情形Embedded的大蛋糕又面臨它的大嘴了.扯遠了,言歸正傳.
截止目前,微軟在嵌入式的布局分為三大塊: XP Embedded 、Windows CE、加上現(xiàn)在的.NET Micro Framework。這三者的應用領域既有交叉,又各自有所側(cè)重。當然,開發(fā)工具、支持的硬件平臺架構(gòu)也不盡相同??梢杂孟旅孢@個經(jīng)典的表格來描述,這個也是你選擇OS的重要依據(jù):
|
.NET Micro Framework |
Windows CE |
Windows XPe |
Example Devices |
Sensor Nodes, Aux displays, Health Monitoring, Remote Controls, Robotics |
GPS Handhelds, PDAs, Automotive, Set Top Boxes |
Thin Clients, ATMs, Kiosks |
Device Features |
Connected, Small, Wearable, Graphical UI |
Connected, Graphical UI, Server, Browser, RAS, DirectX |
PCclass performance, PC networking |
Footprint |
250-500KB managed code Full featured |
300KB+ without managed code 12MB with managed code |
40MB + Depending on features |
Power |
Very low power |
Low power |
Mains power |
CPU |
ARM7, ARM9, No MMU |
X86, MIPS, SH4, ARM, with MMU |
X86 |
Real-time |
Not Real-time |
Hard Real-time |
Real-time capable through 3rd party extensions |
Managed vs. Native Code |
Managed via .NET Micro Framework, native code through interop only. |
Supports both, managed code requires .NET Compact Framework |
Supports both, managed code requires .NET Framework |
|
|
就.NET Micro Framework來說,“它是微軟公司基于.NET平臺,主要針對硬件資源非常稀少、有限的嵌入式應用而設計的快速嵌入式開發(fā)技術。它針對傳統(tǒng)的SOC、MCU市場設計,可以運行在ARM7/ARM9之上,對于低端的ARM7處理器,可以不具備存儲器管理單元(MMU),而存儲器方面更是只要300KB左右的容量即可運作。特別適合Windows Vista Sideshow、遠程控制、智能家電、醫(yī)療電子、零售終端以及汽車電子等行業(yè)應用場景。并且用戶使用統(tǒng)一的Visual Studio .NET平臺和托管代碼(C#)開發(fā)產(chǎn)品應用(包括設備驅(qū)動)顯著的降低了廠商開發(fā)門檻,節(jié)約了大量開發(fā)時間和開發(fā)成本。”以上來自微軟官方介紹,參考
http://msdn2.microsoft.com/en-us/embedded/bb278106.aspx。
按照我自己的理解,.NET Micro Framework就是微軟為了進入底端嵌入式市場而推出的開發(fā)平臺。所謂底端,就是硬件上不需要MMU單元,軟件上沒有OS,但是它還可以延續(xù)桌面開發(fā)中最前衛(wèi)的.NET戰(zhàn)略,即用C#編寫托管代碼。這對于廣大的桌面開發(fā)者就很熟悉了,相當于把底層硬件操作進行了封裝。比如你要操作SPI,就來個 static SPI _spi=new SPI(new SPI.Configuration(Pins.GPIO_PORT_B_18,false,0,0,true,true,1000,SPI.SPI_module.SPI1)),然后進行賦值。
今天大會上微軟的硬件合作廠商Digi也派出了一個老外作演講。他舉了不少例子,像無線以太網(wǎng)關、醫(yī)院的輸血泵信息遠程管理、POS機廣告的網(wǎng)絡化、家居能源信息管理等等,確實很吸引人。如果你有興趣,可以裝個VS2005的完整版+微軟提供的.NET Micro Framework的SDK,嘗試一下這種最新的嵌入式開發(fā)技術。
PS:今天會上提到了幾個通訊網(wǎng)名詞平時時??吹?,但確切意思含糊,特意查了下:)
WIFI: 全稱Wireless Fidelity,又稱
802.11b標準,它的最大優(yōu)點就是傳輸速度較高,可以達到11Mbps.
Z-Wave:是一種無線
RF通信技術,設計用于住宅、照明商業(yè)控制以及狀態(tài)讀取應用,例如抄表、照明及家電控制、HVAC、接入控制、防盜及火災檢測等。
Z-Wave可將任何獨立的設備轉(zhuǎn)換為智能網(wǎng)絡設備,從而可以實現(xiàn)控制和無線監(jiān)測。
Zigbee:是一種新興的短距離、低速率無線網(wǎng)絡技術,它是一種介于無線標記技術和藍牙之間的技術提案。它此前被稱作“HomeRF Lite”或“FireFly”無線技術,主要用于近距離無線連接。它有自己的無線電標準,在數(shù)千個微小的傳感器之間相互協(xié)調(diào)實現(xiàn)通信。這些傳感器只需要很少的能量,以接力的方式通過無線電波將數(shù)據(jù)從一個傳感器傳到另一個傳感器,所以它們的通信效率非常高。
Z-Wave和Zigbee的比較:http://www.test169.com/article/2007/0601/article_21.html SideShow: 所謂的“
SideShow”,是Vista操作系統(tǒng)提供的一個新功能。(廣義的SideShow就是副屏,不局限于Vista,Windows CE或者別的嵌入式OS也可,實質(zhì)是遠程操作,意義在于節(jié)約能源。)在電腦主要屏幕之外,可以加入第二個采用小型屏幕的周邊裝置,也就是
SideShow裝置。這個外圍的
SideShow裝置,可以同步電腦上的信息,并在計算機
關機的情況下,以快速、低耗電的方式運作,顯示包括行事歷、e-mail……的豐富信息,也可以提供音樂播放、照片輪播等多媒體功能。
Sideshow的原理 Sideshow是以一片獨立的小型屏幕、一顆ARM架構(gòu)的整合式系統(tǒng)芯片,配合自帶的Flash閃存作為儲存空間,來提供運作所需的一切功能。 它會在開機時更新數(shù)據(jù),將要用的信息、文件等,先從電腦同步一份到閃存內(nèi)。如此便可以在關機時瀏覽數(shù)據(jù)、播放多媒體文件。