日本a√视频在线,久久青青亚洲国产,亚洲一区欧美二区,免费g片在线观看网站

        <style id="k3y6c"><u id="k3y6c"></u></style>
        <s id="k3y6c"></s>
        <mark id="k3y6c"></mark>
          
          

          <mark id="k3y6c"></mark>

          新聞中心

          EEPW首頁 > 手機與無線通信 > 設計應用 > 基于FPGA+DSP的多串口數據通信的實現

          基于FPGA+DSP的多串口數據通信的實現

          作者: 時間:2011-03-23 來源:網絡 收藏

            由于用戶控制指令(包括信號處理板配置參數、輸出數據類型控制等)與差分修正數據的數據長度和數據持續(xù)性有很大區(qū)別,在常規(guī)數據傳輸方式之外對每個增設數據塊傳輸模式。數據塊傳輸模式可用于持續(xù)性大量數據的輸入,采用每個對兩塊RAM進行乒乓讀寫操作的來方案。是否采用數據塊傳輸模式由的控制寄存器中的第14位(P_flag)決定。對于非數據塊輸入模式中緩存大小需要根據常規(guī)數據最大長度來設定,過小會導致部分數據丟失。當有數據需要輸出時,由向NIOS II CPU的RAM寫入各UART輸出控制寄存器的設定值,并通過GPIO向其發(fā)出中斷信號。可在NIOS II CPU的main函數中設置一個循環(huán)檢測是否有由輸入的中斷信號,若有再檢測各UART的輸出控制寄存器。輸出流程圖如圖4所示。

          串口數據輸出流程

          圖4 串口數據輸出流程

            圖4中SET_EN用于設置個串口的輸入模式(是否乒乓輸入及乒乓輸入時緩存的大?。┖痛谑鼓艿炔僮鳎斎肟刂萍拇嫫鞯哪J值在系統(tǒng)初始化時由寫入。

            當數據輸入時,NIOS II CPU檢測到來自串口的中斷請求,進入對應的中斷響應程序。首先對數據傳輸模式進行判斷,P_flag默認值為0,表示非數據塊輸入模式。該模式下輸入的數據有特定的結尾標志符組合,一旦檢測到結束標志則發(fā)送已緩存的數據并完成狀態(tài)清零以便下次接收;P_flag為1則為連續(xù)數據塊輸入,當Half_BAM0或Half_RAM1其中一塊寫滿時即向DSP發(fā)出中斷信號,DSP即進入中斷服務程序讀取數據。程序流程圖如圖5所示。

          程序流程圖

          圖5 程序流程圖

            3 結束語

            采用Altera 芯片上的NIOS II CPU控制串口的優(yōu)點是充分使用硬件資源,可以減輕DSP芯片的計算量。測試表明,NIOS II CPU工作頻率為20.46 MHz,串口波特率設置為115 200,數據位為8 bit,各串口可以同時正常輸入輸出。多串口可以同時輸入輸出數據,由指令可以靈活配置傳輸模式,以適應不同數據傳輸類型的需求。

            本文解決了單串口傳輸不能滿足GPS高精度接收機對多種數據同時輸入輸出的要求,了GPS定位結果、RTK差分數據與外界的實時交換以及用戶控制命令的輸入。本方案的優(yōu)點是通過增加各串口的輸入/輸出控制寄存器,使DSP芯片可以僅以兩個GPIO資源原本需要3個串口輸入/輸出功能相對應的6個中斷操作;采用NIOS II CPU進行多串口控制可以減少硬件調試時間,節(jié)約片內資源。不足之處是未實現串口波特率、數據位等實時配置。


          上一頁 1 2 3 下一頁

          評論


          相關推薦

          技術專區(qū)

          關閉