中文字幕 另类精品,亚洲欧美一区二区蜜桃,日本在线精品视频免费,孩交精品乱子片免费

<sup id="3hn2b"></sup>

    1. <sub id="3hn2b"><ol id="3hn2b"></ol></sub><legend id="3hn2b"></legend>

      1. <xmp id="3hn2b"></xmp>

      2. 新聞中心

        EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應用 > 一種嵌入式現(xiàn)場總線通信網(wǎng)關(guān)的設(shè)計與實現(xiàn)

        一種嵌入式現(xiàn)場總線通信網(wǎng)關(guān)的設(shè)計與實現(xiàn)

        作者: 時間:2013-06-14 來源:網(wǎng)絡(luò) 收藏

        3.3 主站、從站的收發(fā)程序設(shè)計
        作為從站時的主要工作是初始化串口,初始化定時器,配置嵌套向量中斷控制器(NVIC),分別對串口接收數(shù)據(jù)中斷和定時器中斷設(shè)置響應優(yōu)先級和搶占優(yōu)先級。從數(shù)據(jù)緩沖區(qū)A中獲得數(shù)據(jù),對獲得的數(shù)據(jù)生成CRC校驗碼,組成幀從串口按照時序發(fā)送這一幀數(shù)據(jù)。
        串口初始化如下:
        d.JPG
        i.jpg
        MODBUS協(xié)議規(guī)定了2種傳輸模式:ASCII模式和RTU模式。本文設(shè)計的使用RTU模式傳輸,在此模式下報文中每個8位字節(jié)含有2個4位16進制字符它的優(yōu)點是較高的數(shù)據(jù)密度,在相同的波特率下比ASCII模式有更高的吞吐率。命令幀由地址碼、功能碼、數(shù)據(jù)語和CRC校驗碼構(gòu)成。在RTU模式下,幀與幀之間必須由時長至少為3.5個字符時間的空閑間隔區(qū)分。整個幀必須以連續(xù)的字符流發(fā)送,如果兩個字符之間的空閑間隔大于1.5個字符時間,則該幀被認為不完整的幀而被丟棄,接收設(shè)備假定下一字節(jié)是一個新消息的地址域。
        MODBUS主站程序需要使用3個定時器,其中TIM2用于控制發(fā)送的3.5個字符的幀間隔。TIM3用于控制接收MODBUS從站的回應幀的3.5個字符的幀間隔。TIM4用于接收時確保字符間的間隔小于1.5個字符時間。初始化TIM2與TIM3,定時時間為定時3.645 8 ms(波特率為9 600 b/s時的3.5字符時間):
        e.JPG
        作MODBUS主站的工作流程如圖7所示。

        本文引用地址:http://www.antipu.com.cn/article/148017.htm

        f.JPG


        網(wǎng)關(guān)工作在MODBUS主站模式時對從站響應幀的接收使用中斷處理的方式。在第一個字節(jié)傳輸結(jié)束后啟動TIM4定時器,定時時間為1.5個字符時間,在后續(xù)的字節(jié)傳輸結(jié)束時清零計數(shù)器,保證一個幀中的字符間隔不超過1.5個字符時間。接收完成后啟動定時器TIM3,定時3.5個字符時間,在此時間內(nèi)的接收的任何數(shù)據(jù)都將丟棄。
        網(wǎng)關(guān)作為MODBUS從站時對化串口和定時器的初始化與MODBUS主站相同,將數(shù)據(jù)組成CAN的幀,發(fā)送該幀,并向MODBUS主站發(fā)送響應幀。網(wǎng)關(guān)作為MODBUS從站的工作流程如圖8所示。

        g.JPG


        3.4 主程序
        主程序中初始化FSMC,初始化LCD,初始化觸摸屏,校正觸摸屏,顯示工作模式選擇界面、參數(shù)配置界面及當前工作模式界面。根據(jù)選擇進入相應工作模式。

        4 測試結(jié)果
        在PC機上使用串口助手和USB-CAN軟件模擬與MODBUS的收發(fā)。MODBUS到的通信模擬:由PC機向網(wǎng)關(guān)發(fā)送一幀數(shù)據(jù)00 01 02 03 0405 06 07,網(wǎng)關(guān)設(shè)置幀ID為0x321并發(fā)出數(shù)據(jù),通過CANUSB軟件接收該數(shù)據(jù)為00 01 02 03 04 05 06 07。如圖9所示。到MODBUS的通信模擬:使用CAN-USB軟件發(fā)送一幀0f 14 0f 05 00 01 02 03,網(wǎng)關(guān)解析其中數(shù)據(jù)00 01 02 03,并作為MODBUS主站發(fā)送數(shù)據(jù),將數(shù)據(jù)輸出到串口助手為00 01 02 03。如圖10所示。

        h.JPG



        5 結(jié)語
        本文設(shè)計實現(xiàn)了一種在CANBUS和MODBUS間進行透明的數(shù)據(jù)傳輸?shù)那度胧浆F(xiàn)場總線通信網(wǎng)關(guān),軟硬件設(shè)計簡單,通信參數(shù)可現(xiàn)場配置,能夠很好地實現(xiàn)CANBUS與MODBUS間的通信。該網(wǎng)關(guān)解決了異類現(xiàn)場總線間通信的問題,使系統(tǒng)的兼容性、互聯(lián)性、可擴充性都得到了極大的提高,具有良好的應用前景。

        通信相關(guān)文章:通信原理



        上一頁 1 2 下一頁

        評論


        相關(guān)推薦

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

        關(guān)閉