Manuel D’UtilisationTable des matières1. Features131.1 Real-Time RAM Monitor Function131.1.1 RAM Monitor Area131.1.2 Sampling Period141.1.3 Related Windows141.2 Break Functions151.2.1 Software Breaks Function151.2.1.1 Setting of software breakpoint151.2.1.2 Area where software breakpoint can be set151.2.2 Hardware Break161.2.3 Protect Break171.2.3.1 Protect Attribute171.2.3.2 Access Protect Area171.2.3.3 Set Method of Protect Break171.3 Real-Time Trace Function181.3.1 Trace Area181.3.2 Trace Condition Setting191.3.3 Trace Data Write Condition191.4 Time Measurement Function201.4.1 The Measurement Condition201.5 Coverage Function211.5.1 Coverage Measurement Area211.5.2 Related Windows211.6 Real-Time OS Debugging Function221.7 GUI Input/Output Function222. About the Emulator PC4701232.1 Communication methods232.2 Function table233. Before starting the debugger243.1 Communication method by emulator243.1.1 USB Interface243.1.2 LAN Interface243.1.3 LPT Interface243.1.4 Proprietary Parallel Interface253.1.4.1 Serial Interface253.2 Download of Firmware263.3 Setting before emulator starts273.3.1 USB communication273.3.1.1 Install of USB device driver273.3.2 LAN communication 1283.3.2.1 Setting of the LAN Interface using the SETIP.EXE283.3.3 LAN communication 2303.3.4 Proprietary parallel communication314. Preparation before Use324.1 Workspaces, Projects, and Files324.2 Starting the High-performance Embedded Workshop334.2.1 Creating a New Workspace (Toolchain Used)344.2.1.1 Step1 : Creation of a new workspace344.2.1.2 Step2 : Setting for the Toolchain354.2.1.3 Step 3: Selecting of the Target Platform364.2.1.4 Step4 : Setting the Configuration File Name374.2.1.5 Step5 : The check of a created file name384.2.2 Creating a New Workspace (Toolchain Not Used)394.2.2.1 Step1 : Creation of a new workspace394.2.2.2 Step 2: Selecting of the Target Platform404.2.2.3 Step3 : Setting the Configuration File Name414.2.2.4 Step4 : Registering the Load modules to be downloaded424.3 Starting the Debugger444.3.1 Connecting the Emulator444.3.2 Ending the Emulator445. Setup the Debugger455.1 Init Dialog455.1.1 MCU Tab465.1.1.1 Specifying the MCU file465.1.1.2 Setting of the Communication Interface465.1.1.3 Executing Self-Check475.1.1.4 Specifying Clock Frequency475.1.1.5 Using/unusing the watchdog timer485.1.2 Debugging Information Tab495.1.2.1 display the compiler used and its object format495.1.2.2 Specify the Storing of Debugging Information495.1.2.3 Specify whether to display the instruction format specifier505.1.2.4 To treat size of enumeration type as 1 byte505.1.3 F/W and Work Area Tab515.1.3.1 Select the Firmware File515.1.3.2 Specify the Work Area515.1.4 Memory Extension Mode Tab525.1.4.1 Select the Memory Space Extension Mode525.1.5 Clock Tab555.1.5.1 Specify the Target Clock555.1.5.2 Attempt to access memory during WAIT/STOP mode555.1.6 Script Tab565.1.6.1 Automatically Execute the Script Commands565.2 Setting of the Communication Interface575.2.1 Setting of the USB Interface575.2.2 Setting of the LPT Interface585.2.3 Setting of the LAN Interface595.2.3.1 Setting the IP Address and Subnet Mask595.2.3.2 Setting of the LAN Interface605.2.3.3 LAN connection by couple 1 with emulator605.2.4 Setting of the Parallel Interface615.2.5 Setting of the Serial Interface615.3 Setup the Debugger for M32C625.3.1 Emem Dialog625.3.1.1 Status Tab625.3.1.1.1. Select the Processor Mode635.3.1.1.2. Inspecting the MCU status635.3.1.2 Emulation Memory Tab635.3.1.2.1. Debug monitor's bank address settings645.3.1.2.2. Automatic emulation memory allocation for the internal ROM645.3.1.2.3. Emulation memory allocation for an extended area645.4 Setup the Debugger for M16C/R8C665.4.1 Map Command665.5 Setup the Debugger for 740675.5.1 Map Command675.6 Method of making MCU file685.6.1 Method of making MCU file (the M16C/R8C Debugger)685.6.1.1 Example685.6.2 Method of making MCU file (the 740 Debugger)695.6.2.1 Example706. Tutorial736.1 Introduction736.2 Usage746.2.1 Step1 : Starting the Debugger746.2.1.1 Preparation before Use746.2.1.2 Setup the Debugger746.2.2 Step2 : Checking the Operation of RAM756.2.2.1 Checking the Operation of RAM756.2.3 Step3 : Downloading the Tutorial Program766.2.3.1 Downloading the Tutorial Program766.2.3.2 Displaying the Source Program776.2.4 Step4 : Setting a Breakpoint786.2.4.1 Setting a Software Breakpoint786.2.5 Step5 : Executing the Program796.2.5.1 Resetting of CPU796.2.5.2 Executing the Program796.2.5.3 Reviewing Cause of the Break806.2.6 Step6 : Reviewing Breakpoints816.2.6.1 Reviewing Breakpoints816.2.7 Step7 : Viewing Register826.2.7.1 Viewing Register826.2.7.2 Setting the Register Value826.2.8 Step8 : Viewing Memory836.2.8.1 Viewing Memory836.2.9 Step9 : Watching Variables846.2.9.1 Watching Variables846.2.9.2 Registering Variable856.2.10 Step10 : Stepping Through a Program866.2.10.1 Executing [Step In] Command866.2.10.2 Executing [Step Out] Command876.2.10.3 Executing [Step Over] Command886.2.11 Step11 : Forced Breaking of Program Executions896.2.11.1 Forced Breaking of Program Executions896.2.12 Step12 : Displaying Local Variables906.2.12.1 Displaying Local Variables906.2.13 Step13 : Stack Trace Function916.2.13.1 Reference the function call status916.2.14 What Next?927. Windows/Dialogs957.1 RAM Monitor Window967.1.1 Extended Menus987.1.2 Setting the RAM monitor area997.1.2.1 Changing the RAM Monitor Area997.2 ASM Watch Window1007.2.1 Extended Menus1017.3 C Watch Window1027.3.1 Extended Menus1047.4 Coverage Window1057.4.1 Extended Menus1067.4.2 Refer to the Source Line/the Executed Address1077.4.2.1 Refer in the Editor(Source) Window1077.4.2.2 Refer in the Memory Window1077.5 Script Window1087.5.1 Extended Menus1097.6 S/W Break Point Setting Window1107.6.1 Command Button1117.6.2 Setting and Deleting a Break Points from Editor(Source) Window1127.7 H/W Break Point Setting Window1137.7.1.1 Specify the Break Event1147.7.2 Specify the Combinatorial Condition1187.7.3 Specify the Process ID1197.7.4 Command Button1197.7.5 Specify the Events (Instruction Fetch)1207.7.5.1 Instruction Fetch of Specified Address1207.7.5.2 Instruction Fetch of Specified Address Area(In)1217.7.5.3 Instruction Fetch of Specified Address Area(Out)1227.7.5.4 Entering/exiting to specified function1237.7.6 Specify the Events (Memory Access)1247.7.6.1 Memory Access(The debugger for M32C)1247.7.6.1.1. Writing/Reading a Specified Address1257.7.6.1.2. Reading/writing data to the specified address range1337.7.6.1.3. Reading/writing data to addresses outside the specified range1347.7.6.2 Memory Access(The debugger for M16C/R8C)1357.7.6.2.1. Writing/Reading a Specified Address1357.7.6.2.2. Reading/writing data to the specified address range1417.7.6.2.3. Reading/writing data to addresses outside the specified range1427.7.6.3 Memory Access(The debugger for 740)1437.7.6.3.1. Writing/Reading a Specified Address1437.7.6.3.2. Reading/writing data to the specified address range1467.7.6.3.3. Reading/writing data to addresses outside the specified range1477.7.7 Specify the Events (Bit Access)1487.7.7.1 Writing/Reading a Specified Bit1487.7.7.1.1. Writing/Reading a Specified Bit Symbol1497.7.8 Specify the Events (Interrupt)1507.7.8.1 Interrupt Occurrence1507.7.8.2 Interrupt Termination1517.7.9 Specify the Events (External Trigger Signal)1527.7.9.1 Detection of Rising/Falling Edge1527.7.9.2 Combination of rise/fall edges1537.7.10 Specify the Event Combination Condition1547.7.10.1 Select AND, OR1547.7.10.2 Select AND(Same Time)1557.7.10.3 Select State Transition1557.7.11 Specify the Process ID1577.7.11.1 Specify the Task1577.8 Protect Window1587.8.1 Extended Menus1587.9 Trace Point Setting Window1597.9.1 Specify the Trace Event1607.9.2 Specify the Combinatorial Condition1637.9.3 Specify the Process ID1647.9.4 Specify the Trace Range1647.9.5 Specify the Trace Write Condition1657.9.6 Command Button1657.9.7 Specify the Events (Instruction Fetch)1667.9.8 Specify the Events (Memory Access)1667.9.9 Specify the Events (Bit Access)1667.9.10 Specify the Events (Interrupt)1667.9.11 Specify the Events (External Trigger Signal)1667.9.12 Specify the Event Combination Condition1667.9.13 Specify the Process ID1667.9.14 Specify the write condition1677.10 Time Measurement Window1717.10.1 Specify the Time Measurement Event1727.10.2 Time Measurement Condition1767.10.3 Command Button1767.10.4 Specify the Events (Instruction Fetch)1777.10.5 Specify the Events (Memory Access)1777.10.6 Specify the Events (Bit Access)1777.10.7 Specify the Events (Interrupt)1777.10.8 Specify the Events (External Trigger Signal)1777.10.9 Set the Measurement Condition1787.10.9.1 Measure the execution time between the events1787.10.9.2 Measure the event occurrence cycle1797.10.9.3 Measure the event establishment time1797.10.9.4 Measure the execution time of the specified function (1)1807.10.9.5 Measure the execution time of the specified function (2)1817.11 Trace Window1827.11.1 Configuration of Bus Mode1827.11.2 Configuration of Disassemble Mode1847.11.3 Configuration of Data Access Mode1857.11.4 Configuration of Source Mode1867.11.5 Extended Menus1877.11.6 Display of bus information on the M32C Debugger1887.11.7 Display of bus information on the M16C/R8C Debugger1907.11.8 Display of bus information on the 740 Debugger1927.12 Data Trace Window1937.12.1 Extended Menus1947.13 GUI I/O Window1957.13.1 Extended Menus1967.14 MR Window1977.14.1.1 Extended Menus1987.14.2 Display the Task Status1997.14.2.1 Display the Task Status(When the realtime OS is MRxx conformed to uITRON specifications V.3.0.)1997.14.2.2 Display the Task Status(When the realtime OS is MRxx conformed to uITRON specifications V.4.0.)2017.14.3 Display the Ready Queue Status2037.14.3.1 Display the Ready Queue Status(When the realtime OS is MRxx conformed to uITRON specifications V.3.0.)2037.14.3.2 Display the Ready Queue Status(When the realtime OS is MRxx conformed to uITRON specifications V.4.0.)2037.14.4 Display the Timeout Queue Status2047.14.4.1 Display the Timeout Queue Status(When the realtime OS is MRxx conformed to uITRON specifications V.3.0.)2047.14.4.2 Display the Timeout Queue Status(When the realtime OS is MRxx conformed to uITRON specifications V.4.0.)2057.14.5 Display the Event Flag Status2067.14.5.1 Display the Event Flag Status(When the realtime OS is MRxx conformed to uITRON specifications V.3.0.)2067.14.5.2 Display the Event Flag Status(When the realtime OS is MRxx conformed to uITRON specifications V.4.0.)2067.14.6 Display the Semaphore Status2087.14.6.1 Display the Semaphore Status(When the realtime OS is MRxx conformed to uITRON specifications V.3.0.)2087.14.6.2 Display the Semaphore Status (When the realtime OS is MRxx conformed to uITRON specifications V.4.0.)2087.14.7 Display the Mailbox Status2107.14.7.1 Display the Mailbox Status (When the realtime OS is MRxx conformed to uITRON specifications V.3.0.)2107.14.7.2 Display the Mailbox Status (When the realtime OS is MRxx conformed to uITRON specifications V.4.0.)2117.14.8 Display the Data Queue Status2127.14.8.1 Display the Data Queue Status(When the realtime OS is MRxx conformed to uITRON specifications V.4.0.)2127.14.9 Display the Cycle Handler Status2147.14.9.1 Display the Cycle Handler Status(When the realtime OS is MRxx conformed to uITRON specifications V.3.0.)2147.14.9.2 Display the Cycle Handler Status(When the realtime OS is MRxx conformed to uITRON specifications V.4.0.)2157.14.10 Display the Alarm Handler Status2167.14.10.1 Display the Alarm Handler Status(When the realtime OS is MRxx conformed to uITRON specifications V.3.0.)2167.14.10.2 Display the Alarm Handler Status(When the realtime OS is MRxx conformed to uITRON specifications V.4.0.)2167.14.11 Display the Memory Pool Status2177.14.11.1 Display the Memory Pool Status(When the realtime OS is MRxx conformed to uITRON specifications V.3.0.)2177.14.11.2 Display the Memory Pool Status(When the realtime OS is MRxx conformed to uITRON specifications V.4.0.)2187.14.12 Display the Task Context2197.14.12.1 Display the Task Context2197.14.12.2 Change the task context2207.15 MR Trace Window2217.15.1 Extended Menus2237.15.2 Refer the Execution History of Task(MRxx Window)2247.15.2.1 Select the Trace Range2247.15.2.2 Stop the Task Execution History Measurement2247.15.2.3 Restart the Task Execution History Measurement2247.15.2.4 Refer the Execution History of Task2257.15.2.4.1. Search the History of System Call Issue2267.15.2.4.2. Change the display magnification2277.15.2.4.3. Change the grid line display interval2277.15.2.4.4. Change the task display order2287.15.2.4.5. Display the specific task only2287.15.2.4.6. Change the display color2287.15.2.5 Measure the Execution Time of Task2297.15.2.5.1. Move the Marker2297.16 MR Analyze Window2307.16.1 Configuration of CPU Occupancy Status Display Mode2307.16.2 Configuration of Ready State Duration Display Mode2317.16.3 Configuration of System Call History Display Mode2317.16.4 Extended Menus2327.16.5 Analyze the Execution History of Task2327.16.5.1.1. Refer the CPU Occupation State2327.16.5.2 Refer the Ready Queue Time2337.16.5.3 Refer the System Call Issuance History2337.16.5.3.1. Extract the Issuance History2347.17 MR Task Pause Window2357.17.1 About Task Pause Function2357.17.2 Extended Menus2367.17.3 Pause the Specified Task2377.17.3.1 Pause Task Being Executed at a Specified Position2387.17.3.2 Pause After a Paused Task is Executed up to Specified Position2397.17.3.3 Turn Pause of Certain Task Off2407.17.3.4 Display Program Contents of Certain Task in Task Source Display Area2417.18 Task Trace Window2427.18.1 Extended Menus2437.18.2 Refer the Execution History of Task(Taskxx Window)2447.18.2.1 Prepare the Measurement2447.18.2.1.1. Set the Information of Realtime OS.2447.18.2.1.2. Select the Trace Range2457.18.2.1.3. Start the Target Program2457.18.2.2 Refer the Execution History of Task2467.18.2.2.1. Change the display magnification2467.18.2.2.2. Change the grid line display interval2477.18.2.2.3. Change the task display order2477.18.2.3 Measure the Execution Time of Task2487.18.2.3.1. Move the Marker2487.19 Task Analyze Window2497.19.1 Extended Menus2497.19.2 Analyze the Execution History of Task2508. Table of Script Commands2518.1 Table of Script Commands (classified by function)2518.1.1 Execution Commands2518.1.2 File Operation Commands2518.1.3 Register Operation Commands2528.1.4 Memory Operation Commands2528.1.5 Assemble/Disassemble Commands2528.1.6 Software Break Setting Commands2528.1.7 Hardware Break Setting Commands2538.1.8 Real-time Trace Commands2538.1.9 Coverage Measurement Commands2538.1.10 Script/Log File Commands2538.1.11 Program Display Commands2538.1.12 Map Commands2548.1.13 Clock Command2548.1.14 WatchDog Timer Commands2548.1.15 C Language Debugging Commands2548.1.16 Real-time OS Command2548.1.17 Utility Commands2548.2 Table of Script Commands (alphabetical order)2559. Writing Script Files2579.1 Structural Elements of a Script File2579.1.1 Script Command2589.1.2 Assign Statement2589.1.3 Conditional Statement2589.1.4 Loop Statement(while,endw) and Break Statement2599.1.5 Comment statements2599.2 Writing Expressions2609.2.1 Constants2609.2.2 Symbols and labels2619.2.2.1 Local label symbol and scope2619.2.2.2 Priority levels of labels and symbols2629.2.3 Macro Variables2629.2.4 Register variables2639.2.5 Memory variables2639.2.6 Line Nos.2639.2.7 Character constants2649.2.8 Operators26410. C/C++ Expressions26510.1 Writing C/C++ Expressions26510.1.1 Immediate Values26510.1.2 Scope Resolution26610.1.3 Mathematical Operators26610.1.4 Pointers26610.1.5 Reference26610.1.6 Sign Inversion26710.1.7 Member Reference Using Dot Operator26710.1.8 Member Reference Using Arrow26710.1.9 Pointers to Members26810.1.10 Parentheses26810.1.11 Arrays26810.1.12 Casting to Basic Types26810.1.13 Casting to typedef Types26910.1.14 Variable Name26910.1.15 Function Name26910.1.16 Character Constants26910.1.17 Character String Literals26910.2 Display Format of C/C++ Expressions27010.2.1 Enumeration Types27010.2.2 Basic Types27010.2.3 Pointer Types27110.2.4 Array Types27210.2.5 Function Types27210.2.6 Reference Types27210.2.7 Bit Field Types27210.2.8 When No C Symbol is Found27310.2.9 Syntax Errors27310.2.10 Structure and Union Types27311. Display the Cause of the Program Stoppage27412. Attention27512.1 Common Attention27512.1.1 File operation on Windows27512.1.2 Area where software breakpoint can be set27512.1.2.1 The debugger for M32C27512.1.2.2 The debugger for M16C/R8C27512.1.2.3 The debugger for 74027612.1.3 Get or set C variables27612.1.4 Function name in C++27712.1.5 Option settings for download modules27712.1.6 Debugging multi modules27712.1.7 Synchronized debugging27712.1.8 Down-load of Firmware27712.1.9 Restriction of LPT port27812.1.10 Notes for coverage function27912.1.11 Emulator reset switch27912.1.12 Debugging Resource on Emulator27912.2 Attention of the M32C Debugger28012.2.1 Stack area used by the emulator28012.2.2 Interrupt stack pointer when resetting the target program28012.2.3 Option of C Compiler/Assembler/Linker28012.2.4 Target MCU HOLD terminal28012.2.5 Hardware Event28112.2.6 Time Measurement Resource28112.2.7 CPU rewrite28112.2.8 MR STK script command28112.3 Attention of the M16C/R8C Debugger28212.3.1 Map of stack area used by the emulator28212.3.2 Options for compiler, assembler, and linker28212.3.3 TASKING C Compiler28212.3.4 Target MCU HOLD terminal28212.3.5 Hardware Event28312.3.6 Operating frequency of MCU28312.3.7 The correspondence OS version of task pause function28312.3.8 Memory Space Expansion28412.3.9 Watch dog timer28412.3.10 CPU rewrite28412.3.11 MR STK script command28412.4 Attention of the 740 Debugger28512.4.1 Setting of Memory Map28512.4.2 Emulation Pod M37515T-RPD28512.4.3 Stack area used by the emulator28512.4.4 Specify the Clock28512.4.5 Watch dog timer28512.4.6 Option of C Compiler/Assembler/Linker28512.4.7 About the single-step execution and the program break function in the internal RAM area of the mcu28612.4.8 Debugging in the 16-Timer functions28612.4.9 Hardware Event28612.4.10 Operating frequency of MCU28612.5 Option of C Compiler/Assembler/Linker28712.5.1 When Using NCxx28712.5.2 When Using the Assembler Package for 740 Family28712.5.2.1 Command Execution Examples28712.5.3 When Using the IAR C Compiler (EW)28812.5.4 When Using the IAR C Compiler (ICC)28912.5.4.1 Specify the Option28912.5.4.2 Command Execution Examples28912.5.5 When Using the TASKING C Compiler (EDE)29012.5.6 When Using the TASKING C Compiler (CM)29012.5.6.1 Specify the Option29012.5.6.2 Command Execution Examples29012.5.7 When Using the IAR EC++ Compiler (EW)291Taille: 4,2 MoPages: 294Language: EnglishOuvrir le manuel