新聞中心

        EEPW首頁 > 手機與無線通信 > 設計應用 > 基于雙DSP的并聯控制系統中串行通信的研究

        基于雙DSP的并聯控制系統中串行通信的研究

        作者: 時間:2010-01-07 來源:網絡 收藏

          TMS320F2812 的SPI 是一個高速的同步輸入/輸出端口,一般用來實現 控制器 之間和 與外圍設備之間的。SPI 有兩種操作模式:主操作模式和從操作模式。主片 控制了時鐘信號(SPICLK),它可以在任何時候通過發送SPICLK 信號來啟動數據傳輸。無論是主片還是從片,數據都是在SPICLK 的某個邊沿移出移位寄存器,在SPICLK 相反的邊沿鎖存在移位寄存器中,并且輸出和接受數據都是同時進行的。

          芯片的 SCI 是一個雙線的異步接口,也稱UART 口,一般用于接上位機(以下簡稱PC 機)。

          3 同步通信模塊的設計

          3.1 SPI 模塊的硬件設計

          讓兩個 分別工作在主、從操作模式下,兩者的引腳連接如圖2 所示。主處理器通 過SPICLK 腳向整個通信網提供時鐘,控制著系統的數據傳輸;通過SPISTE 腳給從處 理器提供片選信號,低電平有效;通過SPISIMO 腳把數據輸出到從處理器的SPISIMO 腳上; 通過SPISOMI 腳接受從機處理器SPISOMI 腳上的數據。


          3.2 同步通信流程設計及軟件實現

          在設計時,主處理器先向從處理器發送給定信息,發送完畢后,循環發送0,使SPICLK 不停地有時鐘脈沖輸出,并等待接受從處理器發送的數據。從處理器先是等待給定信息,如果接收到非零數據,則進行下一步運行并不斷向主處理器發送當前數據。

          SPI 通信主處理器的流程圖和從處理器的流程圖分別如圖3、圖4 所示。


          在完成兩個DSP 時鐘和中斷初始化后,分別對其SPI 寄存器進行設置,讓其分別處于 master 和slave 模式。主、從處理器都采用查詢方式發送數據,中斷方式接受數據。

          查詢方式發送是判斷SPI 發送緩沖器已滿標志位(SPISTS.bit.BUFFULL_FLAG)是否為空,如果為空,則將數據寫入發送緩沖寄存器(SPITXBUF)中,啟動SPISIMO 引腳的數據發送,數據發送完畢后SPISTS.bit.BUFFULL_FLAG 自動清零,等待下一次發送。

          中斷方式接受是在SPI 中斷使能位(SPICTL.bit.SPIINTENA)置位的情況下,如果接收 到數據傳送到SPI 串行數據寄存器(SPIDAT)中,SPI 中斷標志位(SPISTS.bit.INT_FLAG)置位且觸發中斷,并將數據轉移到接受緩沖寄存器(SPIRXBUF)中,如果SPIRXBUF 中數據被讀取,則SPISTS.bit.INT_FLAG 自動清零,等待下一次接受中斷。



        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 泉州市| 四平市| 仁布县| 石渠县| 龙川县| 会泽县| 乌恰县| 赤水市| 海门市| 吉林市| 枣强县| 老河口市| 海丰县| 承德市| 稻城县| 睢宁县| 清镇市| 报价| 上蔡县| 凤山市| 于都县| 平罗县| 乡宁县| 花垣县| 日喀则市| 云和县| 遂溪县| 马尔康县| 西充县| 福贡县| 麻江县| 丹寨县| 丹巴县| 许昌市| 义马市| 临猗县| 隆德县| 武城县| 偏关县| 工布江达县| 巴楚县|