在線仿真器(ICE)是一種有效的工具,可為MCU設計人員提供調試代碼和運行硬件的能力。過去,這些都是龐大,昂貴,復雜的工具,通常很難學習和使用。它們帶有自己的臍帶連接,實際上用目標板上的微控制器替換了一個粘合版本,允許增加實時控制包裝。
幾乎普遍使用表面貼裝器件,這已不再是一種可行的方法。實際上,每個微控制器供應商都支持系統內編程,以及調試和仿真功能。調試硬件結合到當今的微控制器中,再加上使用調試串行總線(如USB和JTAG),設計工程師可以以較少侵入性和低成本的方式測試固件和硬件。讓工程師訪問所有內部MCU資源還可以縮短關鍵的產品上市周期。
本文介紹了一些微控制器調試和測試系統以及為嵌入式系統的調試和開發執行類似ICE和ICE的功能的方法。
遺留改款
正如設計工程師可以證明的那樣,MCU可以保持真正向后兼容,同時仍然在進行功能增強和性能改進。接受一些硅手術的傳統架構是Atmel AT89C51系列。這些部件基于舊的但仍然非常流行的8051架構,增加了現代外圍設備,如CAN,USB,SPI和智能卡接口。此外,更大量的閃存和RAM(高達128 K和8 K)以及混合信號功能(10位A/D轉換器)使這些舊架構能夠滿足當前的設計要求。
使用AT89OCD-01 USB仿真器(圖1),其持續實用程序的關鍵是系統內編程和仿真器支持。仿真器和Windows軟件由USB端口提供支持,允許設計人員將存儲區和特殊功能寄存器劃分為可自定義的顯示。這有助于設計人員在微控制器的所有重要部分上保持可視選項,并調試特定的功能和代碼塊。
圖1:使用串行調試技術而不是粘合劑和替換臍帶支持現代一代傳統核心,如流行的8051。
可以通過用戶定義的觸發器啟動和停止“無限”數量的軟件斷點和跟蹤緩沖區。 Atmel仿真器還支持其他標準調試和跟蹤功能,如內存位置上的步進操作和硬件斷點,特殊功能寄存器更新和RAM訪問(內部和外部)。當然,它還支持代碼下載和睡眠模式,用于調試低功耗設計。
請注意,此工具可與Java運行時環境和KeilμVision2或3軟件開發工具配合使用,以實現從代碼編寫到調試和測試的無縫轉換。目標板上的小型6針連接器是將PCB與開發和支持工具連接所需的全部(圖2)。還提供Atmel MCU產品線的產品培訓模塊。
圖2:目標板上的非侵入式6針連接器允許完整調試,分步操作和將代碼上傳到目標板。
Silicon Labs也是現代化8051內核的供應商,支持其C8051Fxx系列,具有類似的基于USB的DEBUGADPTR1-USB,它使用10針SIP調試電纜通過JTAG與目標微控制器板通信(圖3) 。為了在調試操作期間保持目標板的實時,調試器和仿真器需要32 kHz或更高的系統目標時鐘。
圖3:Segger J-Link仿真器的USB供電10針SIP接頭使用JTAG協議來驅動,監控和編程目標處理器。
ARM?支持
支持ARM系列處理器已付出了巨大的努力。這些流行的部件提供了哈佛架構RISC處理器的可擴展構造。每個基于ARM的MCU制造商都將標準化,兼容的內核與其獨特的風格相結合,以提供一系列豐富的功能集,外設,性能和功能的處理器。
大多數芯片制造商都支持第三方編譯器和工具套件,以及調試和編程接口。第三方支持來自IAR和Keil等編譯器供應商,以及Segger和Olimex等工具公司。
IAR JTAGJET-ARM提供標準的ETM 38引腳連接或20引腳Cortex SWD頭適配器,以支持ARM 7,ARM 9,ARM 11,MP和Cortex內核,僅舉幾例。它支持多核調試和高達400 MHz CPU速度的跟蹤采樣。
一些不錯的功能是它的快速代碼下載,自動進程初始化以及對所有片上斷點,觸發器和過濾的支持。它還支持Linux和RTOS,并支持嵌入式Linux調試。
Keil是工具和編程編譯器的另一個主要提供商,現在是ARM集團的一部分。該公司提供ULINKPRO高速調試和跟蹤單元,用于支持ARM 7,ARM 9和Cortex內核,它與通信堆棧和實時操作系統緊密集成(圖4)。
圖4:Keil ULINK系統將開發計算機和目標板之間的通信堆棧,代碼編譯和RTX實時操作系統緊密結合在一起。
Keil MDK-ARM是一個完整的軟件開發環境,它將C/C ++編譯器與公司的確定性RTX實時操作系統相結合。它只需要很小的內存占用。用于TCP,CAN,USB和網絡的中間件庫提供具有標準驅動程序類的堆棧,這可以節省時間。 MDK與ULINKPRO協同工作,記錄執行的指令并提供完整代碼覆蓋的時間分析。
Segger Microcontroller Systems還支持使用工具和中間件庫進行嵌入式處理器開發,并提供高級ARM工具。 8.16.28 J-LINK ULTRA + J-Link設備是基于USB的J-Tag仿真器,支持ARM內核。它使用ARM定義的標準20引腳接頭,為大多數流行的微處理器提供全速USB下載到Flash。
仿真器支持串行線查看器和串行線調試器模式,其中單個I/O提供密鑰寄存器,I/O和核心寄存器的快照映像。值得注意的是,一些微型制造商使用像Segger這樣的第三方工具作為其評估和開發套件的開發產品。它甚至可以作為MCU制造商工具集的一部分以某種形式免費提供。
不受歡迎的道路
沒有廣泛使用或添加專用功能的零件通常也需要專門的工具。 DSP處理器是填補所需角色的專用處理器架構的一個示例。
ADI公司的ADZS-ICE-100B是一款非侵入式ICE單元,可與該公司的Blackfin?系列DSP處理器配合使用。它將調試和代碼監視功能與Visual DSP ++設計環境結合在一起,以提供與其他仿真器和調試器相同的高級控制和優勢。
Microchip與專業工具制造商合作,為更專業的部件制作自己的開發工具套件。 Custom Computer Services的ICD-U64是MicrochipPIC?和dsPIC器件的在線編程器,仿真器和調試器。該開發環境帶有大量示例程序庫和C驅動程序,可用于各種串行閃存,傳感器,收發器和各種外圍芯片。
德州儀器(TI)也提供自己的工具以及支持第三方工具集。一個例子是流行但專有的MSP430系列器件,TI和Olimex的仿真器都支持這些器件。
Olimex提供內置調試器,仿真器和編程器及其MSP430-JTAG-TINY-V2工具。同樣,TI為MSP430指定的MSP-FET430PIF提供嵌入式調試和編程器工具。
-
處理器
+關注
關注
68文章
19547瀏覽量
231868 -
嵌入式
+關注
關注
5105文章
19288瀏覽量
310184 -
仿真器
+關注
關注
14文章
1020瀏覽量
84177
發布評論請先 登錄
相關推薦
使用在線仿真器(ICE)進行程序優化

使用仿真器的熱插拔功能進行調試

評論