首頁(yè) > 評(píng)測(cè) > NXP i.MX7D與AndroidThings系列之二:NXP i.MX7D硬件及準(zhǔn)備

NXP i.MX7D與AndroidThings系列之二:NXP i.MX7D硬件及準(zhǔn)備

  • 作者:SATURN
  • 來(lái)源:21ic
  • [導(dǎo)讀]
  • PICO-PI-IMX7的硬件資源豐富,接下來(lái)讓我們燒寫(xiě)一下Android Things,看看谷歌出品的OS是否有那么令人期待。

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

歡迎加入Android Things交流群:452863046

image1.jpg

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

image2.jpg

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

image3.png

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

• 集成兩顆ARM Cortex-A7內(nèi)核,主頻高達(dá)1GHz,32KB L1指令緩存及32KB L1數(shù)據(jù)緩存,NEON MPE協(xié)處理器

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

• 提供512MB的RAM及4GB的eMMC外部存儲(chǔ)

• LCD接口,但是沒(méi)有HDMI接口

• MIPI CSI攝像頭接口

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

• 板載千兆以太網(wǎng)絡(luò)接口,WiFi/BL4 4.1無(wú)線接口

• USB 2.0及USB Type-C接口

image4.jpg

接口圖一

image5.jpg

接口圖二

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

image6.png

J8提供的40針GPIO接口與RPI接口兼容,J9主要用于I2S音頻連接,JP1及JP2遵循Click標(biāo)準(zhǔn),可以使用市面上大量的Click模塊來(lái)進(jìn)行功能擴(kuò)展。

要使用i.MX7D套件來(lái)進(jìn)行Android Things開(kāi)發(fā),首先需要在i.MX7D上燒寫(xiě)Android Things固件,有兩種類(lèi)型的固件,一是標(biāo)準(zhǔn)型固件,即只提供系統(tǒng)固件,無(wú)附加App應(yīng)用;另一種類(lèi)型的固件是用戶定制型,包含App程序,燒寫(xiě)后開(kāi)機(jī)即可運(yùn)行指定的App,系統(tǒng)啟動(dòng)后自動(dòng)加載程序并運(yùn)行。

使用隨產(chǎn)品附贈(zèng)的USB Type-C數(shù)據(jù)線將開(kāi)發(fā)板連接到PC的USB 3.0端口,從Android Things Console下載Android Things Setup Utility 。此過(guò)程需要登錄Google帳戶并接受許可協(xié)議和服務(wù)條款。

接下來(lái)運(yùn)行Setup Utility程序,如下

image7.png

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

接下來(lái)就是漫長(zhǎng)的下載過(guò)程,等下載完成后程序自動(dòng)執(zhí)行燒寫(xiě)操作

image8.png

這里是燒寫(xiě)完成的畫(huà)面,接著詢問(wèn)用戶是否設(shè)置WiFi連接,選y則進(jìn)入連接設(shè)置操作

image9.png

開(kāi)始連接WiFi,稍等片刻,連接就完成了

image10.png

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

重新啟動(dòng)后新的固件應(yīng)該開(kāi)始工作了,如果需要驗(yàn)證的話,可以使用adb shell來(lái)進(jìn)入Android Things系統(tǒng),還可以使用pio來(lái)進(jìn)行簡(jiǎn)單的查看及設(shè)置操作。

image11.png

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

使用內(nèi)置的pio命令查看可用的GPIO端口,后續(xù)將介紹如何使用Android Studio來(lái)編寫(xiě)控制GPIO的應(yīng)用程序,當(dāng)然其實(shí)用pio也可以實(shí)現(xiàn)的,而且是交互方式,非常方便!

image12.png

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

• 波特率:115200

• 數(shù)據(jù)位:8

• 校驗(yàn):無(wú)

• 停止位:1

燒寫(xiě)好Android Things固件后,接下來(lái)就是寫(xiě)程序了,官方推薦使用Android Studio來(lái)完成,接下來(lái)準(zhǔn)備安裝Android Studio,熟悉Android Things API,開(kāi)始嘗試吃螃蟹了!沒(méi)有真正用Android Things點(diǎn)個(gè)燈,是真不知道其便利性的!

且聽(tīng)下回分解。

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

網(wǎng)友評(píng)論

  • 聯(lián)系人:巧克力娃娃
  • 郵箱:board@21ic.com
  • 我要投稿
  • 歡迎入駐,開(kāi)放投稿

熱門(mén)標(biāo)簽
項(xiàng)目外包 more+