精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

          0
          • 聊天消息
          • 系統(tǒng)消息
          • 評論與回復
          登錄后你可以
          • 下載海量資料
          • 學習在線課程
          • 觀看技術(shù)視頻
          • 寫文章/發(fā)帖/加入社區(qū)
          會員中心
          創(chuàng)作中心

          完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

          3天內(nèi)不再提示

          Android Things開發(fā)環(huán)境搭建案例

          電子設(shè)計 ? 來源:王玉成 ? 2019-01-03 10:20 ? 次閱讀

          物聯(lián)網(wǎng) (IoT) 的應(yīng)用開發(fā),離不開跟開發(fā)板打交道,我們需要配置好開發(fā)板的各種環(huán)境,最后才能用 Android Studio 進行應(yīng)用開發(fā)。

          我們今天就以 Raspberry Pi 3 為例,一起來搭建 Android Things 的開發(fā)環(huán)境。

          硬件準備
          Raspberry Pi 3 的硬件開發(fā)板就長這樣:

          開發(fā)板是有了,但是我們應(yīng)該怎么用開發(fā)板呢?那好,我們先進一步了解并分析開發(fā)版的功能:

          Android Things 的開發(fā)環(huán)境

          玩過 Raspberry Pi 3 的人可以略過這段,但是對于首次上手的玩家,有幾點要注意:
          事項 1:別費盡心思找電源了,開發(fā)板用的 Micro USB 口做供電接口。別找個電源適配器,拼命往音頻接口上塞啦,這么搞廠商也很頭疼的。
          事項 2:做什么樣的事找什么樣的位置。每個接口有每個接口特定的作用。看著文字對上號,根據(jù)方案選擇特定的模塊就行了。

          那么多 GPIO 口啊……怎么辦?我有針腳恐懼癥的。
          - 沒問題,我們就先來了解針腳的作用,就可以玩轉(zhuǎn)開發(fā)板了。

          等等,我怎么知道開發(fā)板哪個地方是第一根針腳啊?
          - 在電路板上,找到 GPIO 針腳,離 USB 接口最遠的那一端,對了,開發(fā)板上應(yīng)該有一個 J8 標記, 就是那位置為 1 號針腳,只需要找到這幾根針腳就夠了。供電是引出 5V 還是 3.3V 的電源針腳,跟你自己的電路有關(guān),切記在連線之前把電壓搞清楚,不然會燒掉器件的。接下來認出 UART, SPI, PWM, I2C 接口,依據(jù)自己的需求,找一個面包板,就可以拉線出來干活了。

          硬件認清楚了,這是第一步,還要找找開發(fā)版的外設(shè),一般說外設(shè)就是供電,顯示,存儲,輸入這幾大塊。
          microUSB 給電源供電;
          HDMI 用來顯示;
          有線或者 Wi-Fi 用來連接網(wǎng)絡(luò)
          microSD 卡以及讀卡器用來燒寫系統(tǒng)。

          配備完這些外設(shè),搭好面包板,就可以動手燒寫系統(tǒng)了。

          下載鏡像
          開始找地方下載鏡像了,鏡像鏈接在此:
          developer.android.com/things/preview/download.html

          上一講提到的 4 個開發(fā)版的鏡像都可以下載。

          Raspberry Pi 3 最新的鏡像壓縮包名為 androidthings_rpi3_devpreview_2.zip,下載完壓縮包,解壓縮之后,只有一個文件 iot_rpi3.img,我們來看看是什么格式的文件:

          這些信息好像還不足以讓我們判斷鏡像的內(nèi)容,但是可以明確的是,這是一個可以做啟動的鏡像文件。那我們來看看鏡像內(nèi)部包含了哪些內(nèi)容?

          Android Things 的開發(fā)環(huán)境

          通過鏡像的內(nèi)容,我們看到鏡像的內(nèi)部結(jié)構(gòu)。其中 rpi boot 是 Raspberry Pi 的 secondary boot,后續(xù)就是 uboot,接下來,就是 uboot 所引導的系統(tǒng)文件了。做過 uboot 級別移植的人,應(yīng)該十分清楚 bl1, bl2, uboot 的一些概念,這里就不做詳細解釋了。

          這里再啰嗦幾句,我們看一下 Developer Preview 1 版本的鏡像,以 Edison 開發(fā)版的鏡像為例:

          Android Things 的開發(fā)環(huán)境

          可以看到,在 Developer Preview 1 這一版中,分成了許多文件,并且提供了燒寫腳本,還提供了 fastboot 和 ADB 工具。但是,對于初學者來說,如何正確使用這些工具成了一個難題。所以在 Dev Preview 2 的版本中,把這些文件合并成一個 image 文件,燒寫就變的很簡單了。還是要為 Google 的貼心贊一贊,每一版的改進都會讓開發(fā)者用起來更方便。

          細心的讀者會發(fā)現(xiàn),兩個開發(fā)版的鏡像文件中,有些文件內(nèi)容是不同的,主要是 bootloader 及之前的可執(zhí)行代碼。有興趣的讀者可以對比一下 x86 和 arm 的架構(gòu)的 bootloader 的不同的地方及作用。

          Edision 的鏡像文件中間,還包括一個文件,似乎在回顧著某種歷史,如果你找出來了,就請在下方留言吧。

          燒寫鏡像到 SD
          Raspberry Pi 的外接存儲設(shè)備是 microSD 卡,以下簡稱 SD 卡。由于 Linux, Windows, Mac 的燒寫的工具也不盡相同,我們以 Linux 為例說一下燒寫步驟,燒寫的命令只要是 dd,但是千萬不要 dd 到你的硬盤上去了!

          最安全的燒寫流程如下:
          $ df -h 命令,查看一下當前有哪些設(shè)備,如果電腦不能識別 SD 卡,那么開始第 2 步,如果電腦已經(jīng)識別 SD 卡,記下來 SD 卡是哪個設(shè)備,就可以走第 3 步了;
          把 SD 卡插上,重復第一步;
          $ sudo dd bs=4M if=iot_rpi3.img of=/dev/sdx 命令,確定自己的 SD 卡的設(shè)備號,然后把下載的 img 文件燒寫到 SD 卡上 ,這一步需要 root 權(quán)限哦。這兒要提醒一句,不是燒寫到 SD 卡的某個分區(qū),而是燒寫到這個 SD 卡所在的設(shè)備上。
          $ sync 命令,同步數(shù)據(jù)到 SD 卡。

          Windows 系統(tǒng)下,用 Win32DiskImager 工具,用管理員權(quán)限,燒寫 img 文件到 SD 卡即可。

          Mac 系統(tǒng)下也是用 Linux 下的命令:
          $ sudo dd bs=1m if=image.img of=/dev/rdisk

          啟動開發(fā)板
          把已經(jīng)燒寫過 Android Things 的 mciroSD 卡插到 Raspberry Pi 3 的對應(yīng)位置,就可以啟動開發(fā)板了。

          按以下的步驟去啟動開發(fā)板:

          用 microUSB 供電;
          插入網(wǎng)線;
          插入 HDMI 接口。

          大概第一次系統(tǒng)啟動要一到兩分鐘,耐心等待就行。

          系統(tǒng)啟動完之后,顯示器顯示了當前有線網(wǎng)的的 IP 地址,以及 Wi-Fi 還沒有連接上的狀態(tài)。那么,我們可以借助有線網(wǎng)的 IP,去連接 ADB:
          $ adb connect
          connected to :5555

          由于 Raspberry Pi 是支持 DNS 廣播的,如果你的電腦支持 MDNS 功能,運行命令:
          $ adb connect Android.local

          連接成功后,會返回:
          connected to :5555

          這樣我們的 ADB 就正常連上Raspberry Pi 3了。借助 ADB ,我們可以連接 Wi-Fi 了。

          Android Things 的開發(fā)環(huán)境

          其中包含了用戶名和密碼,如果你的密碼為空,不加 -e passphrase 這個參數(shù)即可。

          接下來就要檢查 Wi-Fi 是否正確連上了:

          出現(xiàn)上面的消息,表明 Wi-Fi 是正常啟動了。那 DNS 是否通呢?撥下網(wǎng)線,然后 ping 一下試試。

          連接串口用于調(diào)試
          現(xiàn)在雖然 ADB 連上去了,網(wǎng)絡(luò)也通了,但是事情才剛剛開始。我們在工作前期,引入一種比較方便的調(diào)試方法,那就是嵌入式開發(fā)中骨灰級的調(diào)試方式:串口調(diào)試:

          對著上圖,拿著 USB 轉(zhuǎn) TTL 的線,找到 GPIO 的針腳上的 UART 的 TXD 和 RXD 兩根針。然后再找到地線,連接相應(yīng)的杜邦線就可以了。稍等,四個針腳,為啥有一個針腳不連呢,那個不是供電線嗎?由于 USB 轉(zhuǎn) TTL 線,在 USB 這端已經(jīng)供電了,所以 VCC 接口不需要連了。

          這兒需要注意的是,RX 和 TX 是交叉的,不是直連的。因為開發(fā)板上的 TX 就是 USB 這邊的 RX。RS-232 和 TTL 的區(qū)別,這兒就略過了。

          然后就要開始用 PC 機上的串口調(diào)試軟件來連接 USB 轉(zhuǎn)串口了。三大系統(tǒng)的工具又不太一樣。Windows下有 putty, secruCRT 等,Linux 下有 Mimicom, Mac 下有 Serial。根據(jù)自己的操作系統(tǒng)來選用吧。不過記各把波特率設(shè)為 115200, 8N1, 然后不要用流控,不管硬流控也好,還是軟流控也好,統(tǒng)統(tǒng)的不選。以前看過太多的血一般的教訓,選了流控,結(jié)果花好長時間跟蹤,串口什么打印也沒有,但是示波器上卻能看到串口數(shù)據(jù)……這時間不值。

          關(guān)掉開發(fā)板電源,然后撥出 SD 卡。用 PC 機讀 SD 卡。然后把 cmdline.txt 這個文件中的這一行:

          刪掉即可。不過作為嵌入式開發(fā)人員,誰舍得關(guān)串口呢?是么?當然,如果你的開發(fā)中,有串口設(shè)備做其它用途,是可以關(guān)掉串口輸出的。

          下一講就開始 Android Things 的 SDK 的分析了。

          聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
          • Android
            +關(guān)注

            關(guān)注

            12

            文章

            3926

            瀏覽量

            127161
          • 物聯(lián)網(wǎng)
            +關(guān)注

            關(guān)注

            2904

            文章

            44306

            瀏覽量

            371472
          收藏 人收藏

            評論

            相關(guān)推薦

            Android SDK開發(fā)環(huán)境搭建

            基于SDK進行Android應(yīng)用的開發(fā),首先需要進行基于SDK的開發(fā)環(huán)境搭建開發(fā)者安裝Ecl
            發(fā)表于 09-03 14:08

            android開發(fā)環(huán)境搭建

            android開發(fā)環(huán)境搭建
            發(fā)表于 09-10 13:58

            基于高通Vuforia SDK搭建Android版移動AR應(yīng)用開發(fā)環(huán)境

            Android-Vuforia SDK 環(huán)境搭建高通公司提供關(guān)于游戲、多媒體以及效能等三方面的SDK,關(guān)于其詳細的SDK相關(guān)情況的介紹,請見高通開發(fā)者專區(qū):http
            發(fā)表于 09-20 10:13

            搭建Android AR技術(shù)開發(fā)環(huán)境

            Android-Vuforia SDK解壓的目錄點擊OK至結(jié)束。 Android AR技術(shù)開發(fā)環(huán)境就已經(jīng)搭建好了。那么下面就讓我們一起來編
            發(fā)表于 09-20 16:53

            adrod 開發(fā)環(huán)境搭建及基本使用

            ,Google以Apache免費開源許可證的授權(quán)方式,發(fā)布了Android的源代碼。 ? ? ? ? 2.關(guān)于Android開發(fā)環(huán)境搭建 ?
            發(fā)表于 07-09 08:35

            開發(fā)環(huán)境搭建教程

            android Windows系統(tǒng)下開發(fā)環(huán)境搭建
            發(fā)表于 03-22 17:42 ?0次下載

            Android 開發(fā)環(huán)境搭建步驟詳細圖解

            Android 開發(fā)環(huán)境搭建步驟詳細圖解
            發(fā)表于 10-24 08:49 ?11次下載
            <b class='flag-5'>Android</b> <b class='flag-5'>開發(fā)</b><b class='flag-5'>環(huán)境</b><b class='flag-5'>搭建</b>步驟詳細圖解

            如何搭建移動物聯(lián)網(wǎng)Android開發(fā)環(huán)境

            開發(fā)平臺之一。Android應(yīng)用開發(fā)是軟件、硬件協(xié)同設(shè)計 的一個過程,在開發(fā) Android 應(yīng)用程序之前,首先需要
            發(fā)表于 11-13 08:00 ?1次下載
            如何<b class='flag-5'>搭建</b>移動物聯(lián)網(wǎng)<b class='flag-5'>Android</b>的<b class='flag-5'>開發(fā)</b><b class='flag-5'>環(huán)境</b>

            谷歌將關(guān)閉Android Things

            谷歌計劃關(guān)閉 Android Things,它是面向智能家居設(shè)備的 Android 特別版本。這個智能家居項目于 2015 年以 Brillo 名稱啟動,旨在提供 “物聯(lián)網(wǎng)的底層操作系統(tǒng)”。2016
            的頭像 發(fā)表于 12-18 11:30 ?1847次閱讀

            如何搭建鴻蒙開發(fā)環(huán)境

            開發(fā)某一個平臺的程序,那么首先要搭建出本地開發(fā)環(huán)境,那么如何搭建鴻蒙開發(fā)
            的頭像 發(fā)表于 02-24 11:25 ?3713次閱讀
            如何<b class='flag-5'>搭建</b>鴻蒙<b class='flag-5'>開發(fā)</b><b class='flag-5'>環(huán)境</b>

            以 Raspberry Pi 3 為例,搭建 Android Things 開發(fā)環(huán)境資料下載

            電子發(fā)燒友網(wǎng)為你提供以 Raspberry Pi 3 為例,搭建 Android Things 開發(fā)環(huán)境資料下載的電子資料下載,更有其他相關(guān)
            發(fā)表于 04-18 08:54 ?24次下載
            以 Raspberry Pi 3 為例,<b class='flag-5'>搭建</b> <b class='flag-5'>Android</b> <b class='flag-5'>Things</b> <b class='flag-5'>開發(fā)</b><b class='flag-5'>環(huán)境</b>資料下載

            Android Things IR遠程黑客

            電子發(fā)燒友網(wǎng)站提供《Android Things IR遠程黑客.zip》資料免費下載
            發(fā)表于 12-05 10:03 ?1次下載
            <b class='flag-5'>Android</b> <b class='flag-5'>Things</b> IR遠程黑客

            西蒙說游戲使用Android Things

            電子發(fā)燒友網(wǎng)站提供《西蒙說游戲使用Android Things.zip》資料免費下載
            發(fā)表于 12-12 14:19 ?0次下載
            西蒙說游戲使用<b class='flag-5'>Android</b> <b class='flag-5'>Things</b>

            帶有Android Things的MATRIX語音

            電子發(fā)燒友網(wǎng)站提供《帶有Android Things的MATRIX語音.zip》資料免費下載
            發(fā)表于 01-05 09:40 ?0次下載
            帶有<b class='flag-5'>Android</b> <b class='flag-5'>Things</b>的MATRIX語音

            TLT507-Android開發(fā)環(huán)境搭建

            TLT507-Android開發(fā)環(huán)境搭建
            的頭像 發(fā)表于 01-26 17:03 ?571次閱讀
            TLT507-<b class='flag-5'>Android</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>環(huán)境</b><b class='flag-5'>搭建</b>