單片機(jī)雙串口同時(shí)通訊的實(shí)現(xiàn)
2.2 集中器中雙串口CPU同時(shí)通訊的實(shí)現(xiàn)
由于集中器要實(shí)現(xiàn)和上位機(jī)與采集模塊的同時(shí)通訊,采用一片具有雙串口的CPU,該CPU具有2個(gè)串口和2個(gè)串口中斷,串口1中斷處理與上位機(jī)的通訊,串口2中斷處理與采集模塊的通訊,串口1中斷設(shè)置為高優(yōu)先級(jí)中斷,每接塑到或發(fā)送完一個(gè)字節(jié)都進(jìn)入中斷處理,處理完畢立即退出中斷,通訊波特率都為9 600 b/s,一個(gè)起始位和一個(gè)停止位。
首先要解決時(shí)間沖突問(wèn)題,硬件接受或發(fā)送一個(gè)字節(jié)的時(shí)間為1 ms左右,而軟件接受或發(fā)送一個(gè)字節(jié)的時(shí)間僅幾μs,這就為雙串口同時(shí)通訊提供了條件。同時(shí)通訊實(shí)際上是將CPU時(shí)間分成很小的時(shí)間片,假設(shè)較快的串口發(fā)送或接受一個(gè)字節(jié)的最長(zhǎng)時(shí)間為TRbyteMax,則CPU最長(zhǎng)時(shí)間片一般應(yīng)小于TRbyteMax/2,當(dāng)然在接受或發(fā)送完一幀數(shù)據(jù)之后的間隙,CPU時(shí)間片可以適當(dāng)延長(zhǎng),作一些必要的數(shù)據(jù)處理。
其次要解決數(shù)據(jù)沖突問(wèn)題,2個(gè)串口通訊分別使用各自的接受發(fā)送數(shù)據(jù)緩沖區(qū)和控制變量,以減少中斷保護(hù)數(shù)據(jù)量和防止數(shù)據(jù)沖突。當(dāng)主程序、串口2中斷處理程序和其他中斷處理程序往存儲(chǔ)器(與上位機(jī)的通訊用存儲(chǔ)器)中寫數(shù)據(jù)時(shí),需在盡量短的時(shí)間內(nèi)關(guān)閉串口1中斷,關(guān)閉中斷時(shí)間應(yīng)小于幾百μs,防止其他程序數(shù)據(jù)沒(méi)有寫完之前串口1讀此數(shù)據(jù)。
同時(shí)需要注意一些其他問(wèn)題:盡量采用模塊化、結(jié)構(gòu)化、對(duì)象化編程,使串口通訊程序和其他程序之間、2個(gè)串口通訊程序之間相互獨(dú)立,以減少發(fā)生錯(cuò)誤的機(jī)會(huì)。另外串口通訊中,還要增加通訊超時(shí)處理機(jī)制,中斷處理中要注意數(shù)據(jù)和程序狀態(tài)的保護(hù),完善出錯(cuò)處理程序,使用電源監(jiān)測(cè)掉電保護(hù)硬件和看門狗技術(shù)等。
串口通訊數(shù)據(jù)幀中采用高可靠性的循環(huán)冗余校驗(yàn)(CRC)技術(shù),極大地降低了數(shù)據(jù)誤碼率,在連續(xù)運(yùn)行幾個(gè)月的大量數(shù)據(jù)中沒(méi)有發(fā)現(xiàn)誤碼。
3 結(jié)語(yǔ)
本系統(tǒng)設(shè)計(jì)采用模塊化、結(jié)構(gòu)化、對(duì)象化的程序設(shè)計(jì)方法,硬件冗余設(shè)計(jì)和軟硬件自動(dòng)故障診斷,使系統(tǒng)具有高可靠性和高實(shí)時(shí)性。系統(tǒng)使用大量報(bào)表和動(dòng)態(tài)圖形曲線,具有友好的人機(jī)交互界面。專用掌上電腦可現(xiàn)場(chǎng)初始化,操作簡(jiǎn)便、維修快捷。同時(shí)具有在線設(shè)置方便、硬件配置靈活多樣、適用范圍廣、通用性好、性能價(jià)格比高等特點(diǎn)。
本系統(tǒng)已在電廠連續(xù)可靠運(yùn)行,有很高的抄收成功率,抄收數(shù)據(jù)無(wú)誤碼??蓮V泛應(yīng)用于大中型企業(yè)和電廠,為現(xiàn)代化發(fā)電用電管理提供可靠的數(shù)據(jù)來(lái)源。
本系統(tǒng)可做進(jìn)一步改進(jìn),針對(duì)不同類型的應(yīng)用,在DCS中加入相應(yīng)的統(tǒng)計(jì)分析模塊和控制單元,達(dá)到自動(dòng)控制的目的。
參考文獻(xiàn)
[1]Modicon modbus protocol reference guide.PI- MBUS - 300 Rev. J. MODICON ,Inc. ,Industrial Automation Systems . June 1996.
[2]何立民.單片機(jī)應(yīng)用系統(tǒng)[M].北京:北京航空航天大學(xué)出版社,1992.
[3]High - speed microcontrollers . DataBook of Dallas Semiconductor Corp.1999.
數(shù)字通信相關(guān)文章:數(shù)字通信原理
通信相關(guān)文章:通信原理
電能表相關(guān)文章:電能表原理
評(píng)論