新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > MCU引腳翻轉測試

        MCU引腳翻轉測試

        作者: 時間:2016-11-24 來源:網絡 收藏
        STM32的IO口速率可達50MHz,但IO口作為讀寫信號讀寫數據時,翻轉速率沒有那么快。

        在使用STM32讀取數字攝像頭數據、寫入TFT中時,涉及數據傳輸速率的問題,需要IO口快速翻轉。所以,我做了這個實驗,測試STM32的IO口最快翻轉速率

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

        測試共分三部分:
        (1)通過IO口的翻轉讀取外部數據:
        GPIOD->BSRR=1<<5;
        i=PDi;
        GPIOD->BRR=1<<5;
        (2)純粹的IO翻轉速率:
        GPIOD->BSRR=1<<5;
        GPIOD->BRR=1<<5;
        (3)通過FSMC方式訪問外部數據
        FIFO_DATA=1;

        測試條件:72MHz主頻,FLASH_Latency_2
        測試結果:
        程序運行在flash中 程序運行在ram中

        高等優化:
        讀數據: 4.8MHz 3.6MHz
        IO翻轉: 10MHz 7.2MHz
        FSMC: 8MHz 6.5MHz

        低等優化:
        讀數據: 2MHz 2.666MHz
        IO翻轉: 3.1MHz4MHz
        FSMC: 5.1MHz 4.8MHz

        又配置了DMA進行數據傳輸,其傳輸速率與FSMC的速率基本完全一致。

        同時,又使用飛思卡爾的MC9S12XS128處理器做了引腳翻轉實驗,在60MHz主頻下,讀數據速率為3.5MHz,IO翻轉速度為5.4MHz,而且還可以再提升。

        結果中可以看出:
        雖然STM32的主頻可達72MHz,但其引腳翻轉速率并不能做到很快。尤其在flash中運行時,受FLASH_Latency的限制,只有在主頻為36MHz時,FLASH_Latency才能達到0而穩定運行。此時的執行效率才能達到手冊上宣稱的1.25個百萬指令周期每秒每兆赫茲。然而,這卻并不是處理器的最高處理速度。但在主頻72MHz時,又不能達到執行效率的最高。


        高等速度優化可以顯著提高引腳翻轉速度(從反匯編來看,還可以繼續提高)但最快的數據傳輸仍然是FSMC,而且,FSMC也是最有效的數據傳輸模式,因為它還包括相應的地址線輸出,可以同時自動完成OE、CS、RS等信號的選擇,這是IO模擬數據傳輸所不能的。


        與其他處理器相比,(例如MC9S12XS128)STM32的數據傳輸并沒有多大的優勢(甚至有點慢)。當然S12已經超頻50%了。STM32的高速數據傳輸要靠高等優化來完成,而這是比較危險的。所以,只能靠對C語言的了解,和對代碼優化的經驗,才能更好的使用STM32。


        對于了解它的人,STM32絕對是他手中利器




        關鍵詞: MCU引腳翻

        評論


        技術專區

        關閉
        主站蜘蛛池模板: 纳雍县| 高安市| 浙江省| SHOW| 葫芦岛市| 来凤县| 壤塘县| 铁力市| 揭东县| 渭南市| 东宁县| 齐齐哈尔市| 平罗县| 谢通门县| 太仓市| 敖汉旗| 军事| 通道| 马尔康县| 理塘县| 老河口市| 文成县| 平山县| 车险| 三穗县| 绍兴县| 宁陕县| 临澧县| 承德县| 峨眉山市| 建始县| 贵南县| 岳阳市| 襄垣县| 揭阳市| 绥江县| 搜索| 深泽县| 敦化市| 文登市| 那坡县|