新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > PC機(jī)與單片機(jī)多機(jī)實(shí)時(shí)通信的設(shè)計(jì)與實(shí)現(xiàn)

PC機(jī)與單片機(jī)多機(jī)實(shí)時(shí)通信的設(shè)計(jì)與實(shí)現(xiàn)

作者: 時(shí)間:2012-02-06 來源:網(wǎng)絡(luò) 收藏

VB可以發(fā)送文本數(shù)據(jù)和二進(jìn)制數(shù)據(jù)。發(fā)送二進(jìn)制數(shù)據(jù)時(shí),必須傳遞一個(gè)包含字節(jié)數(shù)組的 Variant到 Output 屬性。接收二進(jìn)制數(shù)據(jù)時(shí),Input屬性通過一個(gè)Variant返回一二進(jìn)制數(shù)據(jù)的數(shù)組。為便于命令的表達(dá),本系統(tǒng)采用二進(jìn)制格式的數(shù)據(jù)。

為更深入了解該控件,這里對接收數(shù)據(jù)緩沖區(qū)進(jìn)行了分析,該控件開辟的接收數(shù)據(jù)緩沖區(qū)類似一個(gè)隊(duì)列,Windows95低層驅(qū)動程序負(fù)責(zé)將接收到的數(shù)據(jù)填入隊(duì)列尾部,同時(shí)修改尾指針,當(dāng)OnComm事件發(fā)生后用Input讀取InputLen長度個(gè)字節(jié)后,將隊(duì)列頭指針后移InputLen位??梢园堰@個(gè)緩沖區(qū)開得大一點(diǎn),這樣即使暫時(shí)來不及處理也不會丟失數(shù)據(jù)。接收數(shù)據(jù)緩沖區(qū)數(shù)據(jù)結(jié)構(gòu)示意圖如圖3所示。

3 多機(jī)通信的實(shí)現(xiàn)

89C51單片機(jī)的串行口工作方式3可實(shí)現(xiàn)多機(jī)通信。接收時(shí),若SM2=1,表示置多機(jī)通信功能位,這時(shí)出現(xiàn)兩種可能情況:接收到第9位數(shù)據(jù)為1時(shí),數(shù)據(jù)才裝入SBUF,并置RI=1向CPU發(fā)出中斷請求;如果接收到第9位數(shù)據(jù)為0,則不產(chǎn)生中斷標(biāo)志,信息將拋棄。若SM2=0,則接收到的第9位數(shù)據(jù)不論是0還是1都產(chǎn)生RI=1中斷標(biāo)志,接收到的數(shù)據(jù)裝入SBUF中。根據(jù)這個(gè)功能,可實(shí)現(xiàn)多個(gè) 89C51應(yīng)用系統(tǒng)的串行通信。

機(jī)定時(shí)中斷服務(wù)程序框圖

多機(jī)通信過程安排如下:使所有從機(jī)的SM2位置1,處于只接收地址幀的狀態(tài);主機(jī)發(fā)送一幀地址信息,其中包含8位地址,第9位為地址、數(shù)據(jù)標(biāo)志位,第9位置1表示發(fā)送的是地址;從機(jī)接收到地址幀后 ,各自將所接收的地址與本從機(jī)的地址相比較,對于地址相符的從機(jī),使SM2清0以接收主機(jī)隨后發(fā)來的信息,對于地址不相符的從機(jī),仍保持SM2=1狀態(tài),對主機(jī)隨后發(fā)送的數(shù)據(jù)不予理睬,直至發(fā)送新的地址幀;主機(jī)發(fā)送控制指令與數(shù)據(jù),給被尋址的從機(jī)數(shù)據(jù)幀的第9位置0,表示發(fā)送的是數(shù)據(jù)。

單片機(jī)程序采用PLM51語言設(shè)計(jì),主單片機(jī)定時(shí)中斷服務(wù)程序框圖如圖4所示。主單片機(jī)串行口接收和發(fā)送中段服務(wù)程序框圖如圖5所示。主單片機(jī)串行口接收中斷服務(wù)程序如圖6所示。從單片機(jī)串行口接收和發(fā)送中段服務(wù)程序框圖如圖7所示。主單片機(jī)在主程序中以查詢方式將各從機(jī)送來的數(shù)據(jù)從內(nèi)存中讀出后順序發(fā)送給上位PC機(jī)。程序清單略。


從實(shí)際使用來看,本系統(tǒng)具有較高的性價(jià)比,且穩(wěn)定可靠,稍加改進(jìn)即可用于自動化測量和實(shí)時(shí)控制系統(tǒng)的數(shù)據(jù)通信。

參考文獻(xiàn)

1 何立民.MCS-51系列單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)系統(tǒng)配置與接口技術(shù).北京:北京航天航空大學(xué)出版社,1990.1

2 陳功富,韓賢東.計(jì)算機(jī)網(wǎng)設(shè)計(jì)與實(shí)現(xiàn).北京:人民郵電出版社,1994.10


上一頁 1 2 下一頁

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