新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > Windows CE通訊模式

Windows CE通訊模式

——
作者: 時(shí)間:2007-02-28 來源:/www.21tx.com 收藏
這篇白皮書概述了微軟的Windows CE操作系統(tǒng)的通訊能力。因?yàn)椴煌膽?yīng)用程序和設(shè)備在通訊方面的要求不同,所以Windows CE提供了支持廣泛的硬件和通訊技術(shù)。對于用電纜、調(diào)制解調(diào)器或者紅外傳輸介質(zhì)連接的設(shè)備之間的通訊提供了串行通訊支持。Windows CE網(wǎng)絡(luò)通訊支持的選擇范圍從通過串行口與SLIP或PPP連在一起的網(wǎng)絡(luò)到局域網(wǎng)(LAN)和用TCP/IP協(xié)議的無線網(wǎng)絡(luò)。

  對Windows CE通訊的瀏覽

  通訊能力是基于Windows CE設(shè)備的一個(gè)關(guān)鍵性特征。實(shí)際上,所有的這些設(shè)備都將至少有內(nèi)置的通訊硬件,例如一個(gè)串行電纜或者紅外(IR)傳送器。PC卡或者緊湊的映射卡(Compact Flash Card)支持容許廣泛的各種各樣的市場上的附加的通訊設(shè)備被加在一個(gè)基本的單元之中。這樣,Windows CE就能夠采用各種各樣的通訊形式,從通過電纜傳送的串行通訊到采用TCP/IP協(xié)議的無線網(wǎng)絡(luò)。

  Windows CE支持兩種基本的通訊,在許多情況下,他們使用相同的硬件。不同點(diǎn)在于數(shù)據(jù)包不同,當(dāng)在發(fā)送器和接受器之間有一個(gè)一對一連接時(shí),你就可以采用串行通訊。數(shù)據(jù)簡單地從一個(gè)設(shè)備流到另一個(gè)設(shè)備。網(wǎng)絡(luò)通訊允許你給定一個(gè)目標(biāo)地址,以傳送到多臺設(shè)備中的一臺。它也提供了高度的可靠性以防止數(shù)據(jù)丟失。
