国产激情久久久久影院小草_国产91高跟丝袜_99精品视频99_三级真人片在线观看

異步串行接口與以太網(wǎng)服務(wù)器的連接

時間:2024-10-22 01:43:03 理工畢業(yè)論文 我要投稿
  • 相關(guān)推薦

異步串行接口與以太網(wǎng)服務(wù)器的連接

摘要:提供一種簡便、經(jīng)濟的方法,通過TINI平臺實現(xiàn)串行接口設(shè)備與以太網(wǎng)的連接。一旦設(shè)備連接到以太網(wǎng),就能提供TINI Web服務(wù)。

很多電子設(shè)備利用串行接口與其它設(shè)備進行通信,其中有溫度調(diào)節(jié)器、POS機、遠程監(jiān)控儀、條碼掃描儀、票據(jù)打印機、射頻標簽收發(fā)器、血壓計及其它現(xiàn)場使用的測試設(shè)備和新型自動化設(shè)備。大多數(shù)設(shè)備與外部的通信是通過串口進行的,不能直接連接到大型計算機網(wǎng)絡(luò),無法滿足TCP/IP連接和以太網(wǎng)通信的需求。由于成本和時間問題,很少有人選擇對系統(tǒng)進行重新設(shè)備的途徑。利用本文介紹的基于DS80C390或DS80C400微控制器的TINI平臺,可以將孤立的串行設(shè)備連接到以太網(wǎng)。

1 TINI和網(wǎng)絡(luò)

TINI(微網(wǎng)接口)是Dallas Semiconductor開發(fā)的一種技術(shù)平臺,目的是協(xié)助用戶快速整合DS80C390/DS80C400網(wǎng)絡(luò)微控制器的研發(fā),TINI定義了一個芯片組,包含一個嵌入式操作系統(tǒng),其中整合了經(jīng)過高度優(yōu)化的Java運行環(huán)境。Java編程者可從其中獲得一般的嵌入式開發(fā)中不多見的強大功能:多線程、無和單元收集、繼承性、虛擬化、跨平臺能力 、強大的網(wǎng)絡(luò)支持,以及—最后但很重要—大量免費的開發(fā)工具。TINI使用乾通常不直接面對匯編代碼。不過,為了優(yōu)化嚴格要求速度的通道或者訪問底層硬件,同時也支持并鼓勵本地語言子程序(TINI操作系統(tǒng)用本地代碼寫成,因此,串行I/O的吞吐率和現(xiàn)代PC沒有明顯差異)。除完全支持java.net包外,TINI Java運行環(huán)境還包含一個完整實現(xiàn)的javax.com子系統(tǒng)。通過Java可毫不費力地訪問TCP/IP和串行口,因此,TINI系統(tǒng)可非常容易地用來實現(xiàn)串行口-以太網(wǎng)橋。

下面的例子中,TINIm390驗證模塊(放置在E10插槽)是DS80C390 TINI開發(fā)平臺的硬件部分(TINIm400是配合DS80C400制作的)。除了SRAM、Flash、以太網(wǎng)、CAN總線、1-Wire等,系統(tǒng)還有四個串口,其中DS80C390內(nèi)部包括兩個UART,另外兩個是擴充的(采用一片16550選配件)。需要注意的是,E10插座上的兩個串行連接器都被接到了serial0,它們只是在DTE/DCE引腳安排上有所差異。詳細資料請參閱《TINI特性和開發(fā)指南》,PDF文件可以從http:///TINI/book.html下載。

2 范例

下面介紹兩具具體應(yīng)用,并從一個普通的串行口-以太網(wǎng)程序中摘錄片段出來。經(jīng)過修改,它幾乎可適應(yīng)于各種應(yīng)用。這些范例利用TINIm390/400驗證模塊搭建而成,如圖1所示。

