基于802.11b與安卓手機操控機器魚(yú)的研究
2 安卓手機模塊
首先介紹一下安卓平臺和socket通信原理。
Android是以L(fǎng)inux為核心的開(kāi)放式手機操作平臺,系統架構和其它操作系統一樣,采用了分層的架構。從架構圖看,Android分為四個(gè)層,從高層到低層分別是應用程序層、應用程序框架層、系統運行庫層和Linux核心層。目前Android已經(jīng)允許開(kāi)發(fā)者使用多種編程語(yǔ)言來(lái)開(kāi)發(fā)Android應用程序,而不再是以前只能使用Java開(kāi)發(fā)Android應用程序的單一局而,因而受到眾多開(kāi)發(fā)者的歡迎,成為真正意義上的開(kāi)放式操作系統,被大多數的開(kāi)發(fā)者視為最有潛力的手機操作系統。
Socket簡(jiǎn)稱(chēng)套接字,用于實(shí)現網(wǎng)絡(luò )上客戶(hù)和服務(wù)器之間的連接,也就是說(shuō)網(wǎng)絡(luò )上兩個(gè)或兩個(gè)以上雙工方式通信的進(jìn)程之間總有一個(gè)連接,這個(gè)連接的端點(diǎn)稱(chēng)為套接字(見(jiàn)圖2)。套接字相當于由其名字連接起來(lái)的通信線(xiàn)路的端點(diǎn),這種連接不僅適用于本地進(jìn)程之間的通信,而且也適用于異地進(jìn)程之間的通信。用套接字連接的兩個(gè)進(jìn)程可雙向通信,且兩通信端點(diǎn)的工作方式是不同的,一端工作于服務(wù)方,另一端工作于客戶(hù)方。本文引用地址:http://dyxdggzs.com/article/170998.htm
手機模塊作為客戶(hù)端,主要完成人機信息的交換、控制命令的發(fā)出以及返回信息的接收。首先在安卓平臺的應用層編寫(xiě)上位機程序,創(chuàng )建操作界面,以實(shí)現人機信息的交換并把控制指令轉化為數據幀,然后Socket再把數據幀以數據流的形式傳送給傳輸層繼而傳送給網(wǎng)絡(luò )層和數據鏈路層,最后數據流傳送至物理層由手機Wi—Fi模塊發(fā)送出去,實(shí)現信息的發(fā)送。以下是socket通信的部分程序:
評論