2016年7月4日 星期一

Intel® Galileo Gen 2 (2/2)

Arduino -> Linux

透過這範例可以透過這方式把數值傳給系統做其他的應用

把資料寫入系統範例


結果

Intel® Galileo Gen 2 Getting Started

首先來透過節錄官網的文字簡單介紹一下 Intel® Galileo Gen 2 這片板子


Intel® Galileo 第 2 代開發板是以 Intel® Quark SoC X1000 應用處理器 (32 位元的 Intel® Pentium® 品牌系統單晶片) 為基礎的微控制器主機板。這是首款以 Intel® 架構為基礎,具備軟硬體腳位相容特性,且針對 Arduino Uno 設計擴充板的主機板。

Intel Galileo 第 2 代主機板和 Arduino 軟體開發環境的軟體也具有相容性,十分容易使用及導入。除 Arduino 硬體和軟體相容性以外,Intel Galileo 第 2 代主機板還配備數個電腦業界標準 I/O 連接埠和功能,可拓展其原生用途及功能,超越 Arduino 擴充板價值鏈體系的界限。主機板標準配備為一個全尺寸 mini-PCI Express* 插槽、100 Mb 乙太網路連接埠、Micro-SD 插槽、6 支針腳 3.3V USB TTL UART 接頭、USB 主控端連接埠、USB 用戶端連接埠,以及 8 Mbyte NOR Flash*。

這是一款由正版 Intel® 處理器與 SoC 的周邊原生 I/O 功能所結合而成,同時適合製造商社群與學生使用的全功能產品。專業開發人員若想要尋找簡單且符合成本效益的開發環境,用於替代較為複雜的 Intel® Atom™ 處理器與 Intel® Core™ 處理器設計,則本產品也是理想的選擇。

簡單來說就是 Arduino uno 的升級版,除了原本的功能以外還多了網路、作業系統等功能

不過也要注意一下哦!這片板子並不是完全相容於 uno 的板子

有些在 Arduino Uno 的板子上能跑的程式碼到了 Intel Galileo Gen2 上不見得能能執行

可能原因感覺是因為GPIO的傳輸速度不一樣 ( 看起來是這樣





現在就讓我們開始使用它吧!

燒錄作業系統映像檔


其燒錄方法與其他開發板無異,我燒入的作業系統映像檔是由 Intel 為 IoT 所開發的原始 yocto

連結

你也可以選擇有包其他不一樣東西的 yocto

連結

下載下來解壓縮後就可以透過 Win32 Disk Imager 之類的軟體把映像檔燒入記憶卡之中這步驟
就結束囉!




環境建設

下載並安裝特定版本(太舊不行)的 Arduino IDE 與驅動程式,我是僅安裝 Arduino IDE 與 i586 
core 後就可使用。

Arduino IDE 1.6.9 + 安裝 i586 core 步驟


  1. Arduino IDE
  2. 驅動程式


只有比較新版的 IDE 才有此擴充功能
選擇我們的板子與序列埠後就可以進行範例程式測試
燒錄成功後則可透過板子上的 LED 看到結果

連結上作業系統

把記憶卡插入板子並接上電源、網路線後我們有兩個方法連接到作業系統裡

可以參考這篇文章


  •  UART 介面

使用這種方法需要有一片 FTDI 的板子使電腦能與板子上的系統透過 UART 溝通,如果臨時
沒有 FTDI 板子或是不想買時可以用另一種方法




  • 網路

只要有了板子的 IP 就可以透過遠端連線(ssh)的方式來控制我們的作業系統,除了固定 IP、查
詢網路基地台 (AP) 狀態取得裝置 IP 以外我們還可以透過 Arduino IDE 來取得 IP 與取得新的
IP 需要註冊時 ex.學校網路 可以設定 IP 與 MAC 碼

作業系統與 Arduino IDE 有特別做出一個溝通橋樑使他們可以溝通,這裡使用的是 system() 指
令其意思等於在裡面的作業系統下 comment line,有了這個方法即可以把 Arduino 裡的資料傳
給系統再做更進一步的應用或是取得作業系統上的資料

取得IP

取得系統上的 IP 並傳到Serial介面 (ifconfig > /dev/ttyGS0)

設定 IP 、 MAC 碼

此方法在不想額外申請或是想用舊有的 IP 時使用,其實就是把板子上的參數設定的與你想替代的電腦或是其他裝置一樣,不過不可以同時兩個裝置都連接上網路哦!

僅供參考
依照需求重設系統的網卡參數

結果

備註:
enp0s20f6 為系統辨識的網卡名稱,照打即可
hw ether 為實體位置(MAC)
netmask 為網路遮罩
gw 為預設閘道
兩個網卡參數一樣的裝置不要同時連上網路


到這裡就可以使用IP連進你的系統囉

不管你是用ssh還是putty等方式,都要記得要在同個網域