到2020年,分析師預測到達到200億臺IoT設備將需要很多開發人員快速工作。幫助加速開發的一種方法是從硬件方面抽象應用程序端,以便許多不同的最終產品可以來自少數幾個硬件平臺。 Eclipse Foundation已經開設了一個承諾如此做的項目:Eclipse Edje。
上周在EclipseCon上宣布的Eclipse Edje開源物聯網項目將定義一組應用程序編程接口(API)資源受限的設備,提供物聯網應用程序必不可少的基本服務。它旨在提供一個標準庫,形成硬件抽象層(HAL),用于關鍵的微控制器功能,如GPIO,PWM,LCD,UART等。該項目最初將利用MicroEJ的代碼貢獻,但歡迎并鼓勵新貢獻者通過Eclipse Foundation工作。
這種方法的優點很多。首先,它允許應用軟件開發人員在不需要手頭硬件甚至完全定義的情況下工作。只要硬件將提供API所要求的基本資源,軟件就不會真正關心。因此,應用程序開發人員不僅可以在沒有硬件準備的情況下工作,他們創建的應用程序也可以在支持API的任
是的,這確實意味著一旦HAL準備好就必須將HAL移植到項目硬件上,但這不應該是創建應用程序的任務非常棒。此外,Edje項目旨在(最終)為可用的硬件和軟件平臺提供參考實現。如果開發團隊正在使用這些現有平臺之一,那么移植已經完成。最糟糕的是,團隊可以在移植到其獨特平臺時遵循一個工作模板。
目前,Edje項目的目標是32位ARM處理器實現。這意味著來自Microchip,NXP,Renesas和STMicroelectronics等公司的處理器將可以在Edje實現中使用。該項目的MicroEJ演示中提到的一些初始參考硬件包括STM32F746G DISCO板和Raspberry Pi 2.這些示例 - 200 MHz,16M閃存機到900 MHz,1 GB機器 - 反映了適用范圍HAL - 部分。該項目旨在支持具有低至32 kB RAM和128 kB閃存(運行頻率為16 MHz)的32位器件,如Cortex-M0產品。
Edje API適用于Java語言。 Java Edge將使用的是Java J2SE,Java J2SE Embedded,MicroEJ和Android的交集。它包括java.land,java.util,java.io等。它們至少提供三種基本服務:控制器通信接口,外設管理以及數字和模擬IO。控制器接口目前包括UART,SPI,CAN和I2C。外設管理提供平臺上的外設列表(片上MCU,板載設備和外部設備),并在拔出或插入電源時通知.IO服務從Arduino中獲取外觀并提供能力管理各個控制器引腳。 API通過其端口和ID識別引腳,并且可以處理特定于MCU,特定于板或行業標準(如Ardiuno)的身份。
Java之前已經嘗試過作為物聯網平臺的基礎。 Eclipse的KURA,OpenJDK項目甚至Android等項目都使用了相對較大,功能強大的硬件系統。但是沒有一個被證明可以擴展到微控制器領域。 Edje旨在克服它們的局限性,并將Java可編程性應用于甚至小型物聯網設計。無論這個特定項目是否實現其目標或獲得廣泛認可,它都是物聯網發展必須最終成為先例的預兆。正如我在博客中所指出的那樣平臺是嵌入式開發的未來,使用有針對性的手工制作軟件創建自定義硬件的傳統方法正在變得邊緣化。像Edje項目這樣的方法將繼續出現,并成為越來越多的物聯網設計的基礎。
-
Eclipse
+關注
關注
1文章
114瀏覽量
21414 -
PCB打樣
+關注
關注
17文章
2968瀏覽量
21656 -
華強PCB
+關注
關注
8文章
1831瀏覽量
27726 -
華強pcb線路板打樣
+關注
關注
5文章
14629瀏覽量
42983
發布評論請先 登錄
相關推薦
評論