Windows CE能支持三種類型的通訊: 串行通訊能夠通過下列設(shè)備傳送:

  串行電纜;

  紅外傳送器,無論有沒有使用IrDA協(xié)議,
  串行通訊和快速IR都被支持。
  調(diào)制解調(diào)器
  網(wǎng)絡(luò)通訊能夠通過幾乎任何類型的硬件通訊設(shè)備進(jìn)行通訊。Windows CE網(wǎng)絡(luò)支持:

  ICMP請求或連接;

  基于HTTP和FTP協(xié)議的Internet通訊;
  網(wǎng)絡(luò)文件和打印機(jī)訪問;
  Windows Sockets,包括用于紅外通訊的IrSock擴(kuò)展和用于通訊安全的secure sockets擴(kuò)展;
  用于無線網(wǎng)絡(luò)的TCP/IP協(xié)議;
  用于紅外通訊的IrDA協(xié)議;
  用于局域網(wǎng)和IrDA的網(wǎng)絡(luò)的IDIS4.0
  用于帶有串行電纜或者調(diào)制解調(diào)器連接的網(wǎng)絡(luò)的PPP協(xié)議和SLIP協(xié)議;
  遠(yuǎn)程訪問服務(wù)器(RAS)客戶支持。
  Windows CE也提供支持管理通過TAPI(telephoy API)連接的調(diào)制解調(diào)器。TAPI處理的任務(wù)有:電話撥號、建立連接和終止呼叫。

  下面扼要地表示了通訊模式:

  串行通訊

  串行通訊實(shí)際上將被所有的Windows CE設(shè)備所支持,在硬件水平上,通過電纜和紅外傳送器進(jìn)行串行通訊是很普通的。調(diào)制解調(diào)器也支持串行通訊。

  每一個(gè)串行設(shè)備都匹配有一個(gè)COM口,例如“COM1”。Windows CE為打開串口和管理接收設(shè)備上的連接提供了一個(gè)API。一旦連接成功,將用相同的函數(shù)進(jìn)行數(shù)據(jù)傳送,這些函數(shù)用以讀一個(gè)文件或者寫一個(gè)文件。數(shù)據(jù)只是簡單的從一個(gè)設(shè)備傳送到另一個(gè)設(shè)備。不支持同步和異步I/O。

  有些設(shè)備可能允許紅外傳送器用以串行通訊。這種傳送將是“原始的”,即沒有進(jìn)行沖突檢測。用以原始串行紅外傳送的程序?qū)嶋H上和那些用以電纜傳送的程序是完全相同的。

  利用IrDA協(xié)議,通過IRsock(網(wǎng)絡(luò)堆的一部分,將在后面進(jìn)行訴論)可以得到更加強(qiáng)健的串行紅外通訊。作為一種直接采用Irsock的替換,IrComn模仿串行通訊但是內(nèi)部采用IRSock和IrDA協(xié)議。用于IrComn的程序和那些用于串行電纜和“原始”IR的程序?qū)嶋H上是完全相同的。

  網(wǎng)絡(luò)通訊

  Windows CE支持網(wǎng)絡(luò)通訊所用的各種硬件設(shè)備包括:

  串行電纜;
  紅外傳送器;
  廣播傳送器;
  局域網(wǎng)絡(luò);
  調(diào)制解調(diào)器。

  Windows CE也提供了幾個(gè)API以簡化在一個(gè)應(yīng)用程序中包含網(wǎng)絡(luò)通過的過程。

  Internet瀏覽以及訪問遠(yuǎn)程文件和打印機(jī)

  Windows CE提供了兩種高水平的API,這兩種API簡化了網(wǎng)絡(luò)通訊中的一些更普通的應(yīng)用。

  WinInet API支持HTTP 1.0和FTP Internet瀏覽協(xié)議。它大大地簡化了編寫一個(gè)Internet客戶應(yīng)用程序的過程。但是不支持*。WinInet也支持安全通訊。有三種安全協(xié)議:Secure Sockets層(SSL)2.0版和3.0版,以及私有通訊技術(shù)(PCT)1.0版。

  Wnet API提供了訪問普通Internet文件系統(tǒng)(IFS)和改更遠(yuǎn)程訪問打印機(jī)和文件的地址?,F(xiàn)在僅支持Windows 95和Windows NT操作系統(tǒng)的連接。地址更換支持全球名字轉(zhuǎn)稱(UNC),這里的名稱(例如\SeverXXShareXX)不包括驅(qū)動(dòng)器字符。

  WinSock和IRSock

  所有的網(wǎng)絡(luò)通訊都通過Windows Sockets接口,一般稱作Winsock、WinInef和Wnet在內(nèi)部應(yīng)用Winsock,并能夠減輕為了清晰地建立和管理Socket連接所需要的應(yīng)用程序。你也可以直接使用Winsock。

  Windows CE支持標(biāo)準(zhǔn)的WinSock 1.1版的函數(shù),但是不支持異步的WinSock函數(shù)。然而,可以通過微軟基礎(chǔ)類(MFC)的CleSocket類獲得支持異步消息。一個(gè)WSAIoctl的執(zhí)行是用來支持安全服務(wù)提供者。Windows CE支持安全Sockets層的2.0版和1.0版,以及PCT1.0版的安全協(xié)議。

  IrSock是WinSock的一個(gè)擴(kuò)展,它能應(yīng)用IrDA協(xié)議加強(qiáng)基于Socket的紅外通訊。盡管IrSock這個(gè)應(yīng)用工具和傳統(tǒng)的WinSock在幾個(gè)函數(shù)的用法上有一些不同,但是在許多方面它們都是相同的。

  對遠(yuǎn)程訪問客戶的支持

  Windows CE支持遠(yuǎn)程訪問服務(wù)器(RAS)的客戶,RAS是一個(gè)用于連接遠(yuǎn)程設(shè)備的多協(xié)議規(guī)則。Windows CE RAS客戶支持實(shí)際上和標(biāo)準(zhǔn)的Windows工具是完全相同的,但是一次只支持一個(gè)點(diǎn)對點(diǎn)的連接。

  TCP/IP和IrDA

  TCP/IP協(xié)議簇是為Internet而開發(fā)的,也是一個(gè)最靈活的、應(yīng)用最廣泛的網(wǎng)絡(luò)協(xié)議,它被廣泛的各種系統(tǒng)所支持,并形成了Windows CE網(wǎng)絡(luò)棧的核心。當(dāng)你不能夠直接訪問TCP/IP協(xié)議棧時(shí),你可以通過修改它的一些參數(shù)來優(yōu)化它。

  常規(guī)的TCP/IP協(xié)議棧被設(shè)計(jì)成在有線網(wǎng)上具有高效功能的協(xié)議。他們可以正確地運(yùn)行在基于Windows CE的用在無線網(wǎng)絡(luò)上的機(jī)動(dòng)設(shè)備。Windows CE的TCP/IP棧被設(shè)計(jì)成參數(shù)可以重新設(shè)置的,這樣就能夠高效的支持無線網(wǎng)絡(luò)。這種參數(shù)的一個(gè)例子是:acknowledgement timeout。

  經(jīng)外數(shù)據(jù)聯(lián)合(IRDA)協(xié)議是一個(gè)廣泛用在紅外通訊上的標(biāo)準(zhǔn)。它比數(shù)據(jù)簡單地從源端傳送到接收器要可靠得多,Windows CE IRDA棧被調(diào)慶成支持NDIS4.0 SIRt FIR驅(qū)動(dòng)器。

  網(wǎng)絡(luò)的硬件設(shè)備

  當(dāng)兩個(gè)設(shè)備之間一對一的連接允許串行通訊時(shí),就要經(jīng)常用到網(wǎng)絡(luò)通訊技術(shù)。例如,許多基于Windows CE的設(shè)備將通過串行通訊連接(如調(diào)制解調(diào)器)連接到它們的網(wǎng)絡(luò)上。甚至可以用一根串行電纜來連接兩個(gè)設(shè)備,TCP/IP協(xié)議提供了內(nèi)置的可靠性,以防止丟失數(shù)據(jù)。

  為了支持串行連接網(wǎng)絡(luò),Windows CE支持廣泛應(yīng)用的串行線接口(SLIP)和點(diǎn)對點(diǎn)(PPP)協(xié)議。證實(shí)是通過口令證實(shí)協(xié)議(PAP),挑戰(zhàn)證實(shí)協(xié)議(CHAP)和微軟的CHAP來提供的。

  為了支持局域網(wǎng)和IrDA網(wǎng),Windows CE包含了一個(gè)NDIS4.0的招待程序?,F(xiàn)在,Windows CE僅支持以太網(wǎng)和IrDA小口驅(qū)動(dòng)器,現(xiàn)在不支持廣域網(wǎng)。

  管理電話連接

  用串行或者網(wǎng)絡(luò)API通過調(diào)制解調(diào)器連接都能進(jìn)行數(shù)據(jù)傳輸。然而,任何一個(gè)API都不能對諸如電話撥號這樣的任務(wù)提供任何幫助。為了簡化編寫和管理電話連接的過程,Windows CE包括了一個(gè)Telephoy API(TAPI),可以通過內(nèi)置式或PC卡式調(diào)制解調(diào)器來使用它。它包括了一個(gè)為基于調(diào)制解調(diào)器AT命令的聯(lián)合式調(diào)制解調(diào)器的服務(wù)提供者。對于其他類型的調(diào)制解調(diào)器,TAPI支持可安裝服務(wù)的供應(yīng)商。

  TAPI是一個(gè)設(shè)備的集合,它允許你利用廣泛的各種電報(bào)和通訊服務(wù)而不需要你有詳細(xì)的專門技術(shù)的知識。它處理各種任務(wù),諸如電話撥號、管理調(diào)制解調(diào)器連接和終止呼叫,它僅支持呼叫的外界。



評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