在工業(yè)現(xiàn)場(chǎng),有很多需要使用多個(gè)串口的場(chǎng)合,如通訊系統(tǒng)管理、電力設(shè)備管理和自動(dòng)化設(shè)備管理及通訊等等。這樣,很多客戶就提出了多串口開發(fā)平臺(tái)的需求,這些需求的主要特點(diǎn)概括如下:
(1) 串口數(shù)量多,從幾個(gè)到十多個(gè)(如5個(gè)到16個(gè)串口),可自由選擇
(2) RS232C/RS485/RS422/TTL等多種串口形式可自由選擇、配置
(3) 可以進(jìn)行以太網(wǎng)通訊并支持多種常用外部設(shè)備,如LCD、USB存儲(chǔ)等
(4) 方便整合安裝,特別適合裝入1U高度的19‘‘機(jī)箱中,上架運(yùn)行
(5) 方便二次開發(fā),各種接口、通訊函數(shù)完整可靠,用戶可靈活構(gòu)建應(yīng)用程序
(6) 成本低廉
綜合以上的客戶應(yīng)用需求,英創(chuàng)公司在英創(chuàng)嵌入式網(wǎng)絡(luò)模塊的基礎(chǔ)上進(jìn)行了應(yīng)用開發(fā),推出了完整的模塊化多串口設(shè)備軟硬件開發(fā)平臺(tái)。
系統(tǒng)構(gòu)成示意圖
這個(gè)平臺(tái)最主要的特點(diǎn)是模塊化,也就是客戶可以按照自己的需求像搭積木一樣來(lái)構(gòu)建自己的多串口設(shè)備的硬件系統(tǒng)。其具體組成是:
(1) 選擇ETR232i或NetBox-II嵌入式網(wǎng)絡(luò)模塊之一作為主控CPU板,主控CPU板安裝在ETA518-M多串口底板上。ETA518-M多串口底板擁有8個(gè)串口擴(kuò)展插座,這些串口擴(kuò)展插座可以安裝相應(yīng)的串口驅(qū)動(dòng)模塊。
串口服務(wù)器硬件構(gòu)成示意圖
(2) 串口驅(qū)動(dòng)模塊有ETA518-232、ETA518-485、ETA518-422、ETA518-PASS四種型號(hào)可選,分別實(shí)現(xiàn)RS232C、RS485(光隔可選)、RS422(光隔可選)和TTL的串口功能,將相應(yīng)的串口驅(qū)動(dòng)模塊插入ETA518-M的串口擴(kuò)展插座就實(shí)現(xiàn)了相應(yīng)的串口擴(kuò)展,需要多少個(gè)串口,就插入多少個(gè)驅(qū)動(dòng)模塊,各串口均以5芯HT508L的接線端子對(duì)外引出。
(3) 如客戶需要的串口數(shù)量大于8個(gè),就需要在ETA518-M上面再安裝一個(gè)ETA518-S串口擴(kuò)展板,ETA518-S提供了額外的8個(gè)串口擴(kuò)展插座,使客戶可使用的串口數(shù)量可以達(dá)到16個(gè)之多。此外,ETA518-M還提供個(gè)一個(gè)以太網(wǎng)口、一個(gè)調(diào)試串口、GPIO接口和一個(gè)LCD接口,客戶還可選擇自主擴(kuò)展USB存儲(chǔ)接口和第二個(gè)以太網(wǎng)口。
ETR232i + ETA518-M + ETA518-S + 部分功能模塊示意圖
ETA518在標(biāo)準(zhǔn)1U機(jī)箱中的安裝示意圖
客戶在按照自己的應(yīng)用需求完成硬件平臺(tái)搭建后,即可以進(jìn)行應(yīng)用程序的開發(fā)。多串口服務(wù)器整機(jī)大多數(shù)應(yīng)用在串口到以太網(wǎng)的數(shù)據(jù)轉(zhuǎn)換或多串口通訊管理的場(chǎng)合。針對(duì)這種應(yīng)用英創(chuàng)公司提供了相應(yīng)的應(yīng)用程序,實(shí)現(xiàn)了串口和以太網(wǎng)數(shù)據(jù)之間的數(shù)據(jù)透明傳輸,其中各個(gè)通訊口的參數(shù)配置采用IE瀏覽器,通過(guò)對(duì)網(wǎng)頁(yè)的操作來(lái)實(shí)現(xiàn)。
下面分為兩部分來(lái)介紹。
多串口服務(wù)器通訊參數(shù)設(shè)置
多串口服務(wù)器上運(yùn)行的程序?qū)崿F(xiàn)了嵌入式WebServer的功能,其作為Web服務(wù)器采用的是固定IP(IP:“192.168.202.22”)。用戶的電腦和多串口服務(wù)器網(wǎng)絡(luò)連好后,可直接用IE訪問該IP,得到如下的網(wǎng)頁(yè)畫面,再進(jìn)行相應(yīng)的配置。
多串口服務(wù)器應(yīng)用程序簡(jiǎn)介
在多串口服務(wù)器方案中,由于串口的數(shù)量一般都較多,如果每個(gè)串口都產(chǎn)生中斷來(lái)獨(dú)立收發(fā)數(shù)據(jù),會(huì)占用較大的系統(tǒng)開銷,從而會(huì)影響到系統(tǒng)的響應(yīng)性能。所以在本方案中各個(gè)串口的驅(qū)動(dòng)程序采用定時(shí)器中斷的方式進(jìn)行串口操作,由系統(tǒng)時(shí)鐘定時(shí)對(duì)各個(gè)串口的操作,系統(tǒng)時(shí)鐘定時(shí)間隔一般選用在2.6ms左右,如果串口所使用的通訊波特率較高,如115200bps,可進(jìn)一步縮短時(shí)間間隔,可選用在1ms左右。在使用ETR232i作為主控CPU模塊的情況下, 約200us左右可以完成16個(gè)串口的輪詢操作。
英創(chuàng)提供的多串口服務(wù)器應(yīng)用程序的框架主要以事件驅(qū)動(dòng)機(jī)制為特色,核心是通過(guò)對(duì)一個(gè)簡(jiǎn)單的任務(wù)命令隊(duì)列進(jìn)行操作,來(lái)實(shí)現(xiàn)相應(yīng)不同的應(yīng)用程序功能,在此應(yīng)用中包括網(wǎng)絡(luò)數(shù)據(jù)處理、串口數(shù)據(jù)處理,從而實(shí)現(xiàn)了以太網(wǎng)到串口之間的數(shù)據(jù)透明傳輸。對(duì)于選用多串口服務(wù)器整機(jī)方案的客戶,如通訊數(shù)據(jù)還需要作相應(yīng)的協(xié)議轉(zhuǎn)換,可以此框架為基礎(chǔ),直接進(jìn)入應(yīng)用功能的軟件規(guī)劃及實(shí)現(xiàn),從而大大節(jié)省應(yīng)用程序的開發(fā)時(shí)間,同時(shí)保證應(yīng)用程序的高穩(wěn)定性。 對(duì)于通訊規(guī)約種類較多、又需要進(jìn)行靈活配置的情況,可以利用DOS操作系統(tǒng)的TSR駐留程序技術(shù),以串口為單位分別采用不同的TSR駐留程序來(lái)實(shí)現(xiàn)相應(yīng)的規(guī)約轉(zhuǎn)換,在運(yùn)行主程序之前,先加載各個(gè)不同的TSR駐留程序,從而實(shí)現(xiàn)通訊規(guī)約的靈活配置。具體的TSR程序的編寫方法請(qǐng)參見“可配置的通訊規(guī)約轉(zhuǎn)換方案”中的相關(guān)說(shuō)明。
本方案的典型流程框圖如下:
