深入了解Renesas E1/E20 Emulator:從規(guī)范到應(yīng)用
引言
在微控制器(MCU)的開(kāi)發(fā)過(guò)程中,調(diào)試工具起著至關(guān)重要的作用。Renesas的E1/E20 Emulator就是一款強(qiáng)大的調(diào)試工具,它能幫助工程師更高效地開(kāi)發(fā)和調(diào)試基于R8C Family的MCU項(xiàng)目。本文將詳細(xì)介紹E1/E20 Emulator的規(guī)格、使用方法、調(diào)試功能以及使用時(shí)的注意事項(xiàng),希望能對(duì)廣大電子工程師有所幫助。
文件下載:R5F2134CWJFP#U0.pdf
1. E1/E20 Emulator 規(guī)格
1.1 目標(biāo)MCU
E1/E20 Emulator支持R8C Family的多個(gè)系列,包括R8C/3x Series和R8C/Lx Series。具體涵蓋了如R8C/32C、R8C/33C等眾多型號(hào)的MCU,為開(kāi)發(fā)者提供了廣泛的選擇。
1.2 仿真器規(guī)格
- 類(lèi)型:包括E1 (R0E000010KCE00) 和 E20 (R0E000200KCT00) 兩種型號(hào)。
- 電源:無(wú)需外部電源,通過(guò)USB總線由主機(jī)供電。
- 適用調(diào)試器:R8C E1/E20 Emulator Debugger。
- 工作環(huán)境:溫度在10°C - 35°C(活動(dòng)狀態(tài))和 -10°C - 50°C(非活動(dòng)狀態(tài));濕度在35% RH - 80% RH,無(wú)冷凝;振動(dòng)活動(dòng)狀態(tài)下最大2.45 m/s2,非活動(dòng)狀態(tài)下最大4.9 m/s2,運(yùn)輸時(shí)最大14.7 m/s2;周?chē)h(huán)境無(wú)腐蝕性氣體。
1.3 適用工具鏈和第三方產(chǎn)品
可以調(diào)試由內(nèi)部工具鏈和第三方產(chǎn)品創(chuàng)建的模塊,如M3T - NC30WA V.5.20 Release 01或更高版本的工具鏈,以及IAR EWM16C V.2.12或更高版本、TASKING M16C C/C++/EC++ Compiler V.2.3r1或更高版本的第三方產(chǎn)品。不過(guò)使用TASKING M16C C/C++/EC++編譯器V3.0r1創(chuàng)建的ELF/DWARF2格式加載模塊調(diào)試時(shí),顯示基類(lèi)成員變量需要注意一些問(wèn)題。
2. 用戶系統(tǒng)設(shè)計(jì)
2.1 連接器選擇
在將E1或E20仿真器連接到用戶系統(tǒng)之前,需要在用戶系統(tǒng)上安裝連接器。推薦使用3M Limited的2514 - 6002(用于國(guó)外)或7614 - 6002(用于日本)14 - 針連接器。連接時(shí)要注意,在14 - 針連接器周?chē)?毫米范圍內(nèi)不要安裝高度超過(guò)10毫米的組件,并且要將引腳2、12和14牢固連接到用戶系統(tǒng)板的GND上。
2.2 小連接器轉(zhuǎn)換適配器
使用E1仿真器的小連接器轉(zhuǎn)換適配器(R0E000010CKZ11)時(shí),連接器引腳分配與標(biāo)準(zhǔn)接口連接器不同。使用時(shí)要特別注意引腳分配,避免連接錯(cuò)誤。
2.3 系統(tǒng)接地連接
仿真器的信號(hào)接地與用戶系統(tǒng)的信號(hào)接地相連,仿真器中信號(hào)接地和框架接地連接,但在用戶系統(tǒng)中,僅連接框架接地,不要將信號(hào)接地與框架接地連接,否則可能因接地電位不同導(dǎo)致冒煙、起火或觸電。
3. 調(diào)試準(zhǔn)備
3.1 激活高性能嵌入式工作室
連接仿真器到主機(jī)和用戶系統(tǒng),從[Start]菜單的[Programs]中選擇[Renesas -> High - performance Embedded Workshop -> High - performance Embedded Workshop],在彈出的[Welcome!]對(duì)話框中選擇啟動(dòng)方式,包括創(chuàng)建新項(xiàng)目工作區(qū)、打開(kāi)最近的項(xiàng)目工作區(qū)或?yàn)g覽其他項(xiàng)目工作區(qū)。
3.2 創(chuàng)建工作區(qū)
- 未使用工具鏈:在[Welcome!]對(duì)話框中選擇[Create a new project workspace],啟動(dòng)項(xiàng)目生成器,輸入工作區(qū)名稱(chēng)、項(xiàng)目名稱(chēng)、目錄,選擇CPU系列,設(shè)置調(diào)試目標(biāo)和配置文件名,完成后點(diǎn)擊[Finish]啟動(dòng)高性能嵌入式工作室,最后連接仿真器。
- 使用工具鏈:步驟與未使用工具鏈類(lèi)似,但在項(xiàng)目生成器中需要選擇合適的工具鏈。
3.3 連接和斷開(kāi)仿真器
連接仿真器可以通過(guò)在啟動(dòng)前進(jìn)行仿真器設(shè)置,選擇[Debug Settings…]并設(shè)置調(diào)試目標(biāo)、下載模塊和自動(dòng)執(zhí)行命令鏈;也可以加載已注冊(cè)仿真器使用設(shè)置的會(huì)話文件。斷開(kāi)仿真器可從[Debug]菜單選擇[Disconnect],點(diǎn)擊[Disconnect]工具欄按鈕或在[Command Line]窗口輸入斷開(kāi)命令。
3.4 調(diào)試相關(guān)設(shè)置
- 指定下載模塊:從[Debug]菜單選擇[Debug Settings…],在[Target]下拉列表中選擇要連接的產(chǎn)品,在[Debug format]下拉列表中選擇加載模塊的格式,然后在[Download modules]列表框中注冊(cè)模塊。
- 設(shè)置自動(dòng)執(zhí)行命令行批處理文件:點(diǎn)擊[Debug Settings]對(duì)話框的[Options]選項(xiàng)卡,選擇命令鏈自動(dòng)執(zhí)行的時(shí)機(jī),如在仿真器連接時(shí)、下載模塊前、下載模塊后或復(fù)位后,然后將命令批處理文件添加到[Command Line Batch Processing]列表框。
4. 調(diào)試功能
4.1 調(diào)試功能列表
不同操作模式下支持的功能有所不同。在[Writing the on - chip flash memory mode]模式下,支持程序下載、在線幫助和命令行功能;在[Debugging mode]模式下,支持更多功能,如重置功能、內(nèi)存訪問(wèn)功能、斷點(diǎn)功能、跟蹤功能、堆棧跟蹤功能等。
4.2 程序下載
從[Debug]菜單選擇[Download],選擇要下載的加載模塊,也可以在[Workspace]窗口的[Download modules]下右鍵點(diǎn)擊加載模塊選擇[Download],或雙擊加載模塊名稱(chēng)。下載前需要將其注冊(cè)為高性能嵌入式工作室中的加載模塊,注意下載時(shí)訪問(wèn)大小要固定為1字節(jié)。
4.3 打開(kāi)源文件
可以在集成編輯器中打開(kāi)源文件,通過(guò)選擇源文件并點(diǎn)擊[Open]按鈕,或在[Workspace]窗口中雙擊源文件。編輯器左側(cè)的列顯示地址、片上斷點(diǎn)和軟件斷點(diǎn)等信息,方便設(shè)置斷點(diǎn)和定位程序。
4.4 內(nèi)存訪問(wèn)功能
- 讀寫(xiě)功能:可以在[Memory…]窗口中顯示和操作內(nèi)存內(nèi)容,包括下載和上傳內(nèi)存數(shù)據(jù)、顯示變量、自動(dòng)更新內(nèi)存數(shù)據(jù)等。
- 其他操作功能:如內(nèi)存填充、移動(dòng)、比較、搜索等,但要注意數(shù)據(jù)大小和范圍的限制,并且這些功能在調(diào)試監(jiān)視器所在區(qū)域可能無(wú)法正常工作。
4.5 斷點(diǎn)功能
提供強(qiáng)制斷點(diǎn)、軟件斷點(diǎn)(S/W break)和片上斷點(diǎn)三種功能??梢栽诰庉嬈?、[Breakpoints]對(duì)話框或命令行中添加、刪除、啟用或禁用斷點(diǎn)。設(shè)置和使用斷點(diǎn)時(shí)要注意一些限制,如S/W斷點(diǎn)設(shè)置會(huì)導(dǎo)致片上內(nèi)存寫(xiě)入,不能在特定區(qū)域設(shè)置等。
4.6 跟蹤功能
可以獲取用戶程序執(zhí)行過(guò)程中的分支和數(shù)據(jù)訪問(wèn)信息,幫助分析程序執(zhí)行流程。支持分支跟蹤和數(shù)據(jù)訪問(wèn)跟蹤,可在[On - Chip Event]對(duì)話框中設(shè)置跟蹤條件,通過(guò)[Trace]窗口顯示跟蹤結(jié)果,并可進(jìn)行統(tǒng)計(jì)分析和函數(shù)調(diào)用顯示等操作。
5. 教程
教程程序用C語(yǔ)言編寫(xiě),主要功能是對(duì)隨機(jī)數(shù)據(jù)進(jìn)行升序和降序排序。通過(guò)教程可以學(xué)習(xí)如何啟動(dòng)高性能嵌入式工作室、連接仿真器、下載程序、設(shè)置斷點(diǎn)、執(zhí)行程序、檢查斷點(diǎn)、改變寄存器內(nèi)容、查看符號(hào)和變量、單步執(zhí)行程序、使用片上斷點(diǎn)和跟蹤功能等。
6. 使用注意事項(xiàng)
6.1 MCU資源使用
- 程序區(qū)域:不同型號(hào)的MCU有不同的程序區(qū)域用于仿真器,部分型號(hào)需要指定2KB的ROM區(qū)域,不能更改該區(qū)域,否則仿真器可能無(wú)法控制MCU。
- 引腳使用:仿真器通過(guò)RESET#引腳和MODE引腳控制MCU。
- 中斷:BRK指令中斷、地址匹配中斷、單步中斷和地址中斷被仿真器程序使用,用戶程序不能使用這些中斷。
- 堆棧區(qū)域:仿真器在用戶程序中斷時(shí)使用最多8字節(jié)的堆棧指針(ISP),需要預(yù)留8字節(jié)的堆棧區(qū)域。
- 特殊功能寄存器(SFR):部分SFR被仿真器程序和用戶程序共同使用,部分僅被仿真器程序使用,不能隨意更改這些寄存器的值。
6.2 復(fù)位注意事項(xiàng)
- 電源復(fù)位和電壓監(jiān)視器0復(fù)位不能使用,否則仿真器將無(wú)法控制。
- 調(diào)試時(shí)復(fù)位向量地址由仿真器程序使用,用戶程序運(yùn)行和暫停時(shí)顯示的復(fù)位向量地址有所不同。
- 復(fù)位后,仿真器程序會(huì)暫時(shí)介入,用戶程序啟動(dòng)會(huì)有時(shí)間延遲,不同類(lèi)型的復(fù)位行為也有所不同。
- 看門(mén)狗定時(shí)器復(fù)位時(shí)要注意,避免因異常導(dǎo)致仿真器失控,并且在用戶程序暫停時(shí)不要進(jìn)行硬件復(fù)位。
6.3 內(nèi)部ROM區(qū)域(閃存)
- 更改內(nèi)部ROM區(qū)域時(shí),僅更新仿真器的內(nèi)部緩存,更改內(nèi)容會(huì)在用戶程序啟動(dòng)前反映到MCU中。
- 調(diào)試CPU重寫(xiě)模式時(shí),要注意不可重寫(xiě)的區(qū)域,避免操作不當(dāng)導(dǎo)致仿真器無(wú)法控制MCU。
- 仿真器重寫(xiě)閃存時(shí),不要對(duì)MCU進(jìn)行復(fù)位或調(diào)試操作,以防止程序中斷。
- 調(diào)試時(shí)頻繁重寫(xiě)閃存,不要將用于調(diào)試的MCU用于產(chǎn)品中,也不要保存調(diào)試時(shí)的MCU閃存內(nèi)容。
6.4 電源供應(yīng)
E1仿真器在不向用戶系統(tǒng)供電時(shí)會(huì)消耗一定功率,使用E1仿真器進(jìn)行批量生產(chǎn)編程時(shí),不要使用其電源供應(yīng)功能,應(yīng)根據(jù)MCU允許的電壓?jiǎn)为?dú)供電,因?yàn)槠涔╇娋仁苤鳈C(jī)USB電源質(zhì)量影響。
6.5 調(diào)試功能限制
- 單步執(zhí)行時(shí),S/W斷點(diǎn)和片上斷點(diǎn)無(wú)效,某些指令(如軟件中斷指令、INT指令、標(biāo)志操作指令)單步執(zhí)行有特殊情況。
- “Go to cursor”功能使用時(shí),已設(shè)置的S/W斷點(diǎn)和片上斷點(diǎn)會(huì)無(wú)效。
- 調(diào)試停止模式或等待模式時(shí),要設(shè)置斷點(diǎn),避免在模式中操作窗口和執(zhí)行單步操作,防止內(nèi)存訪問(wèn)異常。
6.6 CAN模塊使用注意事項(xiàng)(僅適用于R8C/3xW和R8C/3xX)
使用CAN模塊時(shí),要確保CPU時(shí)鐘在4MHz以上,不要從內(nèi)存窗口激活CAN模塊,不要進(jìn)入停止模式,并且在MCU操作時(shí)鐘速度較低時(shí)優(yōu)先使用片上斷點(diǎn)。
總結(jié)
Renesas E1/E20 Emulator為基于R8C Family的MCU開(kāi)發(fā)提供了豐富的調(diào)試功能,但在使用過(guò)程中需要注意諸多細(xì)節(jié),包括硬件連接、資源使用、復(fù)位操作、閃存讀寫(xiě)等方面。只有充分了解并遵循這些規(guī)則,才能高效、準(zhǔn)確地使用該仿真器進(jìn)行開(kāi)發(fā)和調(diào)試工作,確保項(xiàng)目的順利進(jìn)行。各位電子工程師在實(shí)際應(yīng)用中遇到問(wèn)題時(shí),不妨參考本文的內(nèi)容,希望能為大家?guī)?lái)幫助。你在使用Renesas E1/E20 Emulator的過(guò)程中遇到過(guò)哪些挑戰(zhàn)呢?歡迎在評(píng)論區(qū)分享交流。
發(fā)布評(píng)論請(qǐng)先 登錄
E1/E20/E2 Emulator, E2 Emulator Lite 用戶手冊(cè)附加文件(連接RX設(shè)備注意事項(xiàng))
E1/E20/E2 Emulator, E2 Emulator Lite Additional Document for 用戶手冊(cè) (Notes on Connection of RL78)
E1 Emulator / E20 Emulator Additional Document for 用戶手冊(cè)(Notes on Connection of V850E2M and V850E2S)
E1/E20 Emulator Additional Document for 用戶手冊(cè)(Notes on Connection for 78K0)
E1/E20/E2Emulator, E2Emulator Lite 用戶手冊(cè)附加文件(連接RX設(shè)備注意事項(xiàng))
E1/E20/E2Emulator, E2Emulator Lite Additional Document for 用戶手冊(cè)(Notes on Connection of RL78)
E1 Emulator / E20 Emulator Additional Document for 用戶手冊(cè)(Notes on Connection of V850E2M and V850E2S)
E1/E20 Emulator Additional Document for 用戶手冊(cè)(Notes on Connection for 78K0R)
E1/E20 Emulator Additional Document for 用戶手冊(cè)(Notes on Connection for 78K0)
深入了解Renesas E1/E20 Emulator:從規(guī)范到應(yīng)用
評(píng)論