專利名稱:串口共享的方法和服務(wù)端的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通信技術(shù)領(lǐng)域,尤其涉及一種串口共享的方法和服務(wù)端。
背景技術(shù):
在PC(Personal Computer,個人計算機)上運行的客戶端程序與連接到該PC上的 串口設(shè)備進行通訊時,通常該串口設(shè)備在實現(xiàn)某種功能時被映射成一個串口,該客戶端程 序在打開所述串口后將會獨占該串口 ,導(dǎo)致其它的客戶端程序無法共享使用該串口 。
現(xiàn)有技術(shù)中,有些設(shè)備廠商通過提供驅(qū)動程序可以虛擬出多個相同功能的串口, PC客戶端程序可以直接使用虛擬出來的端口 。對于客戶端程序來說,使用該虛擬出來的端 口和使用一個真實的串口是一樣的。但是在該方法中,虛擬出來的端口數(shù)比較固定,能夠共 享使用同一串口的客戶端程序受到明確的限制。比如虛擬出了 2個端口,那么能夠共享使 用該串口的客戶端程序也只能有2個,其他的客戶端程序仍然無法共享使用該串口。
發(fā)明內(nèi)容
本發(fā)明的實施例提供一種串口共享的方法和服務(wù)端,使得共享同一串口的客戶端 程序的個數(shù)不受限制。 為達(dá)到上述目的,本發(fā)明的實施例采用如下技術(shù)方案 —種串口共享的方法,服務(wù)端獨占串口,直接與所述串口進行數(shù)據(jù)通信,該方法包 括 在所述串口打開時,依次緩存從至少兩個客戶端程序接收到的數(shù)據(jù);
將緩存的數(shù)據(jù)按照預(yù)定順序依次發(fā)送到同一所述串口 ;
接收所述串口返回的響應(yīng)數(shù)據(jù); 將所述響應(yīng)數(shù)據(jù)發(fā)送到響應(yīng)數(shù)據(jù)對應(yīng)的客戶端程序。
—種服務(wù)端,所述服務(wù)端獨占串口,直接與所述串口進行數(shù)據(jù)通信,包括 緩存單元,用于在所述串口打開時,依次緩存從至少兩個客戶端程序接收到的數(shù)
據(jù); 第一發(fā)送單元,將緩存的數(shù)據(jù)按照預(yù)定順序依次發(fā)送到同一所述串口 ;
接收單元,接收所述串口返回的響應(yīng)數(shù)據(jù); 第二發(fā)送單元,將所述響應(yīng)數(shù)據(jù)發(fā)送到響應(yīng)數(shù)據(jù)對應(yīng)的客戶端程序。
由上述技術(shù)方案所描述的本發(fā)明實施例,當(dāng)至少兩個客戶端程序請求發(fā)送數(shù)據(jù)給
同一串口時,依次緩存從客戶端程序接收到的數(shù)據(jù),然后將緩存的數(shù)據(jù)按照預(yù)定順序依次
發(fā)送到上述串口 。當(dāng)所述串口有響應(yīng)數(shù)據(jù)時,接收所述串口返回的響應(yīng)數(shù)據(jù),然后將所述響 應(yīng)數(shù)據(jù)發(fā)送到響應(yīng)數(shù)據(jù)對應(yīng)的客戶端程序。通過對客戶端程序發(fā)送的數(shù)據(jù)進行統(tǒng)一的緩存 和發(fā)送到同一個串口,可以實現(xiàn)每個客戶端程序同時發(fā)送數(shù)據(jù)給同一個串口,而通過對從 串口接收到的響應(yīng)數(shù)據(jù)進行統(tǒng)一的接收和發(fā)送到對應(yīng)的客戶端程序,可以實現(xiàn)每個客戶端 程序從同一串口接收數(shù)據(jù),從而解決了當(dāng)使用同一個串口的客戶端程序個數(shù)受限制時,其他客戶端程序無法共享使用同一串口問題,實現(xiàn)了當(dāng)使用同一個串口的客戶端程序個數(shù)不 受限制時,每個客戶端程序都可以共享使用同一 串口 。
為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn) 有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本 發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以 根據(jù)這些附圖獲得其他的附圖。
圖1為實施例1中串口共享的方法的流程圖;
圖2為實施例1中服務(wù)端的框圖;
圖3為實施例2中串口共享的方法的流程圖;
圖4為實施例2中服務(wù)端的框圖; 圖5為實施例2中通過服務(wù)端實現(xiàn)串口共享方法的示意圖。
具體實施例方式
下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完 整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;?本發(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他 實施例,都屬于本發(fā)明保護的范圍。
實施例1 : 本發(fā)明的實施例提供一種串口共享的方法,如圖1所示,通過服務(wù)端獨占串口 ,直 接與該串口進行數(shù)據(jù)通信來實現(xiàn)至少兩個客戶端程序共享使用同一個串口 ,該方法包括以 下步驟 101、在串口打開時,當(dāng)至少兩個客戶端程序請求發(fā)送數(shù)據(jù)時,依次緩存從至少兩
個客戶端程序接收到的數(shù)據(jù)。在發(fā)送到所述串口之前,對所述從每個客戶端程序接收到的
數(shù)據(jù)進行統(tǒng)一的緩存,實現(xiàn)在使用同一個串口的客戶端程序的個數(shù)不受限制時,仍然可以
接收每個客戶端程序發(fā)送的數(shù)據(jù),并確保每個客戶端程序發(fā)送的數(shù)據(jù)不被丟失。
102、將緩存的數(shù)據(jù)按照預(yù)定順序依次發(fā)送到同一所述串口 。通過統(tǒng)一發(fā)送從客戶
端程序接收到的數(shù)據(jù),可以解決在客戶端程序個數(shù)受限制時,一個或固定個數(shù)的客戶端程
序在發(fā)送數(shù)據(jù)到串口時獨占該串口的問題,從而使得每個客戶端程序都可以發(fā)送數(shù)據(jù)到同
一串口。 103、在所述串口有響應(yīng)數(shù)據(jù)時,接收所述串口返回的響應(yīng)數(shù)據(jù)。通過統(tǒng)一接收不 同客戶端程序的響應(yīng)數(shù)據(jù),可以解決在客戶端程序個數(shù)受限制時,其中一個或者固定個數(shù) 的客戶端程序在接收響應(yīng)數(shù)據(jù)時獨占串口的問題,實現(xiàn)接收每個客戶端程序的響應(yīng)數(shù)據(jù)。
104、將所述響應(yīng)數(shù)據(jù)發(fā)送到響應(yīng)數(shù)據(jù)對應(yīng)的客戶端程序,由于不同的響應(yīng)數(shù)據(jù)對
應(yīng)不同的客戶端程序,將響應(yīng)數(shù)據(jù)發(fā)送到對應(yīng)的客戶端程序,確保了每個客戶端程序都能 接收到正確的響應(yīng)數(shù)據(jù)。 在實現(xiàn)上述方法的同時,本發(fā)明實施例還提供一種服務(wù)端,如圖2所示,該服務(wù)端 包括緩存單元21、第一發(fā)送單元22、接收單元23和第二發(fā)送單元24。
在串口打開時,當(dāng)至少兩個客戶端程序請求發(fā)送數(shù)據(jù)時,所述緩存單元21用于依 次緩存從至少兩個客戶端程序接收到的數(shù)據(jù),在客戶端程序個數(shù)不同時,確保每個客戶端 程序發(fā)送的數(shù)據(jù)不被丟失。然后所述第一發(fā)送單元22用于將緩存的數(shù)據(jù)按照預(yù)定順序依 次發(fā)送到同一所述串口,使得每個客戶端程序發(fā)送的數(shù)據(jù)在緩存之后都能發(fā)送到同一個串 口 。當(dāng)所述串口有響應(yīng)數(shù)據(jù)時,接收單元23用于接收所述串口返回的響應(yīng)數(shù)據(jù),對于每個 響應(yīng)數(shù)據(jù)都會通過接收單元23進行統(tǒng)一的接收,然后第二發(fā)送單元24用于將所述響應(yīng)數(shù) 據(jù)發(fā)送到響應(yīng)數(shù)據(jù)對應(yīng)的客戶端程序,從而確保了每個客戶端程序都能接受到正確的響應(yīng) 數(shù)據(jù)。 所述服務(wù)端通過對客戶端程序發(fā)送的數(shù)據(jù)和從串口接收到的數(shù)據(jù)進行統(tǒng)一的管 理和發(fā)送,在使用同一個串口的客戶端程序個數(shù)不受限制時,實現(xiàn)每個客戶端都能夠發(fā)送 數(shù)據(jù)到同一個串口 ,并且能夠從同一個串口接收數(shù)據(jù),從而實現(xiàn)每個客戶端程序共享使用 同一個串口。
實施例2 : 本發(fā)明實施例中,以數(shù)據(jù)卡為例來詳細(xì)介紹串口共享的方法。假設(shè)應(yīng)用場景為多 個客戶端程序同時使用同一個數(shù)據(jù)卡,所述數(shù)據(jù)卡在連接到PC上時被映射為一個串口,客 戶端程序A實現(xiàn)短信業(yè)務(wù),客戶端程序B實現(xiàn)呼叫業(yè)務(wù),客戶端程序C表示每次新增加的客 戶端程序,實現(xiàn)其他不同的業(yè)務(wù)。所述客戶端程序C個數(shù)不受限制。如圖3所示,該方法包 括以下步驟 301、客戶端程序A或客戶端程序B與串口進行數(shù)據(jù)通信之前,建立所述客戶端程 序A或客戶端程序B與服務(wù)端的數(shù)據(jù)連接。當(dāng)每次新增加一個客戶端程序C共享使用上述 串口時,所述新增加的客戶端程序C都要與服務(wù)端建立數(shù)據(jù)連接。 302、當(dāng)客戶端程序A或客戶端程序B有打開串口請求時,判斷串口是否打開。當(dāng) 每次新增加的客戶端程序C有打開串口請求時,也要判斷串口是否打開。
303、當(dāng)所述串口關(guān)閉時,則打開該串口。所述打開串口可以采用下述方式實現(xiàn)當(dāng) 服務(wù)端接收到客戶端程序A打開串口請求時,由于客戶端程序A是第一個請求打開串口的 客戶端程序,則服務(wù)端打開所述串口 ,并記錄客戶端程序A有請求過打開串口的操作。當(dāng)客 戶端程序B也請求打開串口時,此時服務(wù)器端已經(jīng)打開了該串口,則只記錄所述客戶端程 序B的打開串口請求。當(dāng)其他新增加的客戶端程序C在請求打開串口時,如果串口已經(jīng)打 開,則只記錄所述新增加的客戶端程序C的打開串口請求。 304、打開串口之后,當(dāng)客戶端程序A請求發(fā)送數(shù)據(jù)時,插入從客戶端程序A接收到 的數(shù)據(jù)到隊列的隊尾。當(dāng)客戶端程序B和其它新增加的客戶端程序C同時發(fā)送數(shù)據(jù)時,按 照客戶端程序發(fā)送數(shù)據(jù)的先后,依次插入從客戶端程序B和其它新增加的客戶端程序C接 收到的數(shù)據(jù)到隊列的隊尾。按照客戶端程序發(fā)送數(shù)據(jù)的先后依次,依次插入從每個客戶端 程序接收到的數(shù)據(jù)到隊列的隊尾,從而確保在先請求發(fā)送數(shù)據(jù)的客戶端程序所發(fā)送的數(shù)據(jù) 位于隊頭,在后請求發(fā)送數(shù)據(jù)的客戶端程序所發(fā)送的數(shù)據(jù)位于隊尾。 305、將所述隊列中的數(shù)據(jù)按照從隊頭到隊尾的順序依次發(fā)送到同一所述串口 。按 照從隊頭到隊尾的順序可以確保在先請求發(fā)送數(shù)據(jù)的客戶端程序能夠優(yōu)先發(fā)送數(shù)據(jù)到同 一個串口。依次發(fā)送所述隊列中的數(shù)據(jù)直到該隊列中所有的數(shù)據(jù)下發(fā)完成為止,從而使得 從每個客戶端程序接收到的數(shù)據(jù)都被發(fā)送到同一個串口 。
306、在依次發(fā)送所述隊列中的數(shù)據(jù)之后,刪除所述隊列中的數(shù)據(jù)。實時釋放數(shù)據(jù) 緩存時占用的存儲空間,為其他數(shù)據(jù)的接受提供存儲空間??梢栽谠撽犃兄兴械臄?shù)據(jù)下 發(fā)完成之后刪除所述隊列中的所有數(shù)據(jù),也可以在發(fā)送該隊列中一個數(shù)據(jù)之后,從所述隊 列中刪除該數(shù)據(jù)。 307、當(dāng)所述串口有響應(yīng)數(shù)據(jù)時,接收所述串口返回的響應(yīng)數(shù)據(jù)。不同的響應(yīng)數(shù)據(jù)
對應(yīng)與不同的客戶端程序。如當(dāng)用戶通過數(shù)據(jù)卡發(fā)送短信成功后,所述數(shù)據(jù)卡將返回表示
發(fā)送短信成功的響應(yīng)數(shù)據(jù),則該響應(yīng)數(shù)據(jù)對應(yīng)客戶端程序A;當(dāng)用戶通過數(shù)據(jù)卡呼叫遇忙
時,所述數(shù)據(jù)卡將返回表示呼叫遇忙的響應(yīng)數(shù)據(jù),則該響應(yīng)數(shù)據(jù)對應(yīng)客戶端程序B。 308、接收響應(yīng)數(shù)據(jù)之后,將所述響應(yīng)數(shù)據(jù)發(fā)送到響應(yīng)數(shù)據(jù)對應(yīng)的客戶端程序。如
將表示發(fā)送短信成功的響應(yīng)數(shù)據(jù)發(fā)送到客戶端程序A;當(dāng)客戶端程序收到該響應(yīng)數(shù)據(jù)時就
知道短信已經(jīng)發(fā)送成功;將表示實現(xiàn)新增加業(yè)務(wù)的響應(yīng)數(shù)據(jù)發(fā)送到客戶端程序C。而將表
示呼叫遇忙的響應(yīng)數(shù)據(jù)發(fā)送到客戶端程序B,當(dāng)客戶端程序收到該響應(yīng)數(shù)據(jù)時就知道呼叫
遇忙,暫時呼叫連接不通,可以稍等再重新發(fā)起呼叫。 本發(fā)明實施例還提供一種服務(wù)端,所述服務(wù)端可以為一個獨立的應(yīng)用程序。如圖 4所示,該服務(wù)端包括判斷單元41、打開單元42、緩存單元43、第一發(fā)送單元44、刪除單元 45、接收單元46和第二發(fā)送單元47。 由于可以同時使用同一個串口的客戶端程序個數(shù)是不受限制的,至少存在兩個客 戶端程序,本實施例中用客戶端程序A、客戶端程序B和其它新增加的客戶端程序C來表示 使用同一個所述串口的客戶端程序。當(dāng)客戶端程序有打開串口請求時,判斷單元41用于判 斷串口是否打開。所述串口的初始狀態(tài)是關(guān)閉的,當(dāng)使用同一個所述串口的第一個客戶端 程序A判斷到所述串口關(guān)閉時,則打開單元42用于打開該串口 。當(dāng)使用同一個串口的其它 客戶端程序在判斷到所述串口為打開狀態(tài)時,則不用再次打開該串口 。
打開串口之后,當(dāng)客戶端程序A、客戶端程序B和其它新增加的客戶端程序C請求 發(fā)送數(shù)據(jù)時,緩存單元43用于依次插入從客戶端程序A、客戶端程序B和其它新增加的客戶 端程序C接收到的數(shù)據(jù)到隊列的隊尾,可以確保在先請求發(fā)送數(shù)據(jù)的客戶端程序所發(fā)送的 數(shù)據(jù)位于隊頭,在后請求發(fā)送數(shù)據(jù)的客戶端程序所發(fā)送的數(shù)據(jù)位于隊尾。然后,第一發(fā)送單 元44用于將所述隊列中的數(shù)據(jù)按照從隊頭到隊尾的順序依次發(fā)送到同一所述串口 。依次 發(fā)送緩存單元43插入到所述隊列中的數(shù)據(jù)直到該隊列中所有的數(shù)據(jù)下發(fā)完成為止,從而 使得從每個客戶端程序接收到的數(shù)據(jù)都被發(fā)送到同一個串口 。 在依次發(fā)送所述隊列中的數(shù)據(jù)之后,刪除單元45用于刪除隊列中的數(shù)據(jù)。將已經(jīng) 發(fā)送的數(shù)據(jù)進行刪除,可以實時釋放數(shù)據(jù)緩存時占用的存儲空間,為其他數(shù)據(jù)的接受提供 存儲空間。 當(dāng)串口有響應(yīng)數(shù)據(jù)時,接收單元46用于接收所述串口返回的響應(yīng)數(shù)據(jù)。不同的響 應(yīng)數(shù)據(jù)對應(yīng)與不同的客戶端程序。然后,第二發(fā)送單元47用于將所述響應(yīng)數(shù)據(jù)發(fā)送到響應(yīng) 數(shù)據(jù)對應(yīng)的客戶端程序。從而實現(xiàn)了每個客戶端程序都可以從同一個串口接收數(shù)據(jù)。
所述服務(wù)端在實現(xiàn)串口共享時,獨占該串口,直接與該串口進行數(shù)據(jù)通信,統(tǒng)一管 理至少兩個客戶端程序和同一串口之間的數(shù)據(jù)通信。如圖5所示,所述每個客戶端程序52 都集成有客戶端應(yīng)用程序接口,所述客戶端應(yīng)用程序接口 51用于封裝與服務(wù)端交互協(xié)議 的一種提供給客戶端使用的接口。所述服務(wù)端53通過對客戶端程序52發(fā)送的數(shù)據(jù)和從串口接收到的數(shù)據(jù)進行統(tǒng)一的管理和發(fā)送,在使用同一個串口的客戶端程序個數(shù)不受限制 時,實現(xiàn)每個客戶端52都能夠發(fā)送數(shù)據(jù)到同一個串口 ,并且能夠從同一個串口接收數(shù)據(jù), 從而實現(xiàn)每個客戶端程序共享使用同一個串口 。 以數(shù)據(jù)卡為例,所述服務(wù)端,客戶端應(yīng)用程序接口和客戶端程序可以通過下述方 式獲得設(shè)備提供商為數(shù)據(jù)卡發(fā)布配套的PC應(yīng)用軟件,該PC應(yīng)用軟件包含客戶端程序和服 務(wù)端,并且同時配套發(fā)布客戶端應(yīng)用程序接口。第三方公司可以基于該客戶端應(yīng)用程序接 口開發(fā)其它不同的客戶端程序。用戶通過第三方公司開發(fā)的客戶端程序和數(shù)據(jù)卡配套的PC 應(yīng)用軟件同時使用同一個數(shù)據(jù)卡。不僅可以在使用同一個串口的客戶端程序個數(shù)不受限制 時,實現(xiàn)每個客戶端程序共享使用同一個串口 ,而且通過第三方公司基于設(shè)備提供商發(fā)布 的客戶端應(yīng)用程序接口開發(fā)不同的客戶端程序,從而也擴展了設(shè)備提供的業(yè)務(wù),方便了用 戶使用同一個串口設(shè)備辦理多項不同的業(yè)務(wù)。 本發(fā)明實施例可以應(yīng)用于通信技術(shù)領(lǐng)域,實現(xiàn)了當(dāng)使用同一個串口的客戶端程序 個數(shù)不受限制時,每個客戶端程序都可以共享使用同一串口 。 通過以上的實施方式的描述,所屬領(lǐng)域的技術(shù)人員可以清楚地了解到本發(fā)明可借 助軟件加必需的通用硬件的方式來實現(xiàn),當(dāng)然也可以通過硬件,但很多情況下前者是更佳 的實施方式?;谶@樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說對現(xiàn)有技術(shù)做出貢獻的部 分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計算機軟件產(chǎn)品存儲在可讀取的存儲介質(zhì)中,如計 算機的軟盤,硬盤或光盤等,包括若干指令用以使得一臺計算機設(shè)備(可以是個人計算機, 服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個實施例所述的方法。 以上所述,僅為本發(fā)明的具體實施方式
,但本發(fā)明的保護范圍并不局限于此,任何 熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到變化或替換,都應(yīng)涵 蓋在本發(fā)明的保護范圍之內(nèi)。因此,本發(fā)明的保護范圍應(yīng)所述以權(quán)利要求的保護范圍為準(zhǔn)。
權(quán)利要求
一種串口共享的方法,其特征在于,服務(wù)端獨占串口,直接與所述串口進行數(shù)據(jù)通信,該方法包括在所述串口打開時,依次緩存從至少兩個客戶端程序接收到的數(shù)據(jù);將緩存的數(shù)據(jù)按照預(yù)定順序依次發(fā)送到同一所述串口;接收所述串口返回的響應(yīng)數(shù)據(jù);將所述響應(yīng)數(shù)據(jù)發(fā)送到響應(yīng)數(shù)據(jù)對應(yīng)的客戶端程序。
2. 根據(jù)權(quán)利要求l所述的串口共享的方法,其特征在于,在所述串口打開時,依次緩存 從至少兩個客戶端程序接收到的數(shù)據(jù)之前,還包括當(dāng)客戶端程序有打開串口請求時,判斷所述串口是否打開; 當(dāng)判斷到所述串口關(guān)閉時,則打開所述串口。
3. 根據(jù)權(quán)利要求1所述的串口共享的方法,其特征在于,當(dāng)采用隊列結(jié)構(gòu)緩存數(shù)據(jù)時, 所述依次緩存從至少兩個客戶端程序接收到的數(shù)據(jù)為依次插入從至少兩個客戶端程序接 收到的數(shù)據(jù)到隊列的隊尾;所述將緩存的數(shù)據(jù)依次發(fā)送到同一所述串口為將所述隊列中的數(shù)據(jù)按照從隊頭到隊 尾的順序依次發(fā)送到同一所述串口 。
4. 根據(jù)權(quán)利要求3所述的串口共享的方法,其特征在于,將所述隊列中的數(shù)據(jù)按照從 隊頭到隊尾的順序依次發(fā)送到同一所述串口之后,還包括刪除所述隊列中的數(shù)據(jù)。
5. —種服務(wù)端,其特征在于,所述服務(wù)端獨占串口 ,直接與所述串口進行數(shù)據(jù)通信,包括緩存單元,用于在所述串口打開時,依次緩存從至少兩個客戶端程序接收到的數(shù)據(jù); 第一發(fā)送單元,將緩存的數(shù)據(jù)按照預(yù)定順序依次發(fā)送到同一所述串口 ; 接收單元,接收所述串口返回的響應(yīng)數(shù)據(jù);第二發(fā)送單元,將所述響應(yīng)數(shù)據(jù)發(fā)送到響應(yīng)數(shù)據(jù)對應(yīng)的客戶端程序。
6. 根據(jù)權(quán)利要求5所述的服務(wù)端,其特征在于,所述每個客戶端程序都集成有客戶端 應(yīng)用程序接口;所述客戶端應(yīng)用程序接口 ,用于封裝與服務(wù)端交互協(xié)議的一種提供給客戶端使用的接□。
7. 根據(jù)權(quán)利要求5所述的服務(wù)端,其特征在于,還包括判斷單元,用于當(dāng)客戶端程序有打開串口請求時,判斷所述串口是否打開; 打開單元,用于當(dāng)判斷到所述串口關(guān)閉時,則打開所述串口。
8. 根據(jù)權(quán)利要求5所述的服務(wù)端,其特征在于,所述緩存單元用于當(dāng)所述服務(wù)端采用 隊列結(jié)構(gòu)緩存數(shù)據(jù)時,依次插入從至少兩個客戶端程序接收到的數(shù)據(jù)到隊列的隊尾;所述第一發(fā)送單元用于將所述隊列中的數(shù)據(jù)按照從隊頭到隊尾的順序依次發(fā)送到同 一所述串口。
9. 根據(jù)權(quán)利要求5所述的服務(wù)端,其特征在于,所述服務(wù)端還包括刪除單元,用于在所述發(fā)送單元將所述隊列中的數(shù)據(jù)按照從隊頭到隊尾的順序依次發(fā) 送到同一所述串口之后,刪除所述隊列中的數(shù)據(jù)。
全文摘要
本發(fā)明公開一種串口共享的方法和服務(wù)端,涉及通信技術(shù)領(lǐng)域,解決了當(dāng)使用同一個串口的客戶端程序個數(shù)受限制時,其他客戶端程序無法共享使用同一串口問題。本發(fā)明實施例中的服務(wù)端獨占串口,直接與所述串口進行數(shù)據(jù)通信,該方法包括在所述串口打開時,依次緩存從至少兩個客戶端程序接收到的數(shù)據(jù);將緩存的數(shù)據(jù)按照預(yù)定順序依次發(fā)送到同一所述串口;接收所述串口返回的響應(yīng)數(shù)據(jù);將所述響應(yīng)數(shù)據(jù)發(fā)送到響應(yīng)數(shù)據(jù)對應(yīng)的客戶端程序。該方法主要應(yīng)用于通信技術(shù)領(lǐng)域。
文檔編號G06F13/38GK101699421SQ200910208509
公開日2010年4月28日 申請日期2009年10月28日 優(yōu)先權(quán)日2009年10月28日
發(fā)明者洪太亮 申請人:深圳華為通信技術(shù)有限公司