• <li id="00i08"><input id="00i08"></input></li>
  • <sup id="00i08"><tbody id="00i08"></tbody></sup>
    <abbr id="00i08"></abbr>
  • 新聞中心

    EEPW首頁 > 手機與無線通信 > 設計應用 > 兩種MCU間的串行通信協議設計

    兩種MCU間的串行通信協議設計

    作者: 時間:2011-04-12 來源:網絡 收藏

    引言
    Cortex-M3是ARM公司推出的32位處理器,使用了最新一代的ARMv7架構,具有高性能、低功耗和低成本的優點。對那些對功耗與成本敏感、但又要求較高性能的嵌入式應用來說,Correx-M3無疑是最佳解決方案;而對成本要求苛刻、運算能力要求不高的設備來說,嵌入成熟穩定的8051處理器,已經成為了業內的流行做法。目前,越來越多的嵌入式系統同時使用了上述,因此如何使Cortex-M3與8051之間可以高效地進行信息交互,是實現目標的關鍵。

    1 方案
    要進行信息交互,離不開物理接口。在嵌入式應用中,目前常用的接口有UART、SPI和I2C等接口。UART接口只需兩根數據線就可以工作,時序控制簡單,大部分設備都整合了這種接口。而且,經過電平轉換后UART的TTL電平可以轉換成RS232電平,RS232接口是計算機標準配置的接口,可以通過超級終端查看串口的數據,便于使用PC機對線路進行檢測分析。因此,本采用UART接口作為Cortex-M3與C51之間的接口。
    考慮到各種需求,本文設計了一種基于UART接口的,用于Cortex-M3和C51之間的,使Cortex-M3與C51之間可以高效地進行信息交互。當兩個之間需要進行通信的時候,發送方把原始數據下放給通信,通信按照特定格式把數據打包,通過UART接口發送給對方。接收方收到數據時,運行相應的通信協議,把數據解包,就可以得到發送方的原始數據,將其交付給上層程序。體系結構如圖1所示。

    本文引用地址:http://www.czjhyjcfj.com/article/156421.htm

    a.jpg


    如果使用其他接口,原理大體相同,只需對硬件作相應改動,即對接口控制模塊稍作修改即可投入使用。
    下面以實際工程中某種多媒體系統為例詳細說明。該系統采用了以Cortex-M3為內核的STM32處理器和嵌入了C51核的MST776視頻處理芯片,使用UART接口進行通信。

    2 具體實現
    2.1 硬件設置
    具體的器件不同,UART的工作方式也有所區別,主要表現在波特率、停止位、數據字長度等參數上。當兩個器件用UART連接時,所有參數必須完全一致,否則通信很容易出錯。在此,要特別注意波特率的設置:當線路質量好的時候,波特率可以設置得高點,以獲得較高的傳輸速率;線路質量差的時候,就要減小波特率,以降低誤碼率。
    本設計中,STM32與MST776都整合了UART接口,只需配置少量電阻;同時,線纜長度不超過20 cm,使用環境的電磁干擾小,波特率可以設置為38 400bps,甚至更高。另外,考慮到C51的處理速度較低,因此波特率不應設置得太高,避免造成C51側數據溢出,進而造成死機。
    本設計只需使用兩根數據線來實現兩個MCU之間的互連,把STM32上選定的UART接口的TX與對端的UART接口的RX相連,把RX與對端的UART接口的TX相連。


    上一頁 1 2 3 下一頁

    評論


    相關推薦

    技術專區

    關閉
    主站蜘蛛池模板: 芦山县| 高尔夫| 大城县| 华宁县| 绥棱县| 卢龙县| 武汉市| 安达市| 华亭县| 清水县| 清水河县| 嵊州市| 双桥区| 财经| 长垣县| 莆田市| 中阳县| 平泉县| 汽车| 合江县| 莒南县| 城固县| 丰都县| 台州市| 江达县| 增城市| 沿河| 山东省| 察隅县| 肥西县| 平武县| 兴义市| 砀山县| 中山市| 马山县| 城固县| 左贡县| 新昌县| 乌拉特后旗| 高安市| 山东省|