當(dāng)前位置:首頁(yè) > 電源 > 數(shù)字電源
[導(dǎo)讀]為了轉(zhuǎn)發(fā)水質(zhì)監(jiān)測(cè)數(shù)據(jù),采用新型的1T周期單片機(jī)STC10F04EX為控制核心,將雙4選1模擬開關(guān)4052的2個(gè)公用端與單片機(jī)的RxD、TxD端連接,通過分時(shí)連通的方式,對(duì)單片機(jī)的UART進(jìn)行擴(kuò)展,構(gòu)成一個(gè)多串口的數(shù)據(jù)轉(zhuǎn)發(fā)系統(tǒng)。擴(kuò)展的串口分別連接到3個(gè)不同的水質(zhì)監(jiān)測(cè)設(shè)備,以及一個(gè)與無線發(fā)射模塊。單片機(jī)分時(shí)得到3個(gè)水質(zhì)監(jiān)測(cè)設(shè)備傳來的數(shù)據(jù),并將得到的數(shù)據(jù)通過無線模塊進(jìn)行轉(zhuǎn)發(fā),轉(zhuǎn)發(fā)距離可達(dá)3 000 m。遠(yuǎn)離現(xiàn)場(chǎng)的計(jì)算機(jī)完成數(shù)據(jù)接收及分析。該方法用于對(duì)單片機(jī)串口擴(kuò)展和遠(yuǎn)距離數(shù)據(jù)傳送簡(jiǎn)潔可靠。所建的數(shù)據(jù)收發(fā)系統(tǒng),可

引言
    RS 232串口通信是一種常用的通信方式,許多數(shù)字化設(shè)備、測(cè)量?jī)x器都具有串行接口。這些設(shè)備可以方便地與PC、PLC等控制器連接進(jìn)行數(shù)據(jù)交換,從而組成一個(gè)測(cè)試檢測(cè)/監(jiān)測(cè)系統(tǒng)。
    目前安裝在江、河、湖等水體現(xiàn)場(chǎng)的不同種類的水環(huán)境監(jiān)測(cè)設(shè)備,通過采集水樣,周期性地生成一組數(shù)據(jù)通過串口向外傳送。如果在現(xiàn)場(chǎng)需配置一臺(tái)或多臺(tái)PC,既不經(jīng)濟(jì),又難以維護(hù)。本文介紹的基于單片機(jī)的多串口數(shù)據(jù)收發(fā)控制系統(tǒng),可以同時(shí)連接多臺(tái)不同類型的水質(zhì)監(jiān)測(cè)設(shè)備,現(xiàn)場(chǎng)接收采集的數(shù)據(jù)并通過無線模塊向遠(yuǎn)端控制中心傳遞,轉(zhuǎn)發(fā)傳送的距離約為3 000 m,遠(yuǎn)遠(yuǎn)大于直接的RS 232互連。多串口數(shù)據(jù)收發(fā)控制系統(tǒng)不同于多串口卡,可以脫離計(jì)算機(jī)獨(dú)立工作,是計(jì)算機(jī)串口擴(kuò)展、延伸的一種全新方法。
    用多串口數(shù)據(jù)收發(fā)控制系統(tǒng)取代計(jì)算機(jī)安置于監(jiān)測(cè)現(xiàn)場(chǎng),將來自于不同設(shè)備的數(shù)據(jù)進(jìn)行初步整合,再通過無線方式向遠(yuǎn)離現(xiàn)場(chǎng)的中央控制室進(jìn)行傳送,則監(jiān)測(cè)系統(tǒng)的可靠性、實(shí)時(shí)性、易維護(hù)性都大為增強(qiáng)。

1 水質(zhì)監(jiān)測(cè)系統(tǒng)的構(gòu)成
   
本文所提及的水質(zhì)監(jiān)測(cè)系統(tǒng),由光譜分析儀、水毒性分析儀、生物狀態(tài)分析儀等組成,這些設(shè)備都具有RS 232接口,但是接口參數(shù)不盡一致,傳送的數(shù)據(jù)格式也差別極大(見表1)。


    這些位于水體現(xiàn)場(chǎng)的測(cè)試設(shè)備,需要及時(shí)地將測(cè)量數(shù)據(jù)傳遞給遠(yuǎn)端的中央控制室。