可以把TINI驗證模塊看成“黑盒子”,將多個串行設(shè)備掛接到以太網(wǎng)。根據(jù)最終設(shè)備的需要,TINI可以讓數(shù)據(jù)流直通,也以對數(shù)據(jù)進行解析、翻譯或修改。盡管設(shè)計人員可以在TINIm390/400的開發(fā)器外殼上運行這些范例,但更合理的做法將其駐留于內(nèi)存之中,掉電之后還能夠自啟動,并利用其它一些TINI構(gòu)造技術(shù)使最終產(chǎn)品更加牢靠。如果想修改這些范例,需要具備一些基本的網(wǎng)絡(luò)知識和編程經(jīng)驗。樣例工作代碼也可以Dallas公司ftp站點(ftp://dalsemi.com)下載。

(1)虛擬調(diào)制解調(diào)器

虛擬調(diào)制解調(diào)器(Modem)利用TINIm390/400和TCP/IP連接,替代特殊調(diào)制器和電話線。假定有一個舊設(shè)備,比如某工廠的“機器狀態(tài)監(jiān)視器”,它利用一個調(diào)制解調(diào)器,一天之內(nèi)數(shù)次撥號到一個中央服務(wù)器,報告機器的狀態(tài)、負載和效率數(shù)據(jù)。為了削減服務(wù)器端日益增長的調(diào)制解調(diào)器庫,并利用現(xiàn)有的LAN取代連接到設(shè)備的電話線,我們可以重寫服務(wù)器軟件以支持TCP/IP,并且用TINI虛擬調(diào)制解調(diào)器取代每個機器上原有的調(diào)制解調(diào)器。這樣,機器狀態(tài)監(jiān)視器就不必再作任何修改,對于最終設(shè)備而言,虛擬調(diào)制解調(diào)器的使用和一個真正的調(diào)制解調(diào)器完全一樣。

除了上述配置,虛擬調(diào)制解調(diào)器當(dāng)然也可以成對使用。如果雙方都使用虛擬調(diào)制解調(diào)器,就無須對服務(wù)器軟件作任何改動,TINI模塊可直接替換現(xiàn)有的調(diào)制解調(diào)器。在此情況之下,虛擬調(diào)制解調(diào)器每次接到“AID”調(diào)制解調(diào)器撥號命令時,實際建立的是TCP連接!癆TH”斷開命令關(guān)閉TCP連接。軟件也實現(xiàn)一系列其它的經(jīng)典AT調(diào)制解調(diào)器命令,并被諸如Microsoft Windows之類的網(wǎng)絡(luò)系統(tǒng)認作真調(diào)制解調(diào)器,此外,虛擬調(diào)制解調(diào)器還可以偵聽TCP端口,當(dāng)收到“呼叫”信號時,向終端設(shè)備發(fā)出“振鈴”。

下面的代碼片段顯示了如何對TINIm390上的串行口進行初始化:

public static void man(String args[]){

TINIOS.setSerialBootMessagesState(false);

TINIOS.setDebugMessagesState(false);

TINIOS.setConsoleOutputEnabled(false);

System.out.println("Connecting to serial0 at 9600bps," "listening on TCP port 8001");

try{

CommPortIdentifier portId=CommPortIdentifier.getPortIdentifier("seria10");

SerialPort port=(SerialPort)=(SerialPort)portId.open("VmodemTINI",10000);

TINIOS.estRTSCTSFlowControlEnable(1,false);

TINIOS.setRTSCTSFlowControlEnable(0,true);

TCPSerialVirtualModem modem=new TCPSerial VirtualModem(port,/*Comm speed */9600,/*TCP Port */8001);

Modem.processIuput();

}

catch (Excepiton e){

【異步串行接口與以太網(wǎng)服務(wù)器的連接】相關(guān)文章:

異步串行通信接口的IP核設(shè)計03-18

TM1300 DSP系統(tǒng)以太網(wǎng)接口的設(shè)計03-18

COM服務(wù)器的偽異步技術(shù)及其實現(xiàn)03-18

串行DataFlash存儲器及其與單片機的接口03-18

ADμC812的串行外設(shè)接口(SPI)及其應(yīng)用03-18

基于串行外設(shè)接口(SPI)的CAN總線隔離擴展設(shè)計03-18

MSP430與液晶顯示器的串行接口方案03-18

一種用于單片機的紅外串行通信接口03-18

用Ax88796實現(xiàn)SA1110的以太網(wǎng)接口03-20