首頁 > 評測 > NXP i.MX7D與AndroidThings系列之二:NXP i.MX7D硬件及準備

NXP i.MX7D與AndroidThings系列之二:NXP i.MX7D硬件及準備

NXP   i.MX7   PICO-PI   Android Things   SoM   安卓   物聯網   
  • 作者:SATURN
  • 來源:21ic
  • [導讀]
  • PICO-PI-IMX7的硬件資源豐富,接下來讓我們燒寫一下Android Things,看看谷歌出品的OS是否有那么令人期待。

 i.MX7D是一款二合一型開發(fā)板,包括一個i.MX7D SoM模塊及一個基板,專門為IoT進行了優(yōu)化。其中SoM模塊使用了POP封裝,集存儲/CPU/MCU于一體,集成度非常高,基板通過高速接口與SoM連接,同時基板也提供了各類接口如USB、音頻及GPIO等。

歡迎加入Android Things交流群:452863046

image1.jpg

硬件包裝上很醒目的Android Things標簽,表明這是一款經Google認證的Android Things硬件,PICO-PI-IMX7是產品的具體型號。i.MX 7Dual包括兩個高達1.2 GHz的ARM®Cortex®-A7內核以及一個ARM®Cortex®-M4內核,既保證了高性能,還能提供低功耗服務,是現代IoT硬件的典型解決方案。開發(fā)板與英特爾®Edison的引腳兼容,用于傳感器和低速I / O,同時還為多媒體和連接增加了額外的擴展可能性,可輕松擴展和實現物聯網設計。

image2.jpg

開發(fā)套件的SoM模塊通過3個70針的Hirose接口與基板相連,上圖中用3個小螺絲固定的就是SoM模塊,該模塊的集成度非常高,小小的模塊上集成了包括 NXP i.MX7, Memory, eMMC, Power Management IC (PMIC) and WiFi / Bluetooth等在內的主要功能組件。

image3.png

i.MX7D套件提供的主要特性如下

• 集成兩顆ARM Cortex-A7內核,主頻高達1GHz,32KB L1指令緩存及32KB L1數據緩存,NEON MPE協處理器

• 集成一顆ARM Cortex-M4內核,主頻為200MHz,集成MPU, FPU處理單元

• 提供512MB的RAM及4GB的eMMC外部存儲

• LCD接口,但是沒有HDMI接口

• MIPI CSI攝像頭接口

• 外設接口包括:GPIO、I2C、SPI、PWM及UART等

• 板載千兆以太網絡接口,WiFi/BL4 4.1無線接口

• USB 2.0及USB Type-C接口

image4.jpg

接口圖一

image5.jpg

接口圖二

i.MX7D套件提供的GPIO接口如下

image6.png

J8提供的40針GPIO接口與RPI接口兼容,J9主要用于I2S音頻連接,JP1及JP2遵循Click標準,可以使用市面上大量的Click模塊來進行功能擴展。

要使用i.MX7D套件來進行Android Things開發(fā),首先需要在i.MX7D上燒寫Android Things固件,有兩種類型的固件,一是標準型固件,即只提供系統(tǒng)固件,無附加App應用;另一種類型的固件是用戶定制型,包含App程序,燒寫后開機即可運行指定的App,系統(tǒng)啟動后自動加載程序并運行。

使用隨產品附贈的USB Type-C數據線將開發(fā)板連接到PC的USB 3.0端口,從Android Things Console下載Android Things Setup Utility 。此過程需要登錄Google帳戶并接受許可協議和服務條款。

接下來運行Setup Utility程序,如下

image7.png

這是一個控制臺程序,用戶從菜單中選擇自己需要的操作,如安裝固件或是設置網絡。這里選安裝固件,接下來的操作詢問用戶具體的硬件平臺類型,目前只支持i.MX7D及RPI3,選擇i.MX7D后開始下載平臺工具,接下來詢問用戶使用何種類型的固件,剛開始還是選擇Default Image吧,等玩熟了,再來定制固件。

接下來就是漫長的下載過程,等下載完成后程序自動執(zhí)行燒寫操作

image8.png

這里是燒寫完成的畫面,接著詢問用戶是否設置WiFi連接,選y則進入連接設置操作

image9.png

開始連接WiFi,稍等片刻,連接就完成了

image10.png

設置完成,等待用戶重啟系統(tǒng)!

重新啟動后新的固件應該開始工作了,如果需要驗證的話,可以使用adb shell來進入Android Things系統(tǒng),還可以使用pio來進行簡單的查看及設置操作。

image11.png

這是使用adb shell連接到系統(tǒng)后執(zhí)行l(wèi)s命令的效果

使用內置的pio命令查看可用的GPIO端口,后續(xù)將介紹如何使用Android Studio來編寫控制GPIO的應用程序,當然其實用pio也可以實現的,而且是交互方式,非常方便!

image12.png

除了可以使用adb,也可以使用串口方式來訪問設備。使用終端程序(如PuTTY(Windows), Serial(Mac OS)或 Minicom(Linux))在開發(fā)計算機上打開與USB串行設備的連接?刂婆_的串口參數如下:

• 波特率:115200

• 數據位:8

• 校驗:無

• 停止位:1

燒寫好Android Things固件后,接下來就是寫程序了,官方推薦使用Android Studio來完成,接下來準備安裝Android Studio,熟悉Android Things API,開始嘗試吃螃蟹了!沒有真正用Android Things點個燈,是真不知道其便利性的!

且聽下回分解。

  • 本文系21ic原創(chuàng),未經許可禁止轉載!

網友評論