新聞中心

        EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 一種多協(xié)議的嵌入式總線集成器的設計與研究

        一種多協(xié)議的嵌入式總線集成器的設計與研究

        作者: 時間:2009-10-28 來源:網絡 收藏
        由于工業(yè)現場在工業(yè)控制、智能儀器儀表、數據采集等方面得到了廣泛的應用,因此對于的需求也應運而生。不同種類的現場側重于各自的應用領域,導致基于各種現場總線的產品由于的不同而無法相互通信。而一些傳統(tǒng)的總線方法采用總線橋級連的方式來完成之間的通信,存在通信延時大、穩(wěn)定性差、節(jié)點通信困難等缺點。針對以上問題,本文提出一套總線器的方案。該系統(tǒng)同時支持LonWorks、PPI、Open和TCP/IP協(xié)議, C8051F120作為主控制芯片,采用模塊化結構,提供實時監(jiān)測數據功能,具有成本低、實時性高、可移植能力強等特點,有較高的組態(tài)性和靈活性[1~2]
        1 系統(tǒng)總體與工作流程
        1.1 系統(tǒng)的總體

          系統(tǒng)結構框圖如圖1所示。C8051F120是整個系統(tǒng)的主控制芯片,負責對數據的處理和交換,包括通過RTL8019與以態(tài)網的通信,通過UART口與PPI總線通信,通過RS232口與LonWorks總線通信以及和總線控制器SJA1000通信等。模塊和LON模塊分別完成對CAN和LON數據的收發(fā)處理。一方面,系統(tǒng)分別作為LonWorks、PPI、CANOpen總線的一個節(jié)點,完成相應通信協(xié)議的通信及數據解析;另一方面,系統(tǒng)又要能夠完成各總線之間的數據轉發(fā)與共享。同時,為了支持遠程監(jiān)控能力,系統(tǒng)必須提供以太網接口以支持Internet功能。為了在現場提供監(jiān)測環(huán)境,系統(tǒng)設計了人機界面[3]

        本文引用地址:http://www.104case.com/article/152308.htm

        1.2 各模塊工作流程
          主控制芯片C8051F120與RTL8019之間的接口是通過并行方式擴展的,為避免RTL8019A在C8051F120上的映射地址空間與 C8051F120內部的8KB RAM地址空間 (0X0000~0X3FFF)重迭,擴展的外部設備被放到最高端(0X8000~0XFFFF),并采用非復用方式連接。模塊中還包括RS232與RS485之間的轉換。SN75LBC176是RS485差分總線收發(fā)器芯片。RS232數據由TX0通過光隔傳送到SN75LBC176的發(fā)送端 ,同時驅動發(fā)送控制端,數據就由SN75LBC176發(fā)送到RS485總線。當SN75LBC176接收數據時,數據傳送到RS232的RX0端。這樣就完成RS485到RS232的轉換。在系統(tǒng)中,為了提供人機交互的功能,設計了T6963C點陣式液晶圖形顯示控制器,在設計時,需要用一根地址線來實現液晶的數據通道和指令通道的區(qū)分。T6963C外接114×64的液晶顯示屏,可以提供監(jiān)測數據顯示的實例。
          CAN總線模塊由SJA1000、82C250、6N137等芯片組成。SJA1000是并行接口的CAN控制器。82C250是CAN控制器接口芯片。當C8051F120要向某節(jié)點發(fā)送數據時,它向SJA1000的一些緩沖器寫數據和命令。數據通過SJA1000處理后,合成CAN幀格式,通過6N137至82C250,由82C250的差分端CANH和CANL傳送到物理總線。外部節(jié)點發(fā)送過來的數據通過82C250經光電隔離器6N137后被SJA1000接收,存放在SJA1000相應的寄存器中。C8051F120就可以讀取這些CAN幀格式數據。
          LON模塊由MC143150、FTT-10A、MC145407以及外擴SRAM儲存器IS61C256AH-15N和外擴Flash存儲器AT29C512組成。MC143150是LonWorks控制芯片,含有Lontalk協(xié)議的固態(tài)軟件,主要用于LonWorks數據的處理。FTT-10A 是LonWorks收發(fā)器,它是一種變壓器耦合收發(fā)器,支持網絡的自由拓撲結構,作為LON網的網絡介質的接口。MC145407是電平轉換芯片,負責MC143150與RS232之間的電平轉換。當C8051F120要向MC143150發(fā)送數據時,C8051F120把數據發(fā)送到串口緩沖區(qū),通過MC145407將I/O引腳輸入的TTL 電平和輸出的CMOS 電平轉換為EIA232C電平。MC143150收到數據信息后,將數據讀入儲存于MC143150的緩沖區(qū)中,然后由MC143150 打包為LonWorks網絡變量,通過不同節(jié)點、相同類型的網絡變量的互聯, 即可實現LON 節(jié)點之間的數據傳送。另外,還外擴SRAM儲存器IS61C256AH-15N和Flash存儲器AT29C512,讓用戶能編制使用較大的程序。
        2 軟件設計
        2.1 系統(tǒng)的分層結構

          整個系統(tǒng)采用分層方式完成各協(xié)議間的通信。系統(tǒng)分為硬件驅動層、協(xié)議層及其應用層,如圖2所示。


          由于下層模塊只向上層提供一個軟件接口,屏蔽了下層的具體實現細節(jié)。上層軟件只有通過該接口才能與下層軟件發(fā)生聯系,這樣就保證了各層之間的獨立性。系統(tǒng)根據硬件接口、總線協(xié)議的不同,分為三個大的分層功能模塊,它們分別是LonWorks模塊、PPI模塊、 CANOPEN模塊。這些模塊又各自提供了硬件接收緩沖區(qū)、硬件發(fā)送緩沖區(qū)、協(xié)議接收緩沖區(qū)、協(xié)議發(fā)送緩沖區(qū)[4~5]

        linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)

        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區(qū)

        關閉
        主站蜘蛛池模板: 辽源市| 沁阳市| 鸡泽县| 靖边县| 玉树县| 德江县| 进贤县| 清新县| 聊城市| 财经| 雅江县| 长岛县| 旬邑县| 青河县| 荣成市| 千阳县| 霍林郭勒市| 唐山市| 金沙县| 广东省| 高密市| 砀山县| 津市市| 通州区| 河间市| 巫溪县| 鄂托克前旗| 监利县| 临高县| 凤翔县| 渝中区| 房产| 长垣县| 九台市| 高清| 达日县| 犍为县| 睢宁县| 资源县| 青浦区| 崇州市|