在實際開發中,我開發的這款APP是用來鏈接溫控器,並對溫控器進行控制的。有圖爲證,哈哈。
markdown
上一篇文章【Android開發—智能家居系列】(一):智能家居原理 的文末總結中寫到:
手機APP控制智能溫控器就兩步:一是經過手機,讓WIFI模塊接入網絡,而是經過網絡,使用手機對模塊發送指令。在這篇文章中,咱們來介紹第一個步驟。網絡
AP:即無線接入點,是一個無線網絡的中心節點。一般使用的無線路由器就是一個AP,其它無線終端能夠經過AP相互鏈接。工具
STA:即無線站點,是一個無線網絡的終端。如筆記本電腦、PDA等。.net
48899端口:我所用的WIFI模塊(USR-WIFI232-S)的端口
49000端口:除去我用的WIFI(USR-WIFI232-S)模塊,其餘WIFI模塊的端口blog
廣播地址:X.X.X.255(如:255.255.255.255)
WIFI模塊默認IP:10.10.100.254
接入路由器以後,由路由器動態分配的IP。圖片
使用UDP廣播方式搜索wifi模塊ip
第一階段:
模塊工做在AP模式下時,會開啓一個用於接收「快速聯網協議命令」的UDP端口,端口號爲48999(出廠設置默認IP爲10.10.100.254)路由
過渡階段:開發
第二階段:
在STA模式下,咱們要找到此WIFI模塊,並對其發送開、關等操做指令。步驟同第一階段,可是返回的IP地址會不同。模塊做爲STA連接到路由中,覺得此時模塊的IP地址是由路由器分配的,不是肯定IP地址,因此手機沒法與模塊創建鏈接,故須要採用廣播搜索,獲取到模塊在STA模式下的地址。get
有了基本的思路,瞭解並熟悉整個鏈接和通訊過程,接下來就是比較簡單的和基礎的部分了,包括UDP通訊以及字符和十六進制之間的轉換等基本功了。整個開發過程當中,對以上內容的理解是一點一點來的,剛開始組長給我講一遍什麼都不明白,給了我一堆資料和工具也不知道怎麼用,可是開發着開發着就搞清楚了。開發過程當中還請教了WIFI模塊生產公司的工程師,解決了個人問題。遇到問題時,仍是要多想辦法,總會有解決的辦法,看你有沒有決心和信心要把它解決出來。