1. <tt id="5hhch"><source id="5hhch"></source></tt>
    1. <xmp id="5hhch"></xmp>

  2. <xmp id="5hhch"><rt id="5hhch"></rt></xmp>

    <rp id="5hhch"></rp>
        <dfn id="5hhch"></dfn>

      1. 基于80C166單片機PEC服務的PROFIBUS-FDL從站協議實現

        時間:2024-08-11 13:59:34 理工畢業論文 我要投稿
        • 相關推薦

        基于80C166單片機PEC服務的PROFIBUS-FDL從站協議實現

        摘要:在詳細分析西門子80C166單片機PEC服務工作機制和PROFIBUS-FDL幀格式的基礎上,提出了基于該種單片機PEC服務機制的PROFIBUS-FDL從站協議的實現方法,并在實際工作中得到成功應用。

        當前工業設備制造技術正向高性能、專用化、分布式、網絡化方向發展。以前,大量使用PLC實現的控制系統,實踐證明雖然安全可靠,但由于PLC本身的技術原因,很難達到更快速的實時控制要求?它們正被高性能的嵌入式專用控制器替代。這種專用控制器的設計,可以進一步提高設備的控制性能;引入現場總線技術,保證專用控制器的系統可集成性,以適應當前分布式、網絡化的應用趨勢。

        本文是在研制棒材生產線飛剪的專用控制器時涉及的一個子課題。為保證該控制器能與現有PLC網連接以及與遠程操作站通信,在幾乎不增加硬件的基礎上,利用核心CPU——西門子80C166所具有的一個類似DMA的功能高效率地實現PROFIBUS-FDL從站協議。

        1 西門子80C166單片機

        80C166單片機是西門子C166系列16位嵌入式微控制器的第一代產品。其體系結構如圖1所示。它結合RISC處理器的優點,克服了CISC處理器在嵌入式應用中的瓶頸;在25MHz時鐘頻率下,可達到12.5MIPS,幾乎所有的指令執行時間小于80ns;在指令處理上,采用四級指令流水線管道結構;在存儲管理上,統一線性地址空間可達256KB,具有段?代碼?、頁?數據?式管理機制;采用寄存器池,上下文切換時間只要80ns;16位乘法400ns,32位除法800ns,中斷響應時間最慢400ns;外部事件控制器PEC服務具有類似DMA的功能,可實現存儲器與外設之間的高速數據傳輸;豐富的在片外設:1KB RAM、10路A/D、76路I/O、7個定時器/計數器、16個比較/捕獲單元、2個串行通信接口、在片的WATCHDOG等。

        圖1 西門子80C166體系結構

        2 80C166的PEC服務

        2.1 80C166的PEC服務機制

        PEC是外部事件控制器的英文縮寫。PEC服務是80C166提供的一種特殊數據傳輸機制。其目的是在原有的中斷控制器基礎上,用較小的硬件代價、盡可能少占用處理機周期實現內存與外部設備的快速數據交換?類似DMA,但無需專用的DMA控制器?。80C166有8路PEC服務通道。用PEC服務進行一次數據傳輸,僅占用處理機一個機器周期?20MHz時100ns,且不影響當前程序的執行。

        2.2 PEC服務的工作過程

        通常,當普通中斷事件發生時,系統將保存當前CPU狀態PSW和程序的地址;然后,根據不同的中斷源,進行上下文切換,裝載相應的中斷矢量,執行相應的中斷服務程序;執行完后,恢復被中斷程序的上下文,繼續執行被中斷程序。

        對于某一PEC服務,它總是與一具體中斷源、中斷矢量或中斷服務相聯系。在80C166中,當一個中斷的中斷優先級為最高級14或15且定義了與之相關聯的PEC服務通道時,該中斷就具有PEC服務功能。這時,當該中斷請求發生時,將不觸發中斷服務程序的執行,而是觸發PEC服務。當PEC服務經過設定的若干次的外部事件觸發后,再觸發執行相應的中斷服務程序(一個普通中斷過程)。

        如圖2所示。一次PEC服務的工作過程是由PEC控制寄存器定義的,其中計數位域(8位傳送計數器)COUNT定義了PEC服務的數據傳輸次數;源指針、目的指針指明具體的數據傳輸來源和目的;PEC服務的數據傳輸過程完全由硬件執行:當中斷請求發生時,由硬件將源指針所指單元的內容傳給目的指針所指的單元,然后由PEC控制寄存器相應定義位控制是源指針還是目的指針增加1或2,同時COUNT值減1;當多次中斷請求使COUNT減為0時,PEC服務完成,觸發與之關聯的中斷服務程序。

        2.3 PEC服務應用優勢

        以串口接收一幀16字節的數據為例。若采用傳統的串口接收方式,每接收到一字節,產生一個中斷;在中斷服務程序中,要將它從串口接收緩沖器中取出,順序放到幀接收緩沖區相應單元中;當接收滿16字節后,進行幀處理。

        如果采用PEC服務的方式,只要事先定義好PEC通道就可以了。首先,定義串口接收中斷優先級為14或15以及與之相關聯的PEC通道。即定義相應PEC通道控制寄存器為:COUNT為16字節傳輸,源指針為串口接收緩沖器,目的指針為幀接收緩沖區首址且每次傳輸完成后,目的指針加1。這樣,串口每接收到一字節,將觸發一次PEC服務,由硬件將數據從串口接收緩沖器中取出,順序放到幀接收緩沖區相應單元中,但當前執行的程序并不被中斷;當16字節完全接收完成后,觸發串口接收中斷服務程序,進行幀的處理。

        與傳統的串口接收方式相比較,PEC服務方式在進行數據傳輸時不中斷當前程序的執行,因此節省了大量的上下文切換時間,處理機效率得到大大提高。

        下面討論采用80C166的PEC服務實現PROFIBUS-FDL從站協議的方法。

        3 PROFIBUS-FDL幀結構分析

        3.1 PROFIBUS-FDL幀結構

        PROFIBUS幀的格式有多種形式,但對于從站來說,只要處理三種幀即可。

        .無數據且長度固定的幀:

        .帶數據域且長度固定的幀:

        【基于80C166單片機PEC服務的PROFIBUS-FDL從站協議實現】相關文章:

        基于Web的單片機遠程監控系統的設計與實現03-07

        基于單片機的電力監控系統交流采樣技術的實現03-18

        基于單片機控制的數字氣壓計設計與實現03-18

        基于單片機的選頻表自動變步長的設計實現03-19

        HMAC認證協議的單片機實現03-18

        基于圖像的OMR技術的實現03-07

        單片機實現對CF卡的讀寫03-18

        一種基于KEELOQ的改進加密算法及其在單片機中的實現技術03-18

        基于單片機的MicroDrive接口設計03-20

        国产高潮无套免费视频_久久九九兔免费精品6_99精品热6080YY久久_国产91久久久久久无码

        1. <tt id="5hhch"><source id="5hhch"></source></tt>
          1. <xmp id="5hhch"></xmp>

        2. <xmp id="5hhch"><rt id="5hhch"></rt></xmp>

          <rp id="5hhch"></rp>
              <dfn id="5hhch"></dfn>