應用程式實作 應用程式實作 應用程式實作 應用程式實作
5.4 實作成果 實作成果 實作成果 實作成果
connectsock.c︰網路連線 socket 實作
connectTCP.c︰網路 TCP 連線介面
connectUDP.c︰網路 UDP 連線介面
passivesock.c︰網路服務 socket 實作
passiveTCP.c︰網路 TCP 服務介面
passiveUDP.c︰網路 UDP 服務介面
二 二 二
二、、、、 使用者介面介紹使用者介面介紹使用者介面介紹使用者介面介紹︰︰︰ ︰
圖 26 登入介面
1. INPUT─感應 GR_EVENT_ TYPE _KEY_DOWN,用來接收鍵盤或軟鍵盤輸 入
2. LOGIN─讀取 Account 跟 Password,之後連上 server 進行登入動作
3. Add account─讀取 Account 跟 Password,之後連上 server 進行創造帳號動作
圖 27 左為名單介面 右為各項告知訊息框 1. Exit─登出,回登入畫面
2. Online─顯示線上好友名單,點選名單可進行邀請線上語音交談 3. Offline─離線好友名單
4. PCM─調整聲音輸出音量 5. MIC─調整麥克風音量
6. Add Member─開啟增加好友名單訊息框(告知訊息框之二)
三三
三三、、、、 Target Board 上的運作上的運作上的運作︰上的運作︰︰ ︰
將建構的系統跟應用程式,放在 Target Board 的上,所需的 I/O,如聲音的收入\
輸出、網路,以及 Touch screen 都能正常運作。
圖 29 為在 Target Board 上 GUI 的 Client 端實際運作畫面。我們可以透過 Touch Screen 點取軟鍵盤輸入使用者帳號來登入或建立帳號。
圖 28 板子上運作情形-開機畫面
圖 29 板子上運作情形-登入畫面
圖 30 為登入後,自動顯示線上名單、能夠新增好友以及調整音效裝置之音量。
圖 30 板子上運作情形-線上名單
圖 31 板子上運作情形-新增好友名單
透過觀看線上名單,點選線上好友的帳號來開啟線上語音交談。圖 32 為被另一 方使用者邀請之畫面,顯示邀請之訊息以及能夠答覆邀請。
圖 32 板子上運作情形-被邀請
如圖 33 所示正式開啟線上交談後,顯示訊息並提供停止線上交談之功能。
圖 33 板子上運作情形-線上交談中
如果想要聊天的好友不在線上,可經由點選離線名單留言給對方,如圖 34。
圖 34 板子上運作情形-留言
四四
四四、、、、 NAT & Private IP 問題方面問題方面問題方面問題方面︰︰︰︰
為了證明先前所說的解決 NAT & Private IP 問題的小技巧能夠運作,使用我們實 作的應用軟體進行測試,結果如下表所示。
表 10 在 NAT 機制下的測試
User A User B 聲音傳輸 狀況 1 Private IP Public IP Work 狀況 2 Private IP Private IP Work User A︰ 為學校宿網
User B︰ 使用一般 ISP 的網路,Private IP 方面則是使用 VMware 來模擬
這兩種狀況幾乎可以代表一般 NAT 機制運作下的情況,測試結果都能夠傳輸,
所以驗證先前所提的方法是可行的。
在此章節中將提到專題實作中,實際上遇到的觀念與技術上的問題,以及針對問 題的解決方案。接著討論對未來想要更深入探討的議題,包含對未來發展方向展 望、及在嵌入式領域一些重要的主題,如 RISC 和 CISC 的探討,程式設計及電 源管理等重要的方向作基本的討論。
Target Board 上的 touch screen 為 ADS7843, Microwindows 本身並未支援 此 drivers,所以我們採取土法煉鋼的方式,用 Microwindows 支援且最相近 的 drivers 來嘗試看看。
ADS driver﹕
如圖 35 所示首先採用 ADS driver,在點取 touch screen 後,顯示一堆錯 誤訊息而 touch screen 無法使用,也就是說此 ADS driver 並不相似於 ADS7843 的 driver 。