文章類型
開發平台
解決方案
關注主題
文章類型
開發平台
解決方案
關注主題

使用Ameba的WiFi模組連上網際網路

作者:曹永忠

智慧家庭的核心技術為網際網路,而連上網路最簡單的解決方案便是無線網路,所以如何讓Ameba來連接上網際網路,可說是一件非常重要的事,所幸Ameba開發板本身就內含WiFi無線網路模組,連網是一件非常簡單的事,本文要告訴讀者,如何簡單、快速、有效的連上網際網路。

Ameba WiFi功能

Ameba開發板是一塊支援Wi-Fi的微型化模組(RTL8711AF and RTL8195AM),內建 ARM Cortex-M3 CPU、記憶體,同時還配置了完整的無線網路協議,包含SSL硬體加速電路以及UART、 I2C、 SPI、PWM 、高速的 SDIO 接口……等各式序列介面,如下圖所示:

Ameba開發板模組一覽圖

Ameba開發板模組一覽圖

Ameba開發板核心晶片-RTL8195AM規格

Ameba使用RTL8195AM為開發板核心晶片,其基本規格如下:

  • 32-bit 166MHz ARM Cortex-M3 CPU
  • 內建低功耗 802.11 b/g/n 2.4G 無線 Wi-Fi
  • 內建NFC
  • 介面支援:GPIO / PWM / SPI / I2C / ADC / DAC / UART
  • Crypto HW engine:可做硬體加解密,支援 MD5/ SHA-1 / SHA2-256 / DES / 3DES / AES
  • IC 本身有 512K RAM,另外模組包含 2M SDRAM / 16M bit flash

Ameba開發板規格

Ameba開發板具有強大的功能,內含WiFi上網的功能,功能十分完備,其下為開發板的基本規格:

  • 與Arduino UNO開發版相容,可支援大多數 Arduino 擴充板(Shield):如 DfRobot 的 LCD Keypad shield……等等
  • 含一個 NXP LPC11U35 cortex-M0 IC,具備下列功能
    1. 不須使用 JLINK 可直接透過 USB傳入程式image檔
    2. 不須使用USB序列傳輸線,UART即可使用將訊息傳給開發用的電腦

Mac Address介紹

在許多無線網路的地方,由於安全性、保密性的因素,會採用權限管理,而最簡單、有效的方式,就是使用網路裝置的MAC Address,一般稱為「MAC」,每一個網路介面卡都有一個獨一無二的識別碼,這個識別碼是由六組16進位數字組成的物理位置(Physical Address),也稱為MAC(Media Access Control)Address。

這個位址分為兩個部分,前三組數字為Manufacture ID,就是廠商ID,後三組數字為Card ID,就是網路卡卡號,透過這兩組ID,我們可以在實體上區分每一張網路卡,理論上,全世界沒有兩張卡的MAC Address是相同的。

基於這個物理位址,就可以在網路上區分每一個裝置(電腦或網路產品),將資料傳輸到正確的位址而不會搞混,其中,MAC Address 是 12 碼的 16 進位數字,每兩個數字中間就會有「-」或「:」間隔,例如:00-F1-EE-50-DC-92。

取得網路MAC資料

第一步就是要教讀者如何取得MAC資料,我們將Ameba開發板的驅動程式安裝好後,打開Ameba開發板的開發工具「Sketch IDE整合開發軟體」,撰寫一段程式,就可以透過Ameba Wifi模組取得MAC資料,取得之MAC資料測試程式如下表所示:

MAC資料測試程式載點

如下圖所示,讀者可以看到本次實驗,取得MAC資料測試程式結果畫面:

取得MAC資料測試程式結果畫面

取得MAC資料測試程式結果畫面

透過WIFI模組登連接無線基地台

整合上述程式,我們可以輕易取得MAC資料,而下一步就要教導讀者如何連到無線基地台(Access Point);首先,打開Ameba開發板的開發工具:「Sketch IDE整合開發軟體」,撰寫一段程式,就可以透過Ameba Wifi模組連到無線基地台(Access Point),連接無線基地台測試程式如下表所示:
連接無線基地台測試程式載點

下圖為程式測試結果畫面,可以看見已經成功連上無線基地台(Access Point),並透過DHCP伺服器取得網路位址,顯示出閘道器、網路遮罩等資訊。

連接無線基地台測試程式結果畫面

連接無線基地台測試程式結果畫面

小結

本文主要介紹,使Ameba得以透過Wifi模組連接上網際網路,取得MAC資料、IP位址、閘道器,網路遮罩等資訊,相信讀者更能了解物聯網神器Ameba開發板如何連接網路,掌握IoT的核心技術。

曹建國

目前為自由作家,已有二十多年的開發資訊系統經驗,專長為於軟體工程、軟體開發與設計、物件導向程式設計、Arduino/Ameba/LinkIt ONE等開發版開發與應用、嵌入式系統開發,同時也喜歡商品攝影及人像攝影,並持續發表作品及相關專業著作。

原始碼網址:https://github.com/brucetsao/

上一篇: | 下一篇:

我想回應

你的電子郵件位址並不會被公開。 必要欄位標記為 *

邀您加入《MakerPro》粉絲團:Maker&Startup開發社群的學習與知識平台