新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于USB接口的ARM9微控制器外部存儲器下載工具— MOLY-DO

基于USB接口的ARM9微控制器外部存儲器下載工具— MOLY-DO

—— ARM9 MCU External Memory Download Tool Based on USB Interface — MOLY-DO
作者:深圳懋科科技有限公司 林鴻飛 時間:2011-02-18 來源:電子產(chǎn)品世界 收藏

  上位機(jī)

本文引用地址:http://2s4d.com/article/116955.htm

  開發(fā)工具:Microsoft Visual Studio 2005、BusHound 5.0

  原理:通過串口使用 CComPort 類與 通信,完成固件代碼搬移;配置 USB 設(shè)備驅(qū)動程序,查找 USB 設(shè)備,實(shí)現(xiàn)與下位機(jī)通信,完成對各種存儲設(shè)備的操作。注:有關(guān)UART啟動握手,詳見上文或 用戶手冊。

  難點(diǎn):CComPort類、主界面控件移動處理如:CControlPos、CSplitCtrl、CPTabCtrl等類的實(shí)現(xiàn)。

  1.LPC3250 UART5 啟動

  LPC3250 支持多種啟動方式。啟動程序可以識別、復(fù)制到內(nèi)部 SRAM(IRAM)并從如下外部源上執(zhí)行一個外部程序:

  ○ 使用UART5 或 USB 收發(fā)器的 UART 啟動。

  ○ SLC/MLC NAND Fflash 啟動。

  ○ 使用 SSP0 的 SPI 啟動。

  UART5 啟動

  UART 數(shù)據(jù)下載協(xié)議假設(shè)一個外部設(shè)備已經(jīng)連接到 UART5 或 設(shè)置為 UART 模式的 USB 收發(fā)器。數(shù)據(jù)下載協(xié)議的第一個動作就是從 UART5 發(fā)送一個 boot_id,外圍設(shè)備預(yù)計回應(yīng)一個 ‘A’(0x41)。如果收到一個 ‘A’,UART5 再發(fā) boot_id。外圍設(shè)備預(yù)計回應(yīng)一個 ‘U’(0x55)和一個 ‘3’(0x33)。如果 ‘U’ 和 ‘3’ 被接收到,之后 UART5 回應(yīng)一個 ‘R’(0x52)。外圍設(shè)備然后會預(yù)計發(fā)送一個起始地址(32 位值;以 4 個 UART 字節(jié)連續(xù)發(fā)送),接下來是代碼數(shù)量(32 位值;以 4 個 UART 字節(jié)連續(xù)發(fā)送)的傳輸。在此時,代碼將被傳輸。傳遞的代碼按字節(jié)高低順序存放在起始地址,且當(dāng)接收到正確數(shù)量的代碼后,開機(jī)程序跳轉(zhuǎn)到傳輸代碼的起始地址并退出。開機(jī)程序已經(jīng)放棄控制并轉(zhuǎn)移到開始執(zhí)行下載的程序。

  如果 ‘A’、’U’、’3’ 不是在 1 秒之內(nèi)被接收到,超時,開機(jī)程序跳至正常啟動程序。

  主應(yīng)用程序

   主窗口類CMOLYDODlg 同樣是一個 CDialog 類。在 CMOLYDODlg 類中,實(shí)現(xiàn) CScrollBar(滾動條)、CLRichEditCtrl(控制臺)、CControlPos(控制控件)、CSplitCtrl 等公用子類以及各種存儲器的操作窗口類:CTabNANDDlg、CTabNORDlg、CTabSPIDlg、CTabSDRAMDly、CTabSRAMDlg。

  自定義類 CMainOpt 用于 的主操作。在此類中,通過 USB 完成與下位機(jī)的各種通信任務(wù),如:執(zhí)行操作(發(fā)命令字)、發(fā)送文件、接收文件、對比文件等等。主應(yīng)用程序結(jié)構(gòu)圖如圖3。


上一頁 1 2 3 下一頁

關(guān)鍵詞: 懋科科技 MOLY-DO LPC3250

評論


相關(guān)推薦

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

關(guān)閉