2 多串口數(shù)據(jù)收發(fā)控制系統(tǒng)
2.1 多串口數(shù)據(jù)收發(fā)控制系統(tǒng)工作原理

    多串口數(shù)據(jù)收發(fā)控制系統(tǒng),以單片機(jī)STC10F04EX為控制核心,擴(kuò)展出多個(gè)全雙工異步串行口(UART),用以同時(shí)連接多個(gè)外部串口設(shè)備。該系統(tǒng)既可獨(dú)立地與所連接的設(shè)備交換數(shù)據(jù),又能起到數(shù)據(jù)中繼的作用,將來自上位端的命令傳遞到指定的串口設(shè)備上,或?qū)⒔邮盏降膩碜圆煌谠O(shè)備上的數(shù)據(jù)經(jīng)過初步整理后發(fā)送到上位端。
    由于要連接多個(gè)下位端執(zhí)行設(shè)備,但STC10F04EX的獨(dú)立UART只有一個(gè),因此,必須對(duì)該單片機(jī)的UART進(jìn)行擴(kuò)展,才能連接多臺(tái)串口設(shè)備。經(jīng)過擴(kuò)展的各路UART不能同時(shí)工作,必須在I/O的配合下選擇對(duì)應(yīng)通道分時(shí)工作。
    被監(jiān)測(cè)的對(duì)象所發(fā)生的變化是個(gè)緩變過程,監(jiān)測(cè)系統(tǒng)中的各個(gè)分析儀器所要傳送的數(shù)據(jù)量有限,并且接收端大部分時(shí)間處于等待階段,控制程序在設(shè)計(jì)時(shí)已充分考慮到數(shù)據(jù)的銜接和每種設(shè)備的采樣和轉(zhuǎn)換周期。因此,分時(shí)連接不會(huì)造成數(shù)據(jù)丟失導(dǎo)致失準(zhǔn),可以滿足監(jiān)測(cè)要求。
    圖1顯示了多串口收發(fā)控制系統(tǒng)的結(jié)構(gòu)框圖以及與3個(gè)外部串口設(shè)備的連接。該系統(tǒng)既可以將接收到的數(shù)據(jù)通過無線方式對(duì)外發(fā)送,也可以用有線的方式直接傳遞給本地電腦。


2.2 多串口數(shù)據(jù)收發(fā)控制系統(tǒng)硬件組成
   
多串口數(shù)據(jù)收發(fā)控制系統(tǒng),采用型號(hào)STC10F04XE的單片機(jī)為控制核心,外加7279A鍵盤及數(shù)碼管驅(qū)動(dòng)電路,TTL-RS232電平轉(zhuǎn)換電路MAX
232,4052雙4選1模擬開關(guān),無線收發(fā)模塊等組成。
    STC11F04XE的單片機(jī),以8051為內(nèi)核,并具有以下鮮明特點(diǎn):抗干擾能力強(qiáng),1T周期CPU,獨(dú)立波特率發(fā)生器,2個(gè)可切換串口,在系統(tǒng)可編程(ISP),片上擴(kuò)展XRAM等。
    單片機(jī)STC10F04EX的UART可在P1口的P1.6/P1.7(UART2)和P3口P3.0/P3.1(UART1)間切換,可以分時(shí)當(dāng)2個(gè)串口使用,這為調(diào)試系統(tǒng)和擴(kuò)展串口帶來了方便。由于該系列單片機(jī)支持在系統(tǒng)可編程(ISP),因此系統(tǒng)中的UART1通過電平轉(zhuǎn)換電路,直接連接到PC機(jī)的一個(gè)串口上,用于對(duì)單片機(jī)的程序下載和調(diào)試。單片機(jī)正常工作時(shí),可將串口設(shè)置在UART2上。
    采用雙4選1模擬開關(guān)4052,將單片機(jī)的UART2擴(kuò)展為4路。其中,單片機(jī)端的RxD/TxD分別接到4052的公共端,擴(kuò)展端再由MAX232電平變換連接到外部具有串口的測(cè)量設(shè)備上。STC10F04EX的2個(gè)I/O引腳P1.1,P1.0與4052的通道選擇線B、A分別相連,UART2的具體指向由這2條I/O選擇控制。擴(kuò)展的串口只能分時(shí)工作,具體分配見表2。[!--empirenews.page--]


    由于連接的不同串口設(shè)備的通信參數(shù)不完全相同,STC10F04EX必須根據(jù)設(shè)備指向動(dòng)態(tài)調(diào)整串口參數(shù)以適合外部串口設(shè)備。
    顯示芯片7279A可以驅(qū)動(dòng)8位共陰LED數(shù)碼管并可采集64個(gè)鍵盤位置信號(hào)。該系統(tǒng)通過數(shù)碼管顯示工作狀態(tài)(收發(fā),等待,時(shí)間,通道號(hào),參數(shù)等);通過鍵盤不僅可以設(shè)置“多串口數(shù)據(jù)收發(fā)控制系統(tǒng)”自身參數(shù)和調(diào)節(jié)自身狀態(tài),還可修改/設(shè)置所連接的外部設(shè)備的傳送參數(shù)。CPU通過4個(gè)I/O引腳與7279A的4條控制線CS、DATA、CLK、KEY連接,就可驅(qū)動(dòng)8位數(shù)碼管并對(duì)按鍵進(jìn)行監(jiān)控。為了響應(yīng)及時(shí),采用中斷方式響應(yīng)按鍵狀態(tài),因此將KEY連接到P3.2(int0)上。
    無線收發(fā)模塊,嵌入高性能射頻芯片,采用高效循環(huán)交織糾檢錯(cuò)編碼,發(fā)送距離可達(dá)3 000 m。模塊具有TTL電平的UART口,因此可以很方便地與單片機(jī)的一個(gè)擴(kuò)展的UART連接。向無線收發(fā)模塊寫入和讀出數(shù)據(jù),與一般的串口操作基本一樣。無線收發(fā)模塊頻點(diǎn)、空中速率、本地串口速率、校驗(yàn)方式等參數(shù)可以在線設(shè)置或通過廠家提供的程序進(jìn)行設(shè)置。
    系統(tǒng)中無線收發(fā)模塊本地串口通信參數(shù)設(shè)為(9 600,8,N,1),數(shù)據(jù)被調(diào)制在434 MHz進(jìn)行發(fā)送和接收,空中速率9 600 b/s,發(fā)射功率100 mW。
    該無線收發(fā)模塊,收到數(shù)據(jù)后通常延時(shí)幾十到幾百毫秒才發(fā)送,所帶緩存256 B。若本地串口速率大于等于空中速率,則存在數(shù)據(jù)流量問題,可能會(huì)出現(xiàn)數(shù)據(jù)溢出導(dǎo)致丟失現(xiàn)象。因此若傳送數(shù)據(jù)超過256 B,要進(jìn)行數(shù)據(jù)分割,插入等待周期,采用分次發(fā)送的方式以避免數(shù)據(jù)丟失。本系統(tǒng)所連接的光譜儀數(shù)據(jù)量較大,因此單片機(jī)接收光譜儀數(shù)據(jù)后再經(jīng)無線轉(zhuǎn)發(fā),要采用分段接收/轉(zhuǎn)發(fā)方式,每次的數(shù)據(jù)量要小于256 B,多次重復(fù),直至全部數(shù)據(jù)。

