<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于SmartFusion的M3程序在線升級方案

          基于SmartFusion的M3程序在線升級方案

          作者: 時間:2012-01-10 來源:電子產(chǎn)品世界 收藏

            本文主要介紹一個基于更新M3程序的在線升級應(yīng)用方案。在傳輸距離可靠的情況下,通過UART、或者MAC將用戶板和PC機連接即可實現(xiàn)遠程升級,無需采用FlashPro3等下載器下載程序,也無需手動復(fù)位,一切工作均可由串口和上位機自動完成。如圖1所示,在線升級的M3程序主要有以下三種方式:UART、以及MAC。

          本文引用地址:http://www.ex-cimer.com/article/127925.htm

            

           

            1. 概述

            (1)技術(shù)的需求

            由于系列FPGA是行業(yè)首個智能混合信號FPGA,在嵌入式行業(yè)中的應(yīng)用越來越廣泛。然而,無論是開發(fā)商還是初學(xué)者,在使用SmartFusion器件的時候,往往都需要額外購買昂貴的調(diào)試工具,比如M3編程器和FlashPro3下載器等,而這些編程器的價格有時候比開發(fā)板還貴,這樣就打消了很多初學(xué)者購買開發(fā)板的念頭。另一方面,調(diào)試和更新程序只局限于實驗室,使用者往往需要拿到板子之后,然后采用系統(tǒng)編程(ISP)的方式更新程序。這樣使得效率大大折扣,給后續(xù)的軟件更新和升級帶來了諸多不便。

            基于SmartFusion更新M3程序的IAP在線升級應(yīng)用方案正是針對這種現(xiàn)象提出的,用戶不但可以省下購買額外調(diào)試工具的費用,只需串口線、網(wǎng)線甚至是普通的電線即可。而且調(diào)試和更新程序的范圍不再局限于實驗室,而是可以通過網(wǎng)絡(luò)通信方式實現(xiàn)遠程升級和維護。

            (2)方案比較

            如今,很多使用單片機的初學(xué)者和用戶幾乎只使用ISP和IAP兩種方式來進行器件的實驗和開發(fā),相比傳統(tǒng)編程方法的不足,這兩種方式更具有優(yōu)越性。它們各自的工作原理和特點如表1所示。

            對比以上表格可見,無論是在價格方面,還是在使用方面,IAP比ISP更具優(yōu)越性,因此,采用IAP在線升級程序更具有靈活性。

            (3)IAP系統(tǒng)框圖

            本IAP在線升級方案主要包含了控制臺程序(人機界面部分)、傳輸線(連接PC機和目標(biāo)板的橋梁)和目標(biāo)板(包含Cortex-M3處理核和IAP模塊),結(jié)構(gòu)框圖如圖2所示。整個系統(tǒng)的連接和操作相當(dāng)簡單。

            



          關(guān)鍵詞: SmartFusion IAP SPI 201112

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();