<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > RS485總線(xiàn)通信速度提高改進(jìn)設計

RS485總線(xiàn)通信速度提高改進(jìn)設計

作者: 時(shí)間:2016-12-13 來(lái)源:網(wǎng)絡(luò ) 收藏
  引言

  工業(yè)現場(chǎng)經(jīng)常要采集多點(diǎn)數據,模擬信號或開(kāi)關(guān)信號,一般用到RS485總線(xiàn),使用一主帶多從的通信方式,該種方式接線(xiàn)方便只需要兩根屏蔽電纜線(xiàn),通信距離遠最大可支持1500m,加中繼器還可延長(cháng)通信距離,采用差分信號方式抗電磁干擾好。但該方式通信速度不能太快,一般采用主從召喚的方式采集各子單元的數據,即主單元依次召喚各子單元(見(jiàn)圖1),召喚到哪個(gè)單元哪個(gè)單元上傳數據,總線(xiàn)的使用權完全由主單元分配,各子單元不能擅自占領(lǐng)總線(xiàn)。如果系統的單元多,主單元循環(huán)采集一周的時(shí)間就很長(cháng),子單元信息變化時(shí)不能及時(shí)發(fā)送給主單元,導致系統對突變事件的反應處理速度慢。本文通過(guò)總線(xiàn)狀態(tài)檢測、從機主動(dòng)上發(fā)的方式解決。

本文引用地址:http://dyxdggzs.com/article/201612/329529.htm

  

  圖1 常規RS485總線(xiàn)主從方式接口圖

  硬件設計

  整個(gè)系統由主單元和多個(gè)子單元組成(圖2),主單元包括:ARM7微控制器、程序存儲器、數據存儲器、與子單元通信RS485、與主單元通信RS485、系統電源和通信隔離電源;子單元包括:MSP430單片機、與子單元通信RS485、系統電源和通信隔離電源。

  

  圖2 系統框圖

  主單元

  ARM微控制器是主單元的核心,采用三星32位ARM7TDMI內核芯片S3C44B0,該芯片最高處理速度可達76MHZ,總線(xiàn)開(kāi)放,可外擴程序存儲器FLASH和數據存儲器SDRAM,該系統外擴了SST公司生產(chǎn)的39VF1601和現代生產(chǎn)的HY57V641620HG,2個(gè)UART串行接口,使用ADI的隔離RS485芯片ADM2483進(jìn)行接口電平轉換,總線(xiàn)狀態(tài)檢測使用74HC125三態(tài)門(mén)芯片。

  子單元

  子單元的微控制器使用TI的MSP430F133單片機,該單片機處理速度可達8MHz,8K字節片內FLASH存儲,256K字節片內SRAM。

  電源電路

  電源電路采用開(kāi)關(guān)電源供電,開(kāi)關(guān)電源輸入電壓范圍比較寬,輸出直流電壓5V,通過(guò)SP1117-3.3和SP1117-2.5芯片輸出3.3V電源。RS485需要的隔離5V電源通過(guò)DC-DC模塊得到。

  總線(xiàn)檢測電路

  總線(xiàn)狀態(tài)檢測使用74HC125三態(tài)門(mén)芯片和單片機的兩個(gè)I/O(圖3),當系統都不使用總線(xiàn)時(shí),每個(gè)單元的74HC125都輸出高阻狀態(tài),此時(shí)總線(xiàn)為低電平,當有單元要使用總線(xiàn)時(shí),他首先檢測總線(xiàn)狀態(tài),如果總線(xiàn)為低電平,該單元迅速把74HC125改為輸出狀態(tài),此時(shí)總線(xiàn)變?yōu)楦唠娖?,該單元占領(lǐng)總線(xiàn),往總線(xiàn)上發(fā)送數據,發(fā)送數據完成再把74HC125改為高阻狀態(tài)。如果檢測到總線(xiàn)是高電平,等待檢測,直到總線(xiàn)變低后再占領(lǐng)總線(xiàn)。

  

  圖3 總線(xiàn)檢測電路

  隔離485電路

  使用ADI的ADM2483芯片進(jìn)行接口電平轉換(圖4),該芯片屬于隔離485,雙電源供電輸入輸出隔離。

  

  圖4 隔離485電路

  軟件設計

  主機程序部分需要實(shí)現各從機上傳數據的接收、處理和上傳。主機接收子單元信息通過(guò)一個(gè)RS485串口實(shí)現,數據格式為16進(jìn)制,數據位8位,1 個(gè)起始位,1個(gè)結束位,無(wú)寄偶校驗位,波特率9600bps。采用串行口中斷的方式接收,主機程序初始化完成后等待各從機發(fā)送信息,當主機接收到第一個(gè)字節后,判斷該字節是否為設備號,如果不是設備號,接收個(gè)數清零,如果是設備號繼續接收第二個(gè)字節;判定第二個(gè)字節是否為正確的功能碼,如果功能碼錯誤,接收個(gè)數清零重新接收,功能碼正確;接收第三個(gè)字節,該字節為從單元發(fā)送信息的字節個(gè)數x,計算從單元發(fā)送總字節個(gè)數為M=X+3+2,3個(gè)開(kāi)頭字節和2個(gè) CRC校驗碼,主機接收到M個(gè)字節后,首先判斷CRC校驗碼是否正確,錯誤舍棄所有信息,正確則把從單元的信息保存到數據區,該次接收結束,主機繼續等待接收。

  信息的上傳通過(guò)一個(gè)RS232串口實(shí)現。當主機接收到從機信息后,進(jìn)行數據的處理,發(fā)現從單元信息發(fā)生變化,主機準備把從機信息發(fā)送到上位機,首先重新初始化發(fā)送緩沖區,然后通過(guò)中斷的方式依次發(fā)送信息到上位機,發(fā)送信息包括設備號、功能碼、發(fā)送字節個(gè)數、信息字節和CRC校驗碼。

  主機單元接收數據流程圖示于圖5。

  

  圖5 程序流程圖

  結語(yǔ)

  筆者所設計的系統實(shí)現了開(kāi)關(guān)信號的多點(diǎn)監測,一個(gè)主機單元,32個(gè)從機單元,每個(gè)從機單元監測32個(gè)開(kāi)關(guān),該系統共可監測1024個(gè)開(kāi)關(guān),使用 9600bps的波特率。采用主從召換的方式,開(kāi)關(guān)信號監測的反應時(shí)間一般要用20-30s,使用該種總線(xiàn)檢測的方式,開(kāi)關(guān)信號的反應速度最慢也不超過(guò) 1s,快時(shí)只有幾百ms,大大提高反應時(shí)間,并且由于不用時(shí)時(shí)召喚,總線(xiàn)數據流少,提高了總線(xiàn)的穩定性。

  參考文獻:

  1. 李朝青著(zhù),PC機及單片機數據通信技術(shù),北京航空航天大學(xué)出版社

  2 田澤著(zhù),嵌入式系統開(kāi)發(fā)與應用,北京航空航天大學(xué)出版社



關(guān)鍵詞: RS485總線(xiàn)通信速

評論


技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>