3 軟件設(shè)計(jì)
3.1 有關(guān)寄存器的說明

    程序運(yùn)行時(shí)首先進(jìn)行初始化設(shè)置,其中涉及到幾個(gè)比較特別的寄存器,其定義不同于其他51系列的單片機(jī)。
    寄存器AUXR,地址8EH。關(guān)系到獨(dú)立波特率發(fā)生器,STC10F04EX既可以采用定時(shí)器1作為波特率發(fā)生器,又可以采用獨(dú)立波特率發(fā)生器以釋放定時(shí)器1,見表3說明。


    寄存器AUXR1,地址A2H。其中的D7位關(guān)系到單片機(jī)內(nèi)在的串口切換。例如:
   
3.2 數(shù)據(jù)存儲(chǔ)及轉(zhuǎn)發(fā)
   
STC10F04EX單片機(jī),內(nèi)部數(shù)據(jù)存儲(chǔ)器為256 B,片上擴(kuò)展的外部數(shù)據(jù)存儲(chǔ)器為256 B,共計(jì)512 B,數(shù)據(jù)空間緊湊。程序運(yùn)行中的一些變量需要占用一部分?jǐn)?shù)據(jù)空間,因此只能開辟約220個(gè)字節(jié)作為緩存空間,暫存接收到的來自串口設(shè)備的數(shù)據(jù)。如果一次接收的數(shù)據(jù)量小于緩存空間,則不會(huì)導(dǎo)致數(shù)據(jù)溢出;如果外部設(shè)備需傳送的數(shù)據(jù)量較大,則必須與外部設(shè)備建立聯(lián)絡(luò)控制發(fā)送,以使每次傳來的數(shù)據(jù)小于系統(tǒng)緩存,避免數(shù)據(jù)丟失現(xiàn)象的發(fā)生。[!--empirenews.page--]
    所建立的水質(zhì)監(jiān)測(cè)系統(tǒng)中,“光譜儀”給出的數(shù)據(jù)量較大,因此“多串口收發(fā)控制系統(tǒng)”分時(shí)連接到“光譜儀”時(shí),采用命令應(yīng)答方式控制光譜儀的數(shù)據(jù)發(fā)送,分批多次傳送。單片機(jī)將UART指向光譜儀,首先向光譜儀發(fā)送命令,指明數(shù)據(jù)來源和傳送的數(shù)據(jù)量(例如200個(gè)字節(jié));其次等待光譜儀的響應(yīng)并將傳來的200個(gè)字節(jié)的數(shù)據(jù)暫存在所開辟的緩沖區(qū)中;然后再將UART切換至無線模塊通道,將單片機(jī)緩存中的數(shù)據(jù)寫入無線模塊轉(zhuǎn)發(fā)出去;重復(fù)進(jìn)行上述步驟直至接收到光譜儀的全部數(shù)據(jù)。
    水質(zhì)監(jiān)測(cè)系統(tǒng)中的另外2種設(shè)備的數(shù)據(jù)量相對(duì)較小,可以一次性接收/轉(zhuǎn)發(fā)。
3.3 接收/轉(zhuǎn)發(fā)控制流程
   
根據(jù)設(shè)備的不同數(shù)據(jù)周期,以時(shí)間為線索,為相應(yīng)的設(shè)備分配接收/發(fā)送時(shí)間(圖2),在所分配的時(shí)間里,單片機(jī)要進(jìn)行UART通道切換:指向串口設(shè)備接收或發(fā)送數(shù)據(jù)、指向無線設(shè)備發(fā)送數(shù)據(jù)。


    程序采用中斷方式處理定時(shí)、串口的數(shù)據(jù)接收/發(fā)送、鍵盤輸入等過程。以中斷方式運(yùn)行,提高了程序的執(zhí)行效率。圖3為定時(shí)中斷服務(wù)程序流程圖。該水質(zhì)監(jiān)測(cè)過程,就是循環(huán)掃描3個(gè)水監(jiān)測(cè)設(shè)備,獲取數(shù)據(jù)并進(jìn)行無線轉(zhuǎn)發(fā)。


3.4 主要的程序功能模塊說明
   
串口驅(qū)動(dòng)程序?yàn)榉治雠袛鄶?shù)據(jù)來源,并調(diào)用相應(yīng)的函數(shù),完成對(duì)不同串口設(shè)備的數(shù)據(jù)接收和發(fā)送。將接收到的數(shù)據(jù)暫時(shí)保存于緩存中;將緩存中的數(shù)據(jù)進(jìn)行轉(zhuǎn)發(fā);定時(shí)中斷程序?yàn)橹芷谛缘厍袚QUART通道,分別連接到外部的3個(gè)串口設(shè)備上和無線發(fā)射模塊上。切換串口通道的同時(shí),調(diào)整串口通信參數(shù),以適應(yīng)不同的串口設(shè)備。觸發(fā)串口發(fā)送過程,將緩存中的數(shù)據(jù)寫入無線模塊轉(zhuǎn)發(fā);INT0中斷服務(wù)程序?yàn)榧皶r(shí)響應(yīng)鍵盤操作,然后調(diào)用相應(yīng)的函數(shù),完成參數(shù)設(shè)置等控制任務(wù);顯示程序?yàn)榭刂?279A.驅(qū)動(dòng)LED數(shù)碼管,顯示系統(tǒng)狀態(tài)等信息。

4 結(jié)語
   
多串口數(shù)據(jù)收發(fā)控制系統(tǒng),已應(yīng)用于水環(huán)境監(jiān)測(cè)的數(shù)據(jù)轉(zhuǎn)發(fā),工作穩(wěn)定,數(shù)據(jù)收發(fā)可靠。
    本系統(tǒng)為采用一片單片機(jī)控制的單核心結(jié)構(gòu),與采用多核結(jié)構(gòu)相比,盡管只能分時(shí)使用UART,但數(shù)據(jù)協(xié)調(diào)相對(duì)容易,并且在設(shè)計(jì)時(shí)已考慮了數(shù)據(jù)銜接問題,不會(huì)導(dǎo)致數(shù)據(jù)丟失現(xiàn)象的發(fā)生;與采用多串口卡的方案相比,本系統(tǒng)可以脫離計(jì)算機(jī)獨(dú)立工作,因此現(xiàn)場(chǎng)不需要一臺(tái)計(jì)算機(jī)參與數(shù)據(jù)接收;無線方式數(shù)據(jù)傳送,傳送距離相對(duì)更遠(yuǎn);系統(tǒng)占用資源少,維護(hù)成本降低。
    該系統(tǒng)還可應(yīng)用于其他的多串口數(shù)據(jù)收發(fā)場(chǎng)合。經(jīng)過擴(kuò)展,可連接的串口數(shù)目可以進(jìn)一步擴(kuò)大。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