新聞中心

EEPW首頁 > 模擬技術 > 設計應用 > 實現(xiàn)MAXQ2000微控制器的JTAG加載主機

實現(xiàn)MAXQ2000微控制器的JTAG加載主機

作者: 時間:2012-03-19 來源:網(wǎng)絡 收藏
的啟動加載程序命令子集。關于這方面的詳細信息,請參考您正在使用的MAXQ用戶指南附錄(English only)。對于這一情況,可以參考用戶指南附錄(English only)中"在系統(tǒng)編程"一節(jié)的啟動加載程序命令。

對于其他的MAXQ啟動加載程序,啟動加載程序提供的命令被劃分成從0到15的命令集。每一命令以命令字節(jié)開始,它包括命令集(前四個比特)以及命令專用數(shù)(后四個比特),如表5所示。作為一般規(guī)則,命令集0的命令本質上用于提供信息,所有器件均采用它;其他命令集可選。為確定某一MAXQ器件支持的命令集,請參考器件文檔。命令集0的命令05h (獲得支持的命令)返回一個位掩碼,說明啟動加載程序支持的其他命令集。

支持以下的啟動加載程序命令集。
  • 命令集0—信息和狀態(tài)。該集的命令可用于獲得MAXQ器件的基本信息,包括ROM/啟動加載程序的標識和版本,最近命令的結果(狀態(tài)碼),程序和數(shù)據(jù)存儲器的容量等。該集還包括主機擦除命令,清除器件所有的程序和數(shù)據(jù)存儲器。
  • 命令集1—裝入可變長度。該集中的這一命令可用于裝入程序(閃存)或者數(shù)據(jù)(RAM)存儲器。
  • 命令集2—卸載可變長度。該集中的這一命令可用于讀取程序或者數(shù)據(jù)存儲器的內容。
  • 命令集3—CRC可變長度。該集中的這一命令可用于獲得對某一范圍程序或者數(shù)據(jù)存儲器計算得到的CRC-16值。
  • 命令集4—驗證可變長度。該集中的這一命令可用于驗證某一范圍的程序或者數(shù)據(jù)存儲器是否和主機提供的數(shù)據(jù)匹配。
  • 命令集5—裝入和驗證可變長度。該集中的這一命令在一個命令中結合了裝入和驗證命令的功能。
  • 命令集6—擦除可變長度。對于MAXQ2000,該命令可用于把數(shù)據(jù)RAM中的某一區(qū)域清零。
  • 命令集7—擦除固定長度。對于MAXQ2000,該命令可用于擦除閃存程序存儲器中的每一頁面,而不必利用主機擦除命令將所有閃存一次擦除。
一旦MAXQ的TAP控制器被用于使進入加載模式(對于所有MAXQ微控制器,這一過程是相同的),第一步是確定加載程序能否響應。最快的方法是重復發(fā)送啟動加載程序命令代碼00h (無操作)。每一啟動加載程序命令完成后,啟動加載程序以提示符('>'或者3Eh)字節(jié)響應。如果發(fā)送00h導致收到3Eh,則表明啟動加載程序正在運行,準備接收命令。

表5. MAXQ加載程序命令集
    <th id="lsoo9"></th>
    Bit 7Bit 6Bit 5Bit 4Bit 3Bit 2Bit 1Bit 0CodeFamily/Command
    0000xxxx0 x hFamily 0—Informational Commands
    0000000000hNo Operation
    000101hExit Loader
    001002hMaster Erase
    001103hPassword Match
    010004hGet Status
    010105hGet Supported Commands
    011006hGet Code Memory Size
    011107hGet Data Memory Size
    100008hGet Loader Version
    100109hGet Utility ROM Version
    10100AhSet Word/Byte Access Mode
    11010DhGet ID Information
    0001xxxx1 x hFamily 1—Variable-Length Load
    0001000010hLoad Code Variable Length
    0001000111hLoad Data Variable Length
    0010xxxx2 x hFamily 2—Variable-Length Dump
    0010000020hDump Code Variable Length
    0010000121hDump Data Variable Length
    0011xxxx3 x hFamily 3—Variable-Length CRC
    0011000030hCRC Code Variable Length
    0011000131hCRC Data Variable Length
    0100xxxx4 x hFamily 4—Variable-Length Verify
    0100000040hVerify Code Variable Length
    0100000141hVerify Data Variable Length
    0101xxxx5 x hFamily 5—Variable-Length Load and Verify
    0101000050hLoad/Verify Code Variable Length
    0101000151hLoad/Verify Data Variable Length
    0110xxxx6 x hFamily 6—Variable-Length Erase
    0110000060hErase Code Variable Length
    0110000161hErase Data Variable Length
    0111xxxx7 x hFamily 7—Reserved (for expansion)
    1000xxxx8 x hFamily 8—Reserved (for expansion)
    1001xxxx9 x hFamily 9—Fixed-Length Load
    1001000090hLoad Code Fixed Length
    1001000191hLoad Data Fixed Length
    1010xxxxA x hFamily A —Fixed-Length Dump
    10100000A0hDump Code Fixed Length
    10100001A1hDump Data Fixed Length
    1011xxxxB x hFamily B—Fixed-Length CRC
    10110000B0hCRC Code Fixed Length
    10110001B1hCRC Data Fixed Length
    1

    關鍵詞: MAXQ2000 微控制器 JTAG

    評論


    相關推薦

    技術專區(qū)