Renesas M16C PC4701 manual

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294

Go to page of

A good user manual

The rules should oblige the seller to give the purchaser an operating instrucion of Renesas M16C PC4701, along with an item. The lack of an instruction or false information given to customer shall constitute grounds to apply for a complaint because of nonconformity of goods with the contract. In accordance with the law, a customer can receive an instruction in non-paper form; lately graphic and electronic forms of the manuals, as well as instructional videos have been majorly used. A necessary precondition for this is the unmistakable, legible character of an instruction.

What is an instruction?

The term originates from the Latin word „instructio”, which means organizing. Therefore, in an instruction of Renesas M16C PC4701 one could find a process description. An instruction's purpose is to teach, to ease the start-up and an item's use or performance of certain activities. An instruction is a compilation of information about an item/a service, it is a clue.

Unfortunately, only a few customers devote their time to read an instruction of Renesas M16C PC4701. A good user manual introduces us to a number of additional functionalities of the purchased item, and also helps us to avoid the formation of most of the defects.

What should a perfect user manual contain?

First and foremost, an user manual of Renesas M16C PC4701 should contain:
- informations concerning technical data of Renesas M16C PC4701
- name of the manufacturer and a year of construction of the Renesas M16C PC4701 item
- rules of operation, control and maintenance of the Renesas M16C PC4701 item
- safety signs and mark certificates which confirm compatibility with appropriate standards

Why don't we read the manuals?

Usually it results from the lack of time and certainty about functionalities of purchased items. Unfortunately, networking and start-up of Renesas M16C PC4701 alone are not enough. An instruction contains a number of clues concerning respective functionalities, safety rules, maintenance methods (what means should be used), eventual defects of Renesas M16C PC4701, and methods of problem resolution. Eventually, when one still can't find the answer to his problems, he will be directed to the Renesas service. Lately animated manuals and instructional videos are quite popular among customers. These kinds of user manuals are effective; they assure that a customer will familiarize himself with the whole material, and won't skip complicated, technical information of Renesas M16C PC4701.

Why one should read the manuals?

It is mostly in the manuals where we will find the details concerning construction and possibility of the Renesas M16C PC4701 item, and its use of respective accessory, as well as information concerning all the functions and facilities.

After a successful purchase of an item one should find a moment and get to know with every part of an instruction. Currently the manuals are carefully prearranged and translated, so they could be fully understood by its users. The manuals will serve as an informational aid.

Table of contents for the manual

  • Page 1

    REJ10J1608-0100 User's Manual M16C PC4701 Emulator Debugger V.1.03 Renesas Microcomputer Deve lopment Environment System Rev.1.00 Jul. 01, 2007[...]

  • Page 2

    1. This document is provided for reference purposes only so that Renesas customers may select the appropriate Renesas products for their use. Renesas neither makes warranties or representations with respect to the accuracy or completeness of the information contained in this document nor grants any license to any intellectual property rights or any[...]

  • Page 3

    Overview The High-performance Embedded Workshop is a G r aphical User Interface intended to ease the development and debugging of app lications written in C/C++ prog ramming language and assembly language for Renesas microcomputers. Its a im is to provide a powerful yet intuitive way of accessing, observing and modifying the debugging platfo rm in [...]

  • Page 4

    Active X, Microsoft, MS-DOS, Visual Basic, Visual C++, Windows and Windows NT are either registered trademarks or trademarks of Microsoft Corporation in the United States and other countries. IBM and AT are registered trademarks of Inter national Business Machines Corporation. Intel and Pentium are registered trademarks of Intel Corporation. Adobe [...]

  • Page 5

    Setup of Debugger 1 1. Features 1 1.1 Real-Time RAM Monitor Function ............................................................................................. .. 1 1.1.1 RAM Mo nitor Area ......................................................................................................... ... 1 1.1.2 Samplin g Period .......................[...]

  • Page 6

    5.1.5 Cloc k Tab ................................................................................................................ ......... 43 5.1.6 Scri pt Tab............................................................................................................... .......... 44 5.2 Setting of the Comm unication In terface ...................[...]

  • Page 7

    7.5.1 Extend ed Menus ........................................................................................................... ... 97 7.6 S/W Break Poin t Setting Window ............................................................................................. .9 8 7.6.1 Comman d Butto n........................................................[...]

  • Page 8

    7.14.3 Display the Re ady Queue Status ................................................................................ 191 7.14.4 Display the Tim eout Queue Status ............................................................................. 192 7.14.5 Display the Ev ent Flag Status .................................................................[...]

  • Page 9

    9.2 Writing Ex pressions........................................................................................................ .......... 248 9.2.1 Cons tants ................................................................................................................ ....... 248 9.2.2 Symbols and l abels ......................................[...]

  • Page 10

    12.2.1 Stack area used by the em ulator ................................................................................ 268 12.2.2 Interrupt stack pointer when resetting the targ et prog ram ..................................... 268 12.2.3 Option of C Comp iler/Assemble r/Link er ....................................................................[...]

  • Page 11

    Setup of Debugger 1[...]

  • Page 12

    (Blank Page) 2[...]

  • Page 13

    1 Features 1. Features 1.1 Real-Time RAM Monitor Function This function allows you to inspect changes of memory contents without impairing the realtim e capability of target program execution. The PC4701 emulator syste m contains a 1-Kbyte RAM monitor area (wh ich cannot be divided into smaller areas). This debugger supports the real time RAM monit[...]

  • Page 14

    1.1.2 Sampling Period Sampling cycle means the display update in terval. You can specify this function in any wind ow which supports the RAM monitor. (The interval of 100 ms is set by default.) The actual sampling cycle may take longer time th an the specified cycle depending on the operating environment. (Sa mpling cycle depend s on the following [...]

  • Page 15

    1 Features 3 1.2 Break Functions 1.2.1 Software Breaks Function Software Break breaks the target program before execution of the co mmand at the specified address. This break point is called software breakpoint. The software breakpoint is set/reset in the Editor (Source) window or in the S/W Breakpoint Setting window. You can also disable/enable a [...]

  • Page 16

    1.2.2 Hardware Break This function causes the target program to stop upon detecting a data read/wr ite to memory, instruction execution, or the rising /falling edge of the inp ut signal fe d from an external trace cable. The contents of events that can be set vary with each targ et MCU. The following designations ar e available as break events: •[...]

  • Page 17

    1 Features 1.2.3 Protect Break This function causes the target program to stop upon detecting a data write to the ROM area or an access to an unused area (re ad/write or instruction exe cution). Protect Break is a function to detect a write of data to the ROM area and an access (read, write, command execution) to an unused ar ea and stop the target[...]

  • Page 18

    1.3 Real-Time Trace Function This function records a t arget program execution history. Up to 32K cycles of exec ution history can be reco rded. This record allows insp ecting the bus information, executed instru ctions, and source prog ram execution path for ea ch cycle. The real-time trace function records the execution history of the target prog[...]

  • Page 19

    1 Features 7 1.3.2 Trace Condition Setting The following designations ar e available as trace events: • Address designation - Instruction fetch - Memory access - Bit access • External trigger designation (eight events) • Interruption The number of events that can be specified are six ev ents of all. These break events can be combined as below[...]

  • Page 20

    1.4 Time Measurement Function The time measurement function allows you to measure the maximum, minimum, and average execution times and measuremen t counts of a specified zone. With this debugger, time can be measured up to four points simultaneously. 1.4.1 The Measurement Co ndition The measurement condition of the zone time can specify the follow[...]

  • Page 21

    1 Features 1.5 Coverage Function Coverage Measurem ent is a function t o record the addresses executed (a ccessed) b y the target program (C0 coverage). After stopping execution of the target program, you can understand which address es are not executed yet. By using the coverage measurement function in the te st process, you can check for missing [...]

  • Page 22

    1.6 Real-Time OS Debugging Function This function debugs the realtime OS-dependent parts of the target program that uses the realtime OS. This function helps to show the status of the realti me OS and inspect a task execution history, et c. The debugger for 740 can't show the status of th e realtime OS. 1.7 GUI Input/Output Function This funct[...]

  • Page 23

    2 About the Emulator PC4701 11 2. About the Emulator PC4701 The PC4701 emulator system is a g eneric term used for the 8/16-bit MCU emulators. It can be used in combination with the emulat ion pod for the PC4701 to debug applicatio n programs for each MCU. 2.1 Communication methods The supported communication methods vary with the type of emulator [...]

  • Page 24

    3. Before starting the debugger 3.1 Communication method by emulator The supported communication methods are as follo ws. (The supported communication methods vary with the type of emulator used. ) USB, LAN, LPT, Proprietary parallel, Serial 3.1.1 USB Interface Supported only when using the PC4701U emulator. • Compliant with USB Standa rd 1.1. ?[...]

  • Page 25

    3 Before starting the debug ger 13 3.1.4 Proprietary Paralle l Interface Supported only when using the PC4701HS emulator. • The host computer must have a dedicated interface board, the PCA4202G0 2, incorporated in it (only the ISA bus is supported). The necess ary cable is included with the emulator. • A device driver must separately be set. 3.[...]

  • Page 26

    3.2 Download of Firmware It is necessary to down-load the firmwa re which corres ponds to connected Emulat ion Pod when the debugger is started to the emulator. • You have changed you r emulation pod. • The firmware downloaded to th e emulator is unknown one. • You have setup the debugger for the first time. • You have upgra ded emulator de[...]

  • Page 27

    3 Before starting the debug ger 3.3 Setting before emulator starts 3.3.1 USB communicat ion Connection of USB devices is detected by Windows' Plug & Play function. The device driver needed for the connected USB device is automatically installed. 3.3.1.1 In stall of USB device dr iver The USB devices connected are detected by Windows' [...]

  • Page 28

    3.3.2 LAN communication 1 Before the emulator can be connected in a LAN, the IP address, etc. must fi rst be registered in the emulator. For the emulator in default settings, the utility "setip.exe" i ncluded with the debugger may be used to set the IP addres s, etc. in the emulator. 3.3.2.1 Set ting of the LAN Inter face using the SETI P[...]

  • Page 29

    3 Before starting the debug ger 5. Click the Next button, and the dialog box sh own below appears. Set the IP address, su bnet mask, port number, and default gateway IP address. When using the em ulator on the same network's same subnet mask, the default gateway IP address may be omitted. Use any 4-digit number to spec ify the port number. (En[...]

  • Page 30

    3.3.3 LAN communication 2 Please exexute registry set ting program ( Sack.exe) before starting t he debugger. It is necessary for LAN communication with emulators to set the following registry. OS Key Data Windows XP/2000 HKEY_LOCAL_MACHINE¥S YSTEM¥CurrentControlSet¥ Services¥Tcpip¥Parameters¥ SackOpts 0(REG_DWORD) You can clear the regis try[...]

  • Page 31

    3 Before starting the debug ger 3.3.4 Proprietary paral lel communication If you are using th is debugger in a combination of the parallel I/F, you need to specify the start address of I/O addresses (7 by tes) to the device driver for PCA4202G0 2, (The I/O address for PCA4202G02 is set to 100h initially .) You can set this setting with setPca4202.e[...]

  • Page 32

    4. Preparation before Use Please run the High-performance Embedde d Workshop and connect the emulator . In addition, in order to debug with this prod uct , it is necessa ry to create a workspace. 4.1 Workspaces, Projects, and Files Just as a word processor allows y ou to create and mo dify documents, this pr oduct allows you to create and modify wo[...]

  • Page 33

    4 Preparation before Use 4.2 Starting the High-perfo rmance Embedded Workshop Activate the High-performance Embedded Wor ksh op from [Programs] in the [Start] menu. The [Welcome!] dialog box is displayed. In this dialog box, A workspace is created or displayed. • [Create a new project workspace] radio button: Creates a new workspace. • [Open a [...]

  • Page 34

    4.2.1 Creating a New Workspace (Toolchai n Used) 4.2.1.1 Ste p1 : Creation of a new workspace In the [Welcome!] dialog box that is displayed when the High-performance Embedded Workshop is activated, select the [Create a new project work space] radio button and click the [OK] button. Creation of a new workspace is started. The following dialog box i[...]

  • Page 35

    4 Preparation before Use 4.2.1.2 Ste p2 : Setting for th e Toolchain A wizard for the project creation starts. Here, the following contents are set. • toolchain • the setting for the real-time OS (when using) • the setting for the startup file, he ap area, stack area, and so on Please set required informatio n and click the [Next] button. The[...]

  • Page 36

    4.2.1.3 Ste p 3: Selecting of the Targ et Platform Select the target system used for your debugging (emulator, simulator) . When the setting for the toolchain has been completed, the following di alog box is displayed. 1. Selecting of the Target type In the [Target type] list box, select the target CPU type. 2. Selecting of the Target Platform In t[...]

  • Page 37

    4 Preparation before Use 4.2.1.4 Ste p4 : Setting the Con figuration File Name Set the configuration file name for each of the all selected target. The configuration file saves the state of High-per formance Embedded Workshop except for the target (emulator, simulator). The default name is already set. If it is not necessary to change, please click[...]

  • Page 38

    4.2.1.5 Ste p5 : The check of a created file na me Finally, confirm the file name you create. The file s which will be generated by the High-performance Embedded Workshop are displayed If you want to chan ge the file name, select and click it then enter the new name. This is the end of the emulator settings. Exit the Project Generator following the[...]

  • Page 39

    4 Preparation before Use 4.2.2 Creating a New Workspace (Toolchai n Not Used) When debugging the existing load module file with this product, a workspace is created by this method. 4.2.2.1 Ste p1 : Creation of a new workspace In the [Welcome!] dialog box that is displayed when the High-performance Embedded Workshop is activated, select the [Create [...]

  • Page 40

    4.2.2.2 Ste p 2: Selecting of the Targ et Platform Select the target system used for your debugging (emulator, simulator) . A wizard starts and the following dialog box is displayed. 1. Selecting of the Target type In the [Target type] list box, select the target CPU type. 2. Selecting of the Target Platform In the [Targets] area, the target for th[...]

  • Page 41

    4 Preparation before Use 4.2.2.3 Ste p3 : Setting the Con figuration File Name Set the configuration file name for each of the all selected target. The configuration file saves the state of High-per formance Embedded Workshop except for the target (emulator, simulator). The default name is already set. If it is not necessary to change, please click[...]

  • Page 42

    4.2.2.4 Ste p4 : Registering the Lo ad modules to be down loaded Finally, register the load module file to be used. Select [Debug Settings...] fro m the [Debug] menu to open the [Debug Settings] dialog box. 1. Select the product name to be connected in the [Target] drop-down list box. 2. Select the format of the load module to be downloaded i n the[...]

  • Page 43

    4 Preparation before Use 3. Then register the corresponding download module in the [Downloa d Modules] list box. A download module can be specified in th e dialog opened with a [Add...] button. - Select the format of the download module in th e [Format] edit box. Please refer to the upper table about the format name of a download module. - Enter th[...]

  • Page 44

    4.3 Starting the Debugger The debugging can be started by c onnecting with an emulator. 4.3.1 Connecting the Em ulator Connect the emulator by simply switching the session file to one in which the setting for the emulator use has been registered. The session file is created by default. The session file has information about the target selected when[...]

  • Page 45

    5 Setup the Debugger 5. Setup the Debugger 5.1 Init Dialog The Init dialog box is provided for setting the item s that need to be set wh en the debugger starts up. The contents set from this dialog box are also effe ctive the next time the debugger starts. The data set in this dialog remains effective for the next start. The tabs available on this [...]

  • Page 46

    5.1.1 MCU Tab The specified content becomes effect ive when the next being start. 5.1.1.1 Spec ifying the MCU file Click the "Refer" button. The File Selection dialog is opened . Specify the corresponding MCU file. • An MCU file contains the informat ion specific to the target MCU. • The specified MCU file is displayed in the MCU area[...]

  • Page 47

    5 Setup the Debugger 5.1.1.3 Exec uting Self-Chec k Specify this option to execute self-check* on the emulator when the debugger starts up. Be sure to select the above check box only when yo u want to perform self-check at startup. Specify this option in the following cases: • When the firmware cannot be downloaded • When although the firmware [...]

  • Page 48

    5.1.1.5 Using/unusing the watchdog timer Specify whether or not to us e the watchdog time r. (By default, the wa tchdog timer is unused.) This specification exist for the M32C debugger only. When debugging the target system that uses a watchdog time r, select the check b ox shown above. 36[...]

  • Page 49

    5 Setup the Debugger 5.1.2 Debugging Information Tab The specified content becomes effect ive when the next being start. 5.1.2.1 disp lay the compiler used and its object form at Display the compiler used an d its object file format. Please specify the compiler used and its object file format in the dialog opened by menu [Debug] -> [Debug Settin[...]

  • Page 50

    5.1.2.3 Spec ify whether to display the instruction form at specifier Specify whether to display the instruction fo rmat specifier in the disassembled display. The debugger for 740 doesn't support this fun ction. Select the above check box when you disp lay the instruction format specifier. This specification can only be set or changed when yo[...]

  • Page 51

    5 Setup the Debugger 5.1.3 F/W and Work Area Tab The specified content becomes effective when the next being start. In this tab, only the debugger for M16C/R8C exists. 5.1.3.1 Selec t the Firmware Fi le Usually, click the Default radi o button in the F/W group. Click the Select radio button whe n you have to downloa d firmware different from the on[...]

  • Page 52

    5.1.4 Memory Extension Mode Tab This tab enabled only when the MC U tab in the Init dialog is used to specify the MCU file of the microcomputer (M16C /62 group) which support s the memory space expansion function. The specified data remains effective for the next star t. In this tab, only the debugger for M16C/R8C exists. 5.1.4.1 Selec t the Memory[...]

  • Page 53

    5 Setup the Debugger 41 ATTENTION The functions may be restricted depending on the type of memory space expansion mode. Extension Mode 1 • When the memory space expansion area is displa yed in the dis-assemble mode in the Progr am window or the Source window, the displayed data may be different fro m what you would expect through the operat ion a[...]

  • Page 54

    Extension Mode 2 • The memory reference com mands are added, which reference t he internal ROM in the ba nk duplicated area in the dump format (see the table below). A memory reference command with the bank spec ification is added. The memory reference/the change to the bank repetition area must use the following commands. Command name Abbreviati[...]

  • Page 55

    5 Setup the Debugger 5.1.5 Clock Tab The specified content becomes effect ive when the next being start. 5.1.5.1 Spec ify the Target Clock Change the setting by synchronizin g with the clock used by the targ et microcomputer. (Internal is set by default.) (The debugger for 740 does not have designation of Su b clock.) Select Internal to set the int[...]

  • Page 56

    5.1.6 Script Tab The specified content becomes effect ive when the next being start. 5.1.6.1 Au tomatically Ex ecute the Script Co mmands To automatically execute the sc ript command at star t of Debugger, click the "Refer" button to specify the script file to be executed. By clicking the "Refer" button, the File Selection dialo[...]

  • Page 57

    5 Setup the Debugger 5.2 Setting of the Communication Interface 5.2.1 Setting of th e USB Interface USB communication uses the person al computer's USB interface. It is compliant with USB 1.1. USB communication can on ly be used on the PC4701U emulator. Before USB communication can be performed, the computer m ust have a dedicated device drive[...]

  • Page 58

    5.2.2 Setting of th e LPT Interface LPT communication uses a parallel interface (pri nter interface) of the personal computer. LPT communication can only be us ed on t he PC4701U/M emulator. To set the LPT communication, click the "LPT" radi o button of the MCU tab in the Init dialog. The setting looks like the figure below. Specify the m[...]

  • Page 59

    5 Setup the Debugger 5.2.3 Setting of th e LAN Interface LAN communication uses a LAN inte rface of the personal computer. Before using LAN, you must register the emulator IP address, port number and subnet mask to the emulator itself (Otherwise, LAN is not available). Then, set LAN communication. LAN communication can only be used on the PC4701U/H[...]

  • Page 60

    5.2.3.2 Set ting of the LAN Inter face To set the LAN communication, click the "LAN" radi o button of the MCU tab in the Init dialog. The setting looks like the figure below. Specify the IP address of the connected emulator in the IP address field. Specify the IP address, in bytes, in decimal. Delimit each 4 bytes with a period. The port [...]

  • Page 61

    5 Setup the Debugger 5.2.4 Setting of the Parallel Interf ace Special parallel communication uses a spe cial parall el interface boar d PCA4202G02 (option), which is inserted in the extension slot (ISA bus) of the personal computer. Special parallel communica tion can only be used on the PC4701HS emulator. To set the parallel communication, c lick [...]

  • Page 62

    5.3 Setup the Debugger for M32C 5.3.1 Emem Dialog In the Emem dialog box, setting in formation on the user target. The Emem dialog box opens after closing the Init dialog box. The tabs available on this dialog box vary with each product used. For details, c lick the desired tab name shown in the table below. Tab Name Contents Status Specify the pro[...]

  • Page 63

    5 Setup the Debugger 5.3.1.1.1. Select the Processo r Mode Specify the processor mode for the target system. Either the following can be specified. • Single-chip Mode Single-chip Mode • Memory Expansion Memory Expansion Mode • Microprocessor Microprocessor Mode 5.3.1.1.2. Inspecting the MCU status Clicking this tab displays the status of eac [...]

  • Page 64

    5.3.1.2.1. Debug monito r's bank address settings This product allocates a 64-Kbyte co ntiguous address area as the emul ator's work area for use by the debug monitor. Specify any bank that the target system does not us e. The debug monitor uses a 64-Kbyte area from the start address of the specified bank. (Example: If the specified bank [...]

  • Page 65

    5 Setup the Debugger 53 Follow the procedure described below. Bank (Set bank address) Specify the bank address of the debu g target area to be allocated in hexadecimal. If specified as C0, C00000h is the start address of the debu g target area. Length (Specify size of area) Specify the size of the debug target area (256 bytes or 1 M bytes). If Leng[...]

  • Page 66

    5.4 Setup the Debugger for M16C/R8C 5.4.1 Map Command The memory map information must be altered to su it the target mic rocomputer's memory space by Map command. Area Mapping Note SFR External Internal RAM Internal Internal ROM Internal External ROM External Memory Expansion Mode, Mi croprocessor Mode Note • The emulator temporarily uses th[...]

  • Page 67

    5 Setup the Debugger 55 5.5 Setup the Debugger for 740 5.5.1 Map Command The memory map information must be altered to su it the target mic rocomputer's memory space by Map command. Area Mapping Note SFR External RAM External Internal ROM Internal External ROM External Memory Expansion Mode, Mi croprocessor Mode • Internal Enables the emulat[...]

  • Page 68

    5.6 Method of making MCU file 5.6.1 Method of making MCU f ile (the M16C/ R 8C Debugger) The following content is sequenti ally described in the MCU file. Specify the MCU name to the file name, and specify "mcu" to the file extension. 1. Start address of SFR area 2. End address of SFR area 3. Start address of inter nal RAM area 4. End add[...]

  • Page 69

    5 Setup the Debugger 57 5.6.2 Method of making MCU file (the 740 Debugger) The following content is sequenti ally described in the MCU file. Please describe information on 1- 4 refe rring to the data book on MCU used. 1. Number of stack page selection bit 2. Address of CPU mode register 3. End address of stack*1 4. Address of reset vector 5. POD nu[...]

  • Page 70

    ATTENTION For a new MCU, new P OD number, ne w firmware na me and new MCU information number ma y be used. 5.6.2.1 Ex ample 2 3B FF FFFC 0 M38000 00 58[...]

  • Page 71

    T utorial 59[...]

  • Page 72

    (Blank Page) 60[...]

  • Page 73

    6 Tutorial 61 6. T utorial 6.1 Introduction This section describes the main functions of this de bugger by using a tutorial program. The tutori al programs are installed to the directory ¥Wor kSpace¥Tutorial of the drive you installed High-performance Embedded Workshop. There are workspaces for each t argets and each MCUs . Please select the corr[...]

  • Page 74

    6.2 Usage Please follow these instructions: 6.2.1 Step1 : Starting th e Debugger 6.2.1.1 Prep aration before Use To run the High-perfo rmance Embedded Workshop and connect the em ulator, refer to " 4 Preparation before Use ". 6.2.1.2 Setu p the Debugger If it connects with an emulator, the dialog box for setting up a debugger will be disp[...]

  • Page 75

    6 Tutorial 6.2.2 Step2 : Checking th e Operation of RAM Check that RAM is operating correctly. Display and ed it the contents of the memory in the [Me mory] window to check that the memory is operating correc tly. Note The memory can be installed on the board in some microcomputers. In this case, however, t he above way of checking the operation of[...]

  • Page 76

    6.2.3 Step3 : Downloadi ng the Tutorial Program 6.2.3.1 Downlo ading the Tutorial Program Download the object program to be de bugged. The download file and th e address to be downloaded will depends on the target mcu you uses. Please replace the screen im age and addresses with corresponding one to your target mcu. • The Debugger for M16C/R8C or[...]

  • Page 77

    6 Tutorial 6.2.3.2 Displ aying the Sourc e Program This debugger allows the user to debug a user program at the source level. Double-click [tutorial.c] under [C source file]. A [Editor(Source)] window opens and the contents of a "Tutorial.c" file are displayed. Select the [Format Views...] option from the [Setup] menu to set a font and si[...]

  • Page 78

    6.2.4 Step4 : Setting a Breakpo int A software breakpoint is a basic debugging function. The [Editor(Source)] window provides a very simple way of setting a software breakpoint at any point in a program. 6.2.4.1 Set ting a Software Br eakpoint For example, to set a software brea kpoint at the sort function call: Double-click the [S/W breakpoints] c[...]

  • Page 79

    6 Tutorial 6.2.5 Step5 : Executin g the Program Execute the program as des cribed in the following: 6.2.5.1 R esetting of CPU To reset the CPU, select [Reset CPU] from th e [Debug] menu, or click the [Reset CPU] button on the toolbar. 6.2.5.2 Exec uting the Program To execute the program, select [Go] from the [Debug] menu, or click the [Go] button [...]

  • Page 80

    6.2.5.3 Reviewing Cause of the Break The break factor is displaye d in the [Output] window. The user can also see the cause of the break that occurred last time in the [Status] window. Select [Status] from the [CPU] submenu of the [Vie w] menu. After the [Status] window is displayed, open the [Platform] sheet, and check th e Status of Cause of last[...]

  • Page 81

    6 Tutorial 6.2.6 Step6 : Reviewing Bre akpoints The user can see all the breakpoints set in th e program in the [Breakpoints] dialog box. 6.2.6.1 Rev iewing Breakpoints Push the key Ctrl+B, and the [Breakpoints] dialog box will be displayed. This window allows the user to dele te, enable, or disable breakpoints. 69[...]

  • Page 82

    6.2.7 Step7 : Viewing Register The user can see all registers/flags value in the [Register] window. 6.2.7.1 Viewin g Register Select [Registers] from the [CPU] submenu of the [V iew] menu. The [Regis ter] window is displayed. The figure below shows a Register wi ndow of the debugger for M16C/R8C. 6.2.7.2 Set ting the Register V alue You can change [...]

  • Page 83

    6 Tutorial 6.2.8 Step8 : Viewing Memor y When the label name is specified, the user can vi ew the memory contents that the label has been registered in the [ASM Watch] window. 6.2.8.1 Viewin g Memory For example, to view the memory contents cor responding to __msize in word size: Select [ASM Watch] from the [Symbol] submenu of the [View] menu, open[...]

  • Page 84

    6.2.9 Step9 : Watchin g Variables As the user steps through a program, it is possible to watch that the values of vari ables used in the user program are changed. If the downloaded program is the prog ram generated by the assemb ler package for 740 family, you can not watch variables in C watch window. 6.2.9.1 W atching Varia bles For example, set [...]

  • Page 85

    6 Tutorial 6.2.9.2 R egistering Var iable The user can also add a variable to the [C Watch] windo w by specifying its name. Click the [C Watch] window with the right-hand mouse button and select [Add...] from the popup menu. The following dialog box will be displayed. Enter variable i. Click the [OK] button. The [C Watch] window will now also show [...]

  • Page 86

    6.2.10 Step10 : Stepping Thro ugh a Program This debugger provides a range of step menu co mmands that allow efficient program debugging. 1. Step In Executes each statement, including statements within functions(subroutines). 2. Step Out Steps out of a function(subroutin e), and stops at the statement following the statement in the program that cal[...]

  • Page 87

    6 Tutorial 6.2.10.2 Execut ing [Step Out] Command The [Step Out] command steps out of the called func tion(subroutine) and stop s at the next statement of the calling statement in the main function. To step out of the sort function, select [Step Ou t] from the [Debug] menu, or click the [Step Out] button on the toolbar. The PC cursor slips out of a[...]

  • Page 88

    6.2.10.3 Execut ing [Step Over] Command The [Step Over] command executes a function(subroutine) call as a sing le step and stops at the next statement of the main program. To step through all statements in the change func tion at a single step, select [Step Over] from the [Debug] menu, or click the [Step Over] button on the toolbar. The PC cursor m[...]

  • Page 89

    6 Tutorial 6.2.11 Step11 : Forced Breaking of Program Executions This debugger can forc e a break in the execution of a program. 6.2.11.1 Forced Br eaking of Program Executions Cancel all breaks. To execute the remaining sections of the main function, select [Go] fro m the [Debug] menu or the [Go] button on the toolbar. The program goes into an end[...]

  • Page 90

    6.2.12 Step12 : Displayi ng Local Variables The user can dis play local variables in a function using the [C Watch] window. If the downloaded program is the prog ram generated by the assemb ler package for 740 family, you can not watch variables in C watch window. 6.2.12.1 Displaying Local Variables For example, we will examine the lo cal variables[...]

  • Page 91

    6 Tutorial 6.2.13 Step13 : Stack Trace Function The debugger uses the information on the stack to di splay the names of functi ons in the sequence of calls that led to the function to which the program counter is currently pointing. The debugger for 740 doesn't support th e stack trace function. 6.2.13.1 Reference the function call status Doub[...]

  • Page 92

    6.2.14 What Next? This tutorial has described th e usage of this debugger. Sophisticated debugging can be carried out by using the emulation functions that the emulator offers. This provides for effective invest igat ion of hardware and s oftware problems b y accurately isolating and identifying the conditions und er which such problems arise. 80[...]

  • Page 93

    Refer ence 81[...]

  • Page 94

    (Blank Page) 82[...]

  • Page 95

    7 Windows/Dialogs 83 7. W indows/Dialogs The window of this debugger is shown below. When the window name is clicked, the refe rence is displayed. Window Nam e View Menu RAM Monitor Window [View]->[CPU]->[RamMonitor] ASM Watch Window [View]->[Symbol]->[ASMWatch] C Watch Window [View]->[Symbol]->[CWatch] Coverage Wind w o [View]-&g[...]

  • Page 96

    7.1 RAM Monitor Window The RAM monitor window is a window i n which ch anges of memory contents are displayed while running the target pro gram. The relevant mem ory contents are displayed in du mp form in the RAM monitor area by using the realtime RAM monitor function. The displayed conten ts are updated at given intervals (by defau lt, every 100 [...]

  • Page 97

    7 Windows/Dialogs ATTENTION • The RAM monitor window shows the data that ha ve been ac cessed throug h the bus. Therefore, changes are not reflected in the display ed data unless they have been accessed via the target program as in the case where memory is re written directly from an external I/O. • If the data in the RAM monitor area are displ[...]

  • Page 98

    7.1.1 Extended Menus This window has the following popup menus that can be brought up by right-clicking in the window. Menu Function RAM Monitor Area... Set RAM monitor base address. Sampling Period... Set RAM monitor sampling period. Clear Clear access attribute. Up Moves display position to the immediately preceding RAM monitor area (smaller addr[...]

  • Page 99

    7 Windows/Dialogs 7.1.2 Setting the RAM monitor area Choose the popup menu [RAM Monitor Area...] in the RAM monitor w indow. The Set RRAM Area dialog bo x shown below will appear. The start address of the curr ently set RAM monitor area and the range of th e RAM monitor area are displayed in the Start and the Area fields of this dialog box. (No val[...]

  • Page 100

    7.2 ASM Watch Window The ASM watch window is a window in w hich you ca n register specific addresses as watchpoints and inspect memory contents at those addresses. If a registered address resid es within the RAM moni tor ar ea, the memory content at that address is updated at given interv als (by default, every 100 ms) during pr ogram execution. ?[...]

  • Page 101

    7 Windows/Dialogs 89 7.2.1 Extended Menus This window has the following popup menus that can be brought up by right-clicking in the window. Menu Function Add... Add watchpoint. Add Bit... Add bit-lebel watchpoint. Remove Remove the selected watchpoint. Remove All Remove all watchpoints. Set... Set new data to selected watchpoint. Bin Display in Bin[...]

  • Page 102

    7.3 C Watch Window The C Watch Window displays C/C++ expressions and their values (resul ts of calculations). The C/C++ expressions displaye d in the C Watch Wi ndow are known as C watchpoints. The displays of the results of calculating the C watchpoints are updated each time a command is executed. When RAM monitor function is effective and the C w[...]

  • Page 103

    7 Windows/Dialogs 91 ATTENTION • You cannot change the values of the C watch points listed below: - Register variables - C watch point which does not indicate an address(invalid C watch point) • If a C/C++ language expression ca nnot be calculat ed correctly (for e xample, when a C/C++ symbol has not been defined), it is regi stered as invalid [...]

  • Page 104

    7.3.1 Extended Menus This window has the following popup menus that can be brought up by right-clicking in the window. Menu Function Add... Add C watchpoint. Remove Remove the selected C watchpoint. Remove All Remove all C watchpoints. Initialize Reevaluates the selected C watchpoint. Set New Value... Set new data to selected C watchpoint. Hex Disp[...]

  • Page 105

    7 Windows/Dialogs 7.4 Coverage Window The Coverage window allows you to reference the co verage measurement result of the functions of the target program downloa ded. The coverage which can be me asured is C0 coverage . Two types of windows are provided: the Covera ge window in which you can check the sta rt address/end address of th e functions an[...]

  • Page 106

    7.4.1 Extended Menus This window has the following popup menus that can be brought up by right-clicking in the window. Menu Function Select source file... Select a source file for checking the coverage. Auto Refresh Refresh coverage measurement result automatically. Refresh Refresh coverage measurement result. Clear Clear coverage measurem ent resu[...]

  • Page 107

    7 Windows/Dialogs 7.4.2 Refer to the Source Line/the Executed Address It is possible to refer in the Edit or(Source) Window or Memory Windo w. 7.4.2.1 Refer in the Editor( Source) Window In the Editor(Source) window, a di splay of Coverage Measurement is set to "Disable" by default. To enable the display, check the [C overage] check box i[...]

  • Page 108

    7.5 Script Window The Script Window displays the execution of text -format script com mands and the results of that execution. Script commands ca n be executed us ing a script file or interactively. You can also writ e script commands in the script file so th at they are automatic a lly executed. The results of script command execution can also be [...]

  • Page 109

    7 Windows/Dialogs 97 7.5.1 Extended Menus This window has the following popup menus that can be brought up by right-clicking in the window. Menu Function Open... Open script file. Run Run script file. Step One step execution of script file. Script Close Close script file. Save... Save view buffer to file. View Clear Clear view buffer. On... Open lo[...]

  • Page 110

    7.6 S/W Break Point Setting Window The S/W Break Point Setting window allows you to set software break points. Software breaks stop the execution of instructions immediately before the specified break point. • If you have set multiple software breakpoints, program execution stops when any one software break address is encountered (OR conditions).[...]

  • Page 111

    7 Windows/Dialogs 99 7.6.1 Command Button The buttons on this window has the following meanings. Button Function Load... Load setting information from a file in whi ch it was saved. Save... S ave the contents set in the window to a file. Help Display the help of this window. Add Add the break point. Refer... Open file selection dialog box. Close Cl[...]

  • Page 112

    7.6.2 Setting and Deleti ng a Break Points from Editor(Source) Window The area which can be set in the software breakpoi nt is different according to the product. Please refer to " 12.1.2 Area where software br eakpoint can be set " for details. You can set break points in the Editor(Source) Wind ow. To do so, doub le-clic k the break poi[...]

  • Page 113

    7 Windows/Dialogs 7.7 H/W Break Point Setting Window The H/W Breakpoint Setting window is used to set hardware breakpoints for the Emulators. • The events listed below can be specified as break events. If the contents of events are altered, they are marked by an asterisk (*) on the title bar. The asterisks (*) are not displayed afte r setting up [...]

  • Page 114

    7.7.1.1 Spec ify the Break Event To set events, double-click to select the event you want to set from the event setting area of the H/W Break Point Setting Window. This op ens the dialog box shown below. Following events can be set by specifyi ng Event Type in this dialog box. 102[...]

  • Page 115

    7 Windows/Dialogs • When FETCH is selected Breaks for the instruction fe tch. (The debugger for M32C not support. When usin g these products, use m emory access instead.) • When DATA ACCESS is selected Breaks for the memory acces s. 103[...]

  • Page 116

    • When BIT SYMBOL is selected Breaks for the bit acces s. • When INTERRUPT is selected Breaks for the interrupt o ccurrence or term ination. (The debugger for M32C not support.) 104[...]

  • Page 117

    7 Windows/Dialogs • When TRIGGER is selected Breaks for the status of signal input from extern al trace cable. 105[...]

  • Page 118

    7.7.2 Specify the Combinatori al Condition To specify a combinatorial condition, specify the desired condition from the combinatorial condition specification area. • When AND or OR is selected In the event specification area, th e event used and a pa ss count for th at event can be specified. To alter the pass count, while the event to alter is b[...]

  • Page 119

    7 Windows/Dialogs 7.7.3 Specify the Process ID By specifying a process ID, it is possible to detect only event establishment under specific conditio ns. Example: Enable only the event that occurs in a specific task when us ing the realtime OS. 7.7.4 Command Button The buttons on this window has the following meanings. Butto n Function Reset Discard[...]

  • Page 120

    7.7.5 Specify the Events (Instruction Fetch) To specify an instruction fetch event, change the event select dialog box's Event Type to "FETCH". The event is established when inst ruction is fetched from the specif ied address or an y address in the specified address range. 7.7.5.1 In struction Fetch of Spec ified Address Set as below[...]

  • Page 121

    7 Windows/Dialogs 7.7.5.2 In struction Fetch of Spec ified Address Ar ea(In) Set as below. Example) Instruction fetch at address 80000h to 80FFFh 109[...]

  • Page 122

    7.7.5.3 In struction Fetch of Spec ified Address Area (Out) Set as below. Example) Instruction fetch at any addre ss other than the range 80000h to 80FFFh 110[...]

  • Page 123

    7 Windows/Dialogs 7.7.5.4 En tering/exiting to specifi ed function Set as below. Example) Entering a break to function name "wait" Example) Exiting from function name "wait" 111[...]

  • Page 124

    7.7.6 Specify the Events (Memory Access) To specify a memory access event, change the event select dialog box's Ev ent Type to "DATA ACCESS". The event is established when memory is accessed at the specified address or under conditions set for the specified address range. 7.7.6.1 Mem ory Access(T he debugger for M32C) ATTENTION It is[...]

  • Page 125

    7 Windows/Dialogs 7.7.6.1.1. Writing/Reading a Specified Address Set as below. Example) Writing to even address 400h 113[...]

  • Page 126

    Example) Writing byte len gth data 32h to even address 400h 114[...]

  • Page 127

    7 Windows/Dialogs Example) Writing byte len gth data 32h to odd address 401h Contents of settings vary with each product and bus width. (8 bits bus width) 115[...]

  • Page 128

    (16 bits bus width) 116[...]

  • Page 129

    7 Windows/Dialogs Example) Writing word len gth data 1234h to even address 400h Contents of settings vary with each product and bus width. (8 bits bus width) Please specify "And" of the 1st point and th e 2nd point for a combination condition. 1st point 117[...]

  • Page 130

    2nd point 118[...]

  • Page 131

    7 Windows/Dialogs (16 bits bus width) 119[...]

  • Page 132

    Example) Writing data 10h - 3Fh to even address 400h 120[...]

  • Page 133

    7 Windows/Dialogs 7.7.6.1.2. Reading/writing data to the sp ecified address range Set as below. Example) Writing data to ad dresses ranging from 400h to 40Fh 121[...]

  • Page 134

    7.7. 6.1. 3. Re ading/ writ ing dat a to addr esses ou tside the spec ified r ange Set as below. Example) Writing data to ad dresses below 7FFh 122[...]

  • Page 135

    7 Windows/Dialogs 7.7.6.2 Mem ory Access(The debugger for M16C/R8C) 7.7.6.2.1. Writing/Reading a Specified Address Set as below. Example) Writing to even address 400h 123[...]

  • Page 136

    Example) Writing byte len gth data 32h to even address 400h 124[...]

  • Page 137

    7 Windows/Dialogs Example) Writing byte len gth data 32h to odd address 401h Contents of settings vary with each product and bus width. (8 bits bus width) 125[...]

  • Page 138

    (16 bits bus width) 126[...]

  • Page 139

    7 Windows/Dialogs Example) Writing word len gth data 1234h to even address 400h 127[...]

  • Page 140

    Example) Writing data 10h - 3Fh to even address 400h 128[...]

  • Page 141

    7 Windows/Dialogs 7.7.6.2.2. Reading/writing data to the sp ecified address range Set as below. Example) Writin g data to addresses ranging fr om 400h to 40Fh 129[...]

  • Page 142

    7.7. 6.2. 3. Re ading/ writ ing dat a to addr esses ou tside the spec ified r ange Set as below. Example) Writing data to ad dresses below 7FFh 130[...]

  • Page 143

    7 Windows/Dialogs 7.7.6.3 Mem ory Access(The debu gger for 740) The debugger For 740, a write of word length data to the even addr ess cannot be detected, either. 7.7.6.3.1. Writing/Reading a Specified Address Set as below. Example) Writing to even address 400h 131[...]

  • Page 144

    Example) Writing byte len gth data 32h to even address 400h 132[...]

  • Page 145

    7 Windows/Dialogs Example) Writing data 10h - 3Fh to even address 400h 133[...]

  • Page 146

    7.7.6.3.2. Reading/writing data to the sp ecified address range Set as below. Example) Writing data to ad dresses ranging from 400h to 40Fh 134[...]

  • Page 147

    7 Windows/Dialogs 7.7. 6.3. 3. Re ading/ writ ing dat a to addr esses ou tside the spec ified r ange Set as below. Example) Writing data to ad dresses below 7FFh 135[...]

  • Page 148

    7.7.7 Specify the Events (Bit Access) To specify a bit access ev ent, chan ge the event select dialog box's Event Type to "BIT SYMBOL". The event is established when the specified bit at the specified address or specified bit symbol is accessed under specified conditions. 7.7.7.1 Wri ting/Reading a S pecified Bit Set as below. Exampl[...]

  • Page 149

    7 Windows/Dialogs 7.7.7.1.1. Writing/Reading a Specified Bit Symbol Set as below. Example) Writing "1" to bit sy mbol "bitsym" 137[...]

  • Page 150

    7.7.8 Specify the Events (Interrupt) To specify an interrupt event, change Event Type in the event select dialog box to "INTERRUPT". When an interrupt is generated or finished, the event is established. 7.7.8.1 Int errupt Occurren ce Set as below. 138[...]

  • Page 151

    7 Windows/Dialogs 7.7.8.2 Int errupt Termination Set as below. 139[...]

  • Page 152

    7.7.9 Specify the Events (External Trigger Signal) To specify an event for external tr igger signal, change Event Type in the event select dialog box to "TRIGGER". When the signal from th e external tr ace signal input c abl e is in a specified state, the event is established. Rising/fallin g edges are detected from the sign al on the ext[...]

  • Page 153

    7 Windows/Dialogs Example) Fall of EXT1(brown) signal 7.7.9.2 Com bination of rise/fall edge s Set as below. Example) Rise of EXT0 (white)/EXT7 (purple) signal, fall of EXT1 (brown) signal 141[...]

  • Page 154

    7.7.10 Specify the Event Combination Condit ion Use the Combination group of the event setting windows to specify the combinatorial conditions of events. The combination of two or more events can be used. One of the following combinatoria l conditions can be selected. AND All of the specified ev ents are established AND(Same Time) The specified eve[...]

  • Page 155

    7 Windows/Dialogs 7.7.10.2 Select AND(Same Time) Change the Combination group to "AND (Same Time)". Next, check (t urn on) an event in the event specification area that you w ant to use. No pass counts can b e specified (fixed to 1). 7.7.10.3 Selec t State Transition Change the Combination group to "State Transition". The De tai[...]

  • Page 156

    Sequential specification Use the buttons included in the Sequential gr oup. Pass counts can be specified from the popup menu that appears when selecting an ev ent. The contents set here are re flected in the state transition diagram. Example: Events A1, A2, and A3 that occur successively in that order are established 144[...]

  • Page 157

    7 Windows/Dialogs 7.7.11 Specify the Process ID By specifying a task name (task number) , it is possi ble to enable only the even ts that occurred in the specified task. 7.7.11.1 Specify the Task Only the events from a specified task can be detected. Events from other than a specified task can also be detected. Check the Enable check box included i[...]

  • Page 158

    7.8 Protect Window The Protect window sets the protect break (memory protect) function of the emulator. • The protect break function is disa bled at start of the debugger. • Three types of protect break attr ibutes are provided as below: - Access Disable (read/write di sabled, display in red) - Read Only (write disabled, display in yellow) - R/[...]

  • Page 159

    7 Windows/Dialogs 7.9 Trace Point Setting Window The Trace Point Setting window is used to set trace points. • The events listed below can be specif ied as trace events. If the conten ts of events are altered, they are marked by an as terisk (*) on the title bar. Th e asterisks (*) are not display ed after setting up the emulator. - The debugger [...]

  • Page 160

    7.9.1 Specify the Trace Event To set events, double-click to select the event you wa nt to set from the event setting area of the Trace Point Setting Window. This open s the dialog box shown below. Following events can be set by specifyi ng Event Type in this dialog box. • When FETCH is selected Traces for the instruct ion fetch. (The debugger fo[...]

  • Page 161

    7 Windows/Dialogs • When DATA ACCESS is selected Traces for the memory a ccess. • When BIT SYMBOL is selected Traces for the bit access. 149[...]

  • Page 162

    • When INTERRUPT is selected Traces for the interrupt oc currence or terminat ion. (The debugger for M32C not support.) • When TRIGGER is selected Traces for the status of signal in put from external trace cable. 150[...]

  • Page 163

    7 Windows/Dialogs 7.9.2 Specify the Combinatori al Condition To specify a combinatorial condition, specify the desired condition from the combinatorial condition specification area. • When AND or OR is selected In the event specification area, th e event used and a pass count for th at event can be specified. To lter the pass count, while the eve[...]

  • Page 164

    • When State Transition is selected Click the Details... button, and the dialog box sh own below appears. Specification by a state transition diagram or Sequential specific ation can be used. If the content of any event is altered, it is marked with an asterisk (*) on the title bar. Once cond itions are set in the emulator, asterisks are not disp[...]

  • Page 165

    7 Windows/Dialogs 7.9.5 Specify the Tr ace Write Cond ition Conditions for cycles to be written to trace memory can be specified. Total Writes all cycles. Pick up Writes only the cycles wh ere specified condition holds true. Exclude Writes only the cycles where sp ecified condition does not hold true. Also, following three write modes are supported[...]

  • Page 166

    7.9.7 Specify the Events (Instruction Fetch) How to set events for fetch is same as the way for H/W Break Point Setting Window. For detail about the setting, refer to " 7.7.5 Specify the Events (Instruction Fetch) " 7.9.8 Specify the Events (Memory Access) How to set events for memory access is same as the way for H/W Break Point Setting [...]

  • Page 167

    7 Windows/Dialogs 7.9.14 Specify the write condition Trace data write conditions can be specified. You can specify the following write conditions: 1. Write conditions unlimited (default) 2. Cycles from the start event esta blished to the end event established 3. Only cycles where the st art event is established 4. Cycles from the star t event estab[...]

  • Page 168

    • For condition 3, choose the Mode show n below and set the Start event. • For condition 4, choose the Mode show n below and set the Start event. 156[...]

  • Page 169

    7 Windows/Dialogs Similarly, when specifying conditions 5 to 7, choos e "Exclude" and click the "Detail..." button to open the Realtime-trace Write Condition dialog box. • For condition 5, choose the Mode shown be low and set the Start and End events. • For condition 6, choose the Mode show n below and set the Start event. 1[...]

  • Page 170

    • For condition 7, choose the Mode show n below and set the Start event. 158[...]

  • Page 171

    7 Windows/Dialogs 7.10 Time Measurement Window The Time Measurement window displays the minimum/maximum/average exec ution time and measurement count at any measurement point. The execution time of up to 4 measurement points can be measured simultaneo usly. You can specify the event for the measurement cond ition in the same manner as when specifyi[...]

  • Page 172

    7.10.1 Specify the Time Measurement Eve nt The events listed below can be sp ecified as measurement events. • The debugger for M32C Memory Access, Bit Acces s, External Trigger (* Can be substituted by memory access. (Acces s type = Read)) • The debugger for M16C/R8C Fetch, Memory Access, Bit Access, Interrupt, External Trigger • The debugger[...]

  • Page 173

    7 Windows/Dialogs • When FETCH is selected Measures for the inst ruction fetch. (The debugger for M32C not support. When usin g these products, use m emory access instead.) • When DATA ACCESS is selected Measures for the me mory access. 161[...]

  • Page 174

    • When BIT SYMBOL is selected Measures for the bi t access. • When INTERRUPT is selected Measures for the interr upt occurrence or term ination. (The debugger for M32C not support.) 162[...]

  • Page 175

    7 Windows/Dialogs • When TRIGGER is selected Measures for the status of sign al input from external trace c able. 163[...]

  • Page 176

    7.10.2 Time Measurement Condition For the time measurement conditions, the following can be specified for each measurement interval. Measures the time in an interval from where the start event is established till where the end event is established. Measures the time from where an event is established till where the next event is established. Measur[...]

  • Page 177

    7 Windows/Dialogs 165 7.10.4 Specify the Events (Instruction Fetch) How to set events for fetch is same as the way for H/W Break Point Setting Window. For detail about the setting, refer to " 7.7.5 Specify the Events (Instruction Fetch) " 7.10.5 Specify the Events (Memory Access) How to set events for memory access is same as the way for [...]

  • Page 178

    7.10.9 Set the Measurement Conditi on For the debugger, the following measur ement conditions can be specified. • Measure the execution time between the events. • Measure a period at which intervals events occur. • Measure the time at which events are established. By specifying a function name, it is possible to meas ure the execution time of[...]

  • Page 179

    7 Windows/Dialogs 7.10.9.2 Measure the event occurrenc e cycle 1. Set the measurement event (m easurement star t event only). 2. Specify the following in the Meas urement Condition Designation dialog. 7.10.9.3 Mea sure the even t est ablishment time 1. Set the measurement event (m easurement star t event only). 2. Specify the following in the Meas [...]

  • Page 180

    7.10.9.4 Mea sure the execution time of the specified function (1) Measure the execution time of the specified function. In this mode, the function top a ddress is automatically registered to the measurement start event, and the function end address to the measur ement end address. The measurement result contains the execution time of other functio[...]

  • Page 181

    7 Windows/Dialogs 7.10.9.5 Mea sure the execution time of the specified function (2) Measure the execution time of the specified function. In this mode, the function address range is automa tically registered to the measurement start event. The measurement result does not contain the exec ution time of other function called within the specified fun[...]

  • Page 182

    7.11 Trace Window The Trace Window is used to display the results of real-time trace measurement. • Bus mode This mode allows you to inspect cycle-by-cy cle bus information. The display content depends on the MCU and simulator system used. In additi on to bus information, this mode allows disassemble, sou rce line or data acce ss inform ation to [...]

  • Page 183

    7 Windows/Dialogs 1. Cycle display area: Shows tr ace cycles. Double-click here to bring up a dialog box to change th e displayed cycle. 2. Label display area: Shows labels c orresponding to address bus information. Double-click here to bring up a dialog box to sear ch for addresses. 3. Bus information display area: Th e content di splayed here dif[...]

  • Page 184

    7.11.2 Configuratio n of Disassemble Mode When disassemble mode is selected while bus mode is unselected, tr ace information is displayed in disassemble mode. Disassemble mode is configured as s hown below. 1. Address displ ay area: Shows addresse s corresponding to in structions. Double-clic k here to bring up a dialog box to search for addr esses[...]

  • Page 185

    7 Windows/Dialogs 7.11.3 Configuratio n of Data Access Mode When data access mode is selected while bus mo de and disassemble mode are unselected, trace information is displayed in data access mode. Da ta access mode is configured as shown below. 1. Data access display area: Shows data access infor mation. If the information displayed here is "[...]

  • Page 186

    7.11.4 Configuratio n of Source Mode When only source mode is selected, trace informat ion is displayed in source mode. Source mode is configured as shown below. 1. Line number display area: Shows the line number information of the displayed file. Double-click here to bring up a dialog box to ch ange the displayed file. 2. Address display area: Sh [...]

  • Page 187

    7 Windows/Dialogs 175 7.11.5 Extended Menus This window has the following popup menus that can be brought up by right-clicking in the window. Menu Function BUS Display the information of BUS mode. DIS Display the information of Disassemble mode. SRC Display the information of Source mode. DATA Display the informat ion of Data access mode. Cycle... [...]

  • Page 188

    7.11.6 Display of bus information on the M32C De bugger From left to right, the contents are as follows: • Address • The status of the address bus • Data The status of the data bus • BUS The width of the external data bus ("8b" fo r an 8-bit data bus, and "16b" for a 16-bit d ata bus) • BIU This shows the status betwee[...]

  • Page 189

    7 Windows/Dialogs 177 Representation Status C U P O C P O R P Operation co e size d Operand size - - - No accessing CPU 0 1 0byte 1byte CPU 0 2 0byte 2bytes CPU 0 3 0byte 3bytes CPU 1 0 1byte 0byte CPU 1 1 1byte 1byte CPU 1 2 1byte 2bytes CPU 1 3 1byte 3bytes CPU 2 0 2bytes 0byte CPU 2 1 2bytes 1byte CPU 2 2 2bytes 2bytes CPU 3 0 3bytes 0byte CPU 3[...]

  • Page 190

    7.11.7 Display of bus information on the M16C/ R8C Debugger From left to right, the contents are as follows: • Address The status of the address bus • Data The status of the data bus • BUS The width of the external data bus ("8b" fo r an 8-bit data bus, and "16b" for a 16-bit d ata bus) • BIU This shows the status betwee[...]

  • Page 191

    7 Windows/Dialogs 179 Display format Status - No change CB Operation code read (bytes) RB Operand read (bytes) QC Instruction queue b uffer clea r CW Operation code read (words) RW Operand read (words) • QN Shows the number of bytes stor ed in the instruction queue buffer in the range 0 to 4. • B-T Shows the level of the ex ternal break trigger[...]

  • Page 192

    7.11.8 Display of bus information on the 740 Debugger From left to right, the contents are as follows: • Address The status of the address bus • Data The status of the data bus • Sync Th is si gnal is ou tp ut wh en f et ch i ng an ins truction op-code. When an op-code is being fetched, this signal indicates a log ic 1.This Sync value is some[...]

  • Page 193

    7 Windows/Dialogs 7.12 Data Trace Window The Data Trace Window is used to analyze th e results of real-time trace measurements and graphically show data access information. It operates in conjunction with Trace Window . • In the data reference area, you can inspect memory values at the point of a cycle currently in interest or the values of regis[...]

  • Page 194

    7.12.1 Extended Menus This window has the following popup menus that can be brought up by right-clicking in the window. Menu Function Analyze Trace Data Analyze the realtime-trace data. Set Cycle... Specify the display cycle. Sync with Trace Window Sync hronize with Trace Window. 1byte Display in 1By te unit. 2bytes Display in 2Byte un it. Data Len[...]

  • Page 195

    7 Windows/Dialogs 7.13 GUI I/O Window The GUI I/O window allows you fo r port input by creating a user t arget system key input panel (button) in the window and clicking the created button. And this window also allows you to implement the user target system output panel in the window. • You can arrange the following parts on the window. - Label ([...]

  • Page 196

    7.13.1 Extended Menus This window has the following popup menus that can be brought up by right-clicking in the window. Menu Function Select Item Select an I/O item. Delete Delete the selected I/O item. Copy Copy the selected I/O item. Paste Paste the copied I/O item. Create Button Create a new button item. Create Label Create a new label item. Cre[...]

  • Page 197

    7 Windows/Dialogs 7.14 MR Window Use the MR Window to display the status of the realtime OS. The debugger for 740 doesn't support this fun ction. You can only use the MR W indow when you have do wn loaded a program that uses the r ealtime OS (if the downloaded program does not use the MR, nothin g is displayed in the MR Window when it is opene[...]

  • Page 198

    7.14.1.1 Ex tended Menus This window has the following popup menus that can be brought up by right-clicking in the window. Menu Function Task Displays Task status. Ready Queue Displays Ready status. Timeout Queue Displays Timeout status. Event Flag Dis plays Event Flag status. Semaphore Displays Semaphore status. Mailbox Displays Mailbox status. Da[...]

  • Page 199

    7 Windows/Dialogs 7.14.2 Display the Task Status In the MR window, select Popup Menu - [Mode] -> [Tas k]. By double-clicking any line, the in formation on the task context is displayed in the Context dialog. For details on the Context dialog, see " 7.14.12 Display the Task Context " The following data is displayed in the status bar. 7.[...]

  • Page 200

    • *1Task Status Display Status RUN RUNNING state RDY READY state SUS SUSPENDED state DMT DORMANT state WAI(SLP) Sleeping state WAI(SLP)-SUS Sleeping state (suspended) WAI(SLP-TMO) Sleeping state with time-out WAI(SLP-TMO)-SUS Sleeping stat e with time-out (suspended) WAI(DLY) Delayed state due to dly_tsk WAI(DLY)-SUS Delayed state due to dly_tsk [...]

  • Page 201

    7 Windows/Dialogs 189 7.14.2.2 Displ ay the Task Statu s(When the realtime OS i s MRxx conformed to uITRON specifica tions V.4.0.) All the tasks defined in the config uration are listed in th e order of ID number. The function of each item is as described below. (When the realtime OS is MRxx conformed to uITRON specifications V.4.0.) Items Contents[...]

  • Page 202

    • *1Task Status Display Status RUN RUNNING state RDY READY state SUS SUSPENDED state DMT DORMANT state WAI(SLP) Sleeping state WAI(SLP)-SUS Sleeping state (suspended) WAI(SLP-TMO) Sleeping state with time-out WAI(SLP-TMO)-SUS Sleeping stat e with time-out (suspended) WAI(DLY) Delayed state due to dly_tsk WAI(DLY)-SUS Delayed state due to dly_tsk [...]

  • Page 203

    7 Windows/Dialogs • *2Display the Wait Cancellati on Condition of Event Flag Wfmode Statu s TWF_ANDW Waits for all bits set in the wait bit p attern to be set (AND wait) TWF_ORW Waits for any one bit set in the wait bit pattern to be set (OR wait) 7.14.3 Display the Ready Queue St atus In the MR window, select Popup Menu - [ Mode] -> [Ready Qu[...]

  • Page 204

    7.14.4 Display the Timeout Queue Status In the MR window, select Popup Menu - [Mode] -> [Timeout Queue]. 7.14.4.1 Displ ay the Timeout Queue Statu s(When th e realtime OS is MRxx conformed to uITRON specifications V.3.0.) The function of each item is as described below. Tasks waiting at present are displa yed in the descending order of ti meout [...]

  • Page 205

    7 Windows/Dialogs 193 7.14.4.2 Displ ay the Timeout Queue Statu s(When th e realtime OS is MRxx conformed to uITRON specifications V.4.0.) The function of each item is as described below. Tasks waiting at present are displa yed in the descending order of ti meout value. (When the realtime OS is MRxx conformed to uITRON s pecifications V.4.0.) Item [...]

  • Page 206

    7.14.5 Display the Event Flag Status In the MR window, select Popup Me nu - [ Mode] -> [Event Flag]. 7.14.5.1 Displ ay the Event Flag S tatus(When the re altime OS is MRxx con formed to uITRON specifications V.3.0.) All the event flags defined in the co nfiguration are liste d in the orde r of ID number. The function of each item is listed below[...]

  • Page 207

    7 Windows/Dialogs 195 • The following are displayed in the Flgatr area: TA_TFIFO Task wait queue is in FIFO order TA_TPRI Task wait queue is in task priority order TA_WSGL Only one task is allowed to be in the waiting state for the eventflag TA_WMUL Multiple tasks are allowed to be in the waiting state for the eventflag TA_CLR Eventflag's bi[...]

  • Page 208

    7.14.6 Display the Semaphore Status In the MR window, select Popup Menu - [Mode] -> [S emaphore]. 7.14.6.1 Displ ay the Semaphore Status(When the re altime OS is MRxx co nformed to uITRON specifications V.3.0.) All the SEMs defined in the configuration are listed in the order of ID number. The function of each item is listed below. (When the rea[...]

  • Page 209

    7 Windows/Dialogs 197 • The following are displayed in the Sematr area: TA_TFIFO Task wait queue is in FIFO order TA_TPRI Task wait queue is in task priority order • When a task connected to the SEM queue is in th e state of waiting with timeout enabled (waiting in twai_sem), a string "[tmo]", which indicate s a state of waitin g with[...]

  • Page 210

    7.14.7 Display the Mailbox Status In the MR window, select Popup Menu - [Mode] -> [ Mailbox]. 7.14.7.1 Displ ay the Mailbox Sta tus (When the realtime OS i s MRxx conformed to u ITRON specifications V.3.0.) All the mail boxes defined in the configuration are li sted in the order of ID number. The function of each item is listed below. (When the [...]

  • Page 211

    7 Windows/Dialogs 199 7.14.7.2 Displ ay the Mailbox Sta tus (When the realtime OS i s MRxx conformed to u ITRON specifications V.4.0.) All the mail boxes defined in the configuration are li sted in the order of ID number. The function of each item is listed below. (When the realtime OS is MRxx conformed to uITRON specifications V.4.0.) Item Content[...]

  • Page 212

    7.14.8 Display the Data Queue Stat us In the MR window, select Popup Menu - [Mode] -> [ Data Queue]. 7.14.8.1 Displ ay the Data Queue Statu s(When th e realtime OS is MRxx conformed to uITRON specifications V.4.0.) All the data queues defined in the configuration are listed in the orde r of ID number. The functio n of each item is listed below. [...]

  • Page 213

    7 Windows/Dialogs 201 • The Data Queue (Wait) field displays a string "Sen d" if a task wait ing for a message sending, and then displays the ID numbe r and na me of the task waiting for a message sending. Also, if a task waiting for a message receivin g, displays a string "Receive" and th en displays the ID number and name of[...]

  • Page 214

    7.14.9 Display the Cycle Handler Status In the MR window, select Popup Me nu - [ Mode] -> [Cyclic Handler]. 7.14.9.1 Displ ay the Cycle Handler S tatus(When the rea ltime OS is MRxx conform ed to uITRON specifications V.3.0.) All the cycle handlers defined in the configurat ion are listed in the order of ID number. The function of each item is l[...]

  • Page 215

    7 Windows/Dialogs 203 7.14.9.2 Displ ay the Cycle Handler S tatus(When the rea ltime OS is MRxx conform ed to uITRON specifications V.4.0.) All the cycle handlers defined in the configurat ion are listed in the order of ID number. The function of each item is listed below. (When the realtime OS is MRxx conformed to uITRON specifications V.4.0.) Ite[...]

  • Page 216

    7.14.10 Display the Alarm Handler Status In the MR window, select Popup Me nu - [ Mode] -> [Alarm Handler]. When the realtime OS is MRxx conformed to uITRON specifications V.3.0, the following data is displayed in the status bar. 7.14.10. 1 Display the Alar m Handler Status(Whe n the realtime OS is M Rxx conformed to uITRO N specifications V.3.0[...]

  • Page 217

    7 Windows/Dialogs 7.14.11 Display the Memory Pool Status In the MR window, select Popup Menu - [Mode] -> [Memory Pool]. 7.14.11.1 Di splay the Memory Pool Sta tus(When the realtime OS is MRxx confor med to uITRON specifications V.3.0.) All the memory pools defined in the configuration are listed in the order of ID number. (The fixed length data [...]

  • Page 218

    7.14.11.2 Di splay the Memory Pool Sta tus(When the realtime OS is MRxx confor med to uITRON specifications V.4.0.) All the memory pools are listed in the order of ID number. The function of each item is listed below. (When the realtime OS is MRxx conformed to uITRON specifications V.4.0.) Item Contents ID ID No. of memory pool Mplatr Attribute of [...]

  • Page 219

    7 Windows/Dialogs 7.14.12 Display the Task Context 7.14.12. 1 Display the Task Con text In the MR window, select Popup Menu - [C ontext...]. The Context dialog box is opened. The Context dial og box is used to reference/specify the context information of the specified task. You can also open the Context dialog box by double -clicking the data displ[...]

  • Page 220

    7.14.12. 2 Change the t ask context Enter the task ID number in the Ta sk ID field in the Context dialog and c lick the Set button. The Set Context dialog is opened. The Set Context dialog is used to set the specif ied context register value of the specified task. Specify the register to be changed in the Register field list box and enter the value[...]

  • Page 221

    7 Windows/Dialogs 7.15 MR Trace Window The MR Trace window measures the task execution history of a program using the real time OS and displays the result graphically. The debugger for 740 doesn't support this fun ction. In addition to the task execution history, a histor y of various other o perations each are traced and displayed, includin g[...]

  • Page 222

    When moving the mouse to the information displaye d in the window, the pop up window as below is opened, showing the detailed information. Interrupt handling or task execution his tory System call issue h istory Task state transition histor y Following information is disp layed in the status bar. • Time value at which start marker is positioned ?[...]

  • Page 223

    7 Windows/Dialogs 211 7.15.1 Extended Menus This window has the following popup menus that can be brought up by right-clicking in the window. Menu Function Start Marker M ove the start marker in the display area. End Marker Move the end marker in the display area. Indicator Move the indicator in the disp lay area. Adjust Adjust range of start and e[...]

  • Page 224

    7.15.2 Refer the Execution Hi stor y of Task(MRxx Window) You can reference the task execution his tory in the MR Trace window. You ca n reference t he execution history statistica l pr ocessing result in the MR An alyze window. These windows are available for a target program using our re al time OS (MRxx). 7.15.2.1 Selec t the Trace Range To meas[...]

  • Page 225

    7 Windows/Dialogs 7.15.2.4 Refer the Execution Hi story of Task You can reference the ta sk execution transition in the M R Trace window. By moving the mouse to any information displayed in the window, the following window is opened, showing the detailed information. Interrupt handling or task execution his tory System call issue h istory Task stat[...]

  • Page 226

    7.15.2.4.1. Search the History of System C all Issue Click the "Search" button in the tool bar. The Search di alog is opened. (Or, select Menu - [Search ...]. ) Specify the search condition. With the function code (R0: Functi on Code) and error co de (R0: Error Code), you can specify multiple values (OR condition). Other items are searche[...]

  • Page 227

    7 Windows/Dialogs 7.15.2.4.2. Change the display magnification Click the "Expand" button or "Reduce" button in the tool bar. (Or, select Me nu - [Expand] or [Reduce].) The display is expanded or reduced using the left corner of the graph area as the radix point. By default, the display is expanded or reduced with display scale o[...]

  • Page 228

    7.15.2.4.4. Change the task display order Drag the task/interrupt routine to be moved (the left portion of the graph) to the destination. To initialize the display order, select Menu - [Init Order]. 7.15.2.4.5. Display the specific task only Click the task/interrupt routine to be hidden (the le ft portion of the graph). Every time you click, the se[...]

  • Page 229

    7 Windows/Dialogs 7.15.2.5 Mea sure the Execution T ime of Task You can measure the execution time between the mark ers by ch anging the posi tions of start mar ker and end marker in the MR Trace window. Drag the start marker position and end marker position. The time interval between the marker s is displayed in the status bar. Note [Definition of[...]

  • Page 230

    7.16 MR Analyze Window The MR Analyze window displays the result of th e measurement data statis tically analyzed within the range specified by the st art marker and the end marker in the MR Trace window. The debugger for 740 doesn't support this fun ction. The MR Analyze window supports three display mode as below: • CPU occupation state by[...]

  • Page 231

    7 Windows/Dialogs 7.16.2 Configuratio n of Ready State Duration Display Mode The ready state time display mode by task is used to display the results generated from stati stical process of the time required from execution ready to transition to execution by task. The sta tistical res ult is d isplayed wi thin the ra ng e specified by the start ma r[...]

  • Page 232

    7.16.4 Extended Menus This window has the following popup menus that can be brought up by right-clicking in the window. Menu Function Run Time CPU occupancy status dis play mode. Rdy->Run Ready state durati on display mode. System Call System call history display mode. Pick Up System Call... Extract spec ified s ystem calls display mode. Toolbar[...]

  • Page 233

    7 Windows/Dialogs 7.16.5.2 Refer the Ready Queue Time Click the Ready->Run button in the tool bar. (Or, select Menu - [Rd y -> Run].) The time required from execution ready state to tr ansition to execution stat e by task is processed statistically and displayed. The data displayed is the statistical results of the range specified with the st[...]

  • Page 234

    7.16.5.3.1. Extract the Issuance History Click the "Pick Up" button in th e tool bar. (Or, select Menu - [Pick Up System Call...].) The dialog shown below is opened. Specify the search condition of the system call to be extracted and displayed. Extract the issuance histor y of the system call which meets the sp ecified condition and displ[...]

  • Page 235

    7 Windows/Dialogs 7.17 MR Task Pause Window The MR Task Pause Window realizes the task paus e function of the real time OS (MR308/MR30). The debugger for 740 doesn't support this fun ction. You can pause and unpause the s pecified task from this window. The window can be used only when the prog ram containing the system of th e MR308/MR30 for [...]

  • Page 236

    ATTENTION Task pause function uses the addr ess match interrupt of the MCU. Don't use this function when the target program uses the address match interrupt. If you use PC7501 emulator, this func tion is not available when you u se address match inturrpt br eak function. 7.17.2 Extended Menus This window has the following popup menus that can [...]

  • Page 237

    7 Windows/Dialogs 7.17.3 Pause the Specified Task Use the MR Task Pause window. To open the MR Task Pause window, select Me nu - [View] -> [RTOS] -> [ MR Task Pause]. 1. Click the ID field or (name) field in the task pause display field of the t ask line to be paused. After the target task is selected, the task ID number is displayed in the s[...]

  • Page 238

    7.17.3.1 P ause Task Being Ex ecuted at a Specified Posi tion 1. Click the ID field or (name) field of the task pause display field of the t ask line to be paused. After the target task is selected the task ID number appears in the status bar. In the task source display area, the program starting from the task start address is displ ayed (if the pr[...]

  • Page 239

    7 Windows/Dialogs 7.17.3.2 Pau se After a Paused Task is Executed up to Specifie d Position 1. Click the ID field or (name)field of the task pause display area of the target task. After the target task is selected, the task ID number is displayed in the status bar. In the task source display ar ea, the program starting from the task's Pause po[...]

  • Page 240

    7.17.3.3 Turn Pau se of Certain Task Off 1. Click the ID field or (name) fi eld in the task pause display area of the ask line to be released from the PAUSE state. After the ta rget task is selected, the task ID number is displ ayed in the status bar. The Unpause button is en abled (if the task is paused). 2. Click the Unpause button. The selected [...]

  • Page 241

    7 Windows/Dialogs 7.17.3.4 Displ ay Program Content s of Certain Task in Task Source Display Area Click the ID field of (name) field in the task pa use display area of the a sk line to be displayed. If the target task is paused, the task Pause position (context PC position) is displayed. If the target task is in a st ate other than Pause, the task [...]

  • Page 242

    7.18 Task Trace Window The Task Trace window measures th e task execution history of a prog ram using the real time OS and display it graphically. This window is available even wh en a target program using an OS ot her than our rea l time OS (MRxx) is downloaded. The content of each item is as follows. Items Contents ID Indicates a task ID number. [...]

  • Page 243

    7 Windows/Dialogs 231 The grid lines are displayed using th e start marker as the radix point. The scale is displayed, using the ti me at which the start marker is positioned as 0, with the left (forward in time) set to "minus" and the right (backward in time) set to "plus". The grid lines allow you to ro ughly understand the in[...]

  • Page 244

    7.18.2 Refer the Execution Hist or y of Task(Taskxx Window) You can reference the ta sk execution history in the Task Trace window. You can reference the e xecution history stat istical processing result in t he Task Analyze window. These windows are also available for a target program using an OS other than our real time OS (MRxx). 7.18.2.1 Prep a[...]

  • Page 245

    7 Windows/Dialogs 233 ATTENTION When specifying WORD in the access size when perf orming PID setting in the RTO S Information dialog, you must observe the following limits. (If th ese c onditions are not met, the system does not operate normally.) • The PID information storage area is allocated to an even address. • The PID information storage [...]

  • Page 246

    7.18.2.2 Refer the Execution Hi story of Task You can reference t ask trace tra nsi tion in the Task Trace window. By moving the mouse to the information displayed in the window, a window of the following example is opened, showing the detailed information. 7.18.2.2.1. Change the display magnification Click the Expand button or Reduce button in the[...]

  • Page 247

    7 Windows/Dialogs 7.18.2.2.2. Change the grid line display interval Select [Value ...] from popup menu by right-clicking on the windo w. The Value dialog is opened. Specify the time interval in the display. 7.18.2.2.3. Change the task display order Select [Color ...] from popup menu by right -clicki ng on the window. The Color dialog is opened. Cli[...]

  • Page 248

    7.18.2.3 Mea sure the Execution T ime of Task By changing the star t marker posi tion and end marker position in the Task Trace window, you can measure the execution time between the markers. Drag the start marker position and end marker position. The time interval between the marker s is displayed in the status bar. Note Definition of time value i[...]

  • Page 249

    7 Windows/Dialogs 7.19 Task Analyze Window The Task Analyze window displays the result of th e measurement data statistically analyzed within the range specified by the star t marker and the end marker in the Task Trace window. The Task Analyze window displa ys the CPU occupation state. The Task Analyze window functions to gether with the Task Trac[...]

  • Page 250

    7.19.2 Analyze the Execution History of Task You can reference the execution history statistica l processing in the Task Analyze window. This window shows the CPU occupation time and ratio by task. The Task Analyze window functions together with the Task Trace window. If the Task Trace window is not open, or the Task Trace window does not show any [...]

  • Page 251

    8 Table of Script Commands 239 8. T able of Script Commands The following script commands are prepared. The commands with yellow color displayi ng can be e xecuted at run time. The command to which " * " adheres behind i s not supported according to the product. 8.1 Table of Script Commands (classified by function) 8.1.1 Execution Command[...]

  • Page 252

    8.1.3 Register Operation Commands Comman Name d S ort Name h Contents Register R Checks and sets a register value 8.1.4 Memory Operation Comm ands Command ame N Short Name Contents DumpByte DB Displays the contents of memory (in 1-byte units) DumpWord* DW Displays the contents of memory (in 2-byte units) DumpLword* DL Displays the contents of memor[...]

  • Page 253

    8 Table of Script Commands 241 8.1.7 Hardware Break Setting Commands Command Name Sho t Name r Contents Hardw k areBrea HB Sets and checks a hardware bre ak Protect PT Sets and checks protect breaks BreakMode BM Sets and checks hardware brea k mode 8.1.8 Real-time Trace Commands Command Name Sh t Name or Contents TracePoint TP Sets and checks a tra[...]

  • Page 254

    8.1.12 Map Commands Comm nd Name a Short Name Contents Map* - Checks and sets mapping data 8.1.13 Clock Command Comm nd Name a Shor Name t Contents Clock CLK Checks and changes the clock 8.1.14 WatchDog Timer Commands Command Name Short ame N Contents WatchDogTimer* WDT Sets and checks the usage cond ition of the watchdog timer 8.1.15 C Language De[...]

  • Page 255

    8 Table of Script Commands 243 8.2 Table of Script Commands (alphabetical order) Command Name Short Name Contents AddPath - Adds the search path Alias - Specifies and checks command alias definitions Asse ble m A Line-by-line assembly Bit* - Checks and sets bit symbols BreakAt - Sets a software breakpoint by specifying a line No. BreakIn - Sets a s[...]

  • Page 256

    Path - Sets and checks the search path Pause - Waits for user input Print - Check value of specifie d C variable expression. Protec t PT Sets and checks protect breaks Radix - Sets and checks the radix for numerical input Register R Checks and sets a register value Reloa d - Re-downloads the target program Reset - Resets the target MCU Return RET E[...]

  • Page 257

    9 Writing Script Files 245 9. W riting Script Files This debugger allows you to run script files in a S cript Window. The script file contains the controls necessary for autom atically executing the script commands. 9.1 Structural Elements of a Script File You can include the following in script files: • Script commands • Assign statements • [...]

  • Page 258

    9.1.1 Script Command You can use the same script commands that yo u ente r in the Script Window. You can als o call script files from within other script files (nesting up to 10 levels). 9.1.2 Assign Stateme nt Assign statement s define and initialize macro vari ables and assign values. The following shows the format to be used. %macro-variable = e[...]

  • Page 259

    9 Writing Script Files 247 9.1.4 Loop Statement(while,e ndw) and Break Statement In loop statements, execution of a group of statements is repeated while the expression is true. The following shows the format to be used. while ( expression ) statement endw • If the expression is t rue, the grou p of statements is repeated. If fa lse, the loop is [...]

  • Page 260

    9.2 Writing Expressions This debugger allows you to use expressions for specifying addresses, data, and number of passes, etc. The following shows example commands using expressions. >DumpByte TABLE1 >DumpByte TABLE1+20 You can use the following elements in expressions: • Constants • Symbols and labels • Macro variables • Register var[...]

  • Page 261

    9 Writing Script Files 249 9.2.2 Symbols and labe ls You can include symbols and labels defined in your target program, or sy mbols an d labels defined using the Assemble command. • You can include alphanum erics, the underscore (_) , period (.), and quest ion mark (?) in symbols and labels. However, do not start with a numeric. • Symbols and l[...]

  • Page 262

    9.2.2.2 Prior ity levels of label s and symbols The conversion of values to labels o r s y m b o l s , a n d v i c e v e r s a , i s subject to the following levels of priority: • Conversion of address values 1. Local labels 2. Global labels 3. Local symbols 4. Global symbols 5. Local labels outside scope 6. Local symbols outside scope • Conver[...]

  • Page 263

    9 Writing Script Files 251 9.2.4 Register variables Register variables are used for using the values of re gisters in an ex pression. Precede the name of the register with '%' to u se it as a register variable. U se the following format. (The debugg er for 740 can use '_' instead of '%'. ) Product Name Register name Th[...]

  • Page 264

    9.2.7 Character constants The specified character or character string is converted into ASCII code an d processed as a constant. • Enclose characters in single quote marks. • Enclose character strings in double quote marks. • The character strin g must consis t of one or two characters (16 bits max.). If more than two characters are specif ie[...]

  • Page 265

    10 C/C++ Expressions 253 10. C/C++ Expressions 10.1 Writing C/C++ Expressions You can use C/C++ expressions consisting of the tokens shown below for registering C watchpoints and for specifying the values to be assigned to C watchpoints. Token Examp le Immediate values 10, 0x0a, 012, 1.12, 1.0E+3 Scope ::name, classname::member Mathematical operato[...]

  • Page 266

    10.1.2 Scope Resolution The scope resolution operator :: is available as following. Global scope: ::valiable name ::x, ::val Class scope: class name:: member name, cl ass name::class name ::member name, e.g. T::member, A::B::member 10.1.3 Mathematical Operators You can use the addition (+), su btraction (-), multiplication (*), and division (/) mat[...]

  • Page 267

    10 C/C++ Expressions 255 10.1.6 Sign Inversion Sign inversion is indicated by the minus sign (-). You can only specify "-immediate_value" or "-variable_name" . No sign inversion is performed if yo u specify 2 (or a ny even number of) m inus signs. Notes • There is no support currently for sign invers ion of floating point numb[...]

  • Page 268

    10.1.9 Pointers to Members Pointers to members using the ".*" or "->*" operator can be refered only in the f orms of variable name .* member name or variable name ->* member name. Example: class T { public: int member; }; class T t_cls; class T *pt_cls = &t_cls; int T::*mp = &T::member; In this case, t_cls .*mp and[...]

  • Page 269

    10 C/C++ Expressions 257 10.1.13 Casting to typedef Types You can use ca sting to typedef types (types other than the C basic types) and the pointer types to them. When casting to a pointer type, you can also use pointers to pointers and pointers to pointers to pointers, etc. Notes • You cannot cas t to struct or union ty pes or the pointers to t[...]

  • Page 270

    10.2 Display Format of C/C++ Expressions C/C++ expressions in the data di splay areas of the C Watch Window s are displa yed as their type name, C/C++ expression (variable name), and resu lt of calculation (value), as shown below. The following describes the display formats of the respective types. 10.2.1 Enumeration Types • When the result (valu[...]

  • Page 271

    10 C/C++ Expressions 10.2.3 Pointer Types • When the result of calculation is a point er type to other than a char* type, it is displayed in hexadecimal as follows: (unsigned int *) p = 0x1234(all Radices) • When the result of calculation is a cha r* type, you ca n select the displa y format of the string or a character in the C Watch window&ap[...]

  • Page 272

    10.2.4 Array Types • When the result of calcu lation is an array type other than a ch ar [ ] type, the starting address is displayed in hex as follows: (signed int [10]) z = 0x1234(all Radices)_ • When the result of calculation is a char [ ] type, it is displayed as follows: (unsigned char [10]) str = 0x1234 "Japan"(all Radices) If th[...]

  • Page 273

    10 C/C++ Expressions 10.2.8 When No C Symbol is Found If the calculated expression contai ned a C symbol that could not be found, it is displayed as follows: () x = <not active>(all Radices) 10.2.9 Synt ax Errors • When the calculated expression contains a syntax error, i t is displayed as follows: () str*(p = <syntax error>(all Radic[...]

  • Page 274

    11. Display the Cause of the Program Stoppage If the program is stoped by the de bug function, the cause of the sto ppage is displayed in the Output window or Status window ([Platform] sheet). The contents of a display and the meaning of "the cause of the stoppage" are as follows. Disp y The cause of the stoppage la Halt The stop by the [[...]

  • Page 275

    12 Attention 263 12. Attention 12.1 Common Attention 12.1.1 File operation on Windows 1. File Name and Directory Name - Operation is not guaranteed if your directo ry names and filenames include kanji. - Use only one period in a filename. 2. Specify the File and Directory - You cannot use "..." to specify two levels upper directories. - Y[...]

  • Page 276

    12.1.2.3 The deb ugger for 740 Only the ROM area memory -mapped in the area set as Internal can be designated for software breakpoint. You cannot set software b reakpoint in ROM area s memory-mapped in the SFR area, RAM area or other areas set as External. 12.1.3 Get or set C variables • If a variable is declared with the same name as th e type d[...]

  • Page 277

    12 Attention 265 12.1.4 Function name in C++ • When you input the address using the function na me in setting display address, setting break points, and so on, you can not specify the member function, operator f unction, and overloaded function, of a class. • You can not use function names for C/C++ expression • No script commands (e.g., brea[...]

  • Page 278

    12.1.9 Restriction of LPT port 1. The emulator uses a printer (parallel) port during LPT communications wi th personal computer. The IAR C compiler also uses this printer (parallel) port. When using the personal comp uter and the emulator during LPT communications, a problem arises that you cannot compile a program using the IAR C compiler . If thi[...]

  • Page 279

    12 Attention 267 12.1.10 Notes for coverage function Coverage Measurement is a function to rec ord the addresses accessed by the target program. These accessed addresses wi ll flow to the microcomputer address bu s. This may cause unexecuted addresses to be treated as executed addresses when calculating coverage. 12.1.11 Emulator reset switch If sy[...]

  • Page 280

    12.2 Attention of the M32C Debugger 12.2.1 Stack area used by the emulator The emulator uses the interrupt stac k area as a work area (20 bytes). Before starting debugg ing, be sure to reserve the u ser stack area + 20-byte area. 12.2.2 Interrupt stack pointer wh en resetting the target program The emulator sets the interrupt st ack pointer (ISP) t[...]

  • Page 281

    12 Attention 269 12.2.5 Hard ware Event • The debugger does not support a command fetch (F etch) or an interrupt as a hardware event. • If you specify word-length (2-byte length) data fr om an odd address as an event in the following data accesses, the ev ent is not detected. Also, even when any other bi t of the address that contains a specifi[...]

  • Page 282

    12.3 Attention of the M16C/R8C Debugger 12.3.1 Map of stack area used by the emulator The M16C/60,M16C/20 series emulators use a stack area of 4 by tes fr om 0FFFCh to 0FFFFh that is accessed at power-on reset. The emulator cannot st art up normally unless t hese 4 bytes of memory can b e accessed for read/writ e. Therefore, if one of the following[...]

  • Page 283

    12 Attention 271 12.3.5 Hard ware Event • If you specify word-length (2-byte length) data fr om an odd address as an event in the following data accesses, the ev ent is not detected. Also, even when any other bi t of the address that contains a specified b it is accessed during bi t access, the event ma y become effective. - Hardware Break Event [...]

  • Page 284

    12.3.8 Memory Space Expansion • C watch window, Memory window, and other debu gging window s can not show correc t values, when it shows the expanded ar ea of the memory space expans ion fuction. Debugging windows does not consider the bank register. • In MODE2 of memory space expansion, the area bank7 is always set the map as EXTERNAL. Please [...]

  • Page 285

    12 Attention 273 12.4 Attention of the 740 Debugger 12.4.1 Setting of Memory Map The map attributes immediately after the emulator has started up are External for 0h-3FFFh and Internal for 4000h-FFFFh. The memo ry map information must be altered to suit the target microcomputer's memory space. It is similar in th e case of the microcomputer th[...]

  • Page 286

    12.4.7 About the single-step executio n and the program br eak function in the internal RAM area of the mcu When debugging with the emulation pod M 38000L2-FPD, single-step execution and program break function in the inter nal RAM area are not available. When debugging the program transf er red to the internal RAM area, please use the free-run exec[...]

  • Page 287

    12 Attention 275 12.5 Option of C Compiler/Assembler/Linker We do not evaluate other settings, so we can not recommend to append other options. 12.5.1 When Using NCxx When -O, -OR or -OS option is specified at compilation, the source line information may no t be generated normally due to optimization, causin g step execution to be operated abnormal[...]

  • Page 288

    12.5.3 When Using the IAR C Compiler (EW) Please specify the project se tting by following process. 1. The Setting in the IAR Embedded Workbench When you select the menu [Project] -> [Options...], the dialog for "Options For Target " target"" will open. In this dialog, please select the "X LINK" as category, and se [...]

  • Page 289

    12 Attention 277 12.5.4 When Using the IAR C Compiler (ICC) 12.5.4.1 Specify the Option Please compile according to t he following procedures and link. • At compilation Specify the "-r" option. • Before linking Open the linker's option definition file (exten sion .xcl) to be read when linking and add "-FIEEE695" and &qu[...]

  • Page 290

    12.5.5 When Using the TASKING C Compiler (EDE) Please specify the project se tting by following process. 1. Select menu - [EDE]->[C Compiler Option]->[Pro ject Options...]. The "M16C C Compiler Options [Project Name]" dialog opens. Please set as follows by this dialog. - Optimeze Tab Please specify "No optimization" by Opt[...]

  • Page 291

    12 Attention 279 12.5.7 When Using the IAR EC++ Compiler (EW) Please specify the project se tting by following process. 1. The Setting in the IAR Embedded Workbench When you select the menu [Project] -> [Options...], the dialog for "Options For Target " target"" will open. In this dialog, please select the "X LINK" [...]

  • Page 292

    [MEMO] 280[...]

  • Page 293

    M16C PC4701 Emulator Debugge r V.1.03 User's Manual Publication Date: Jul. 01, 2007 Rev.1.00 Published by: Sales Strategic Planning Di v. Renesas Technology Corp . Edited by: Microcomputer Tool Development Department Renesas Solutions Co rp. © 2007. Renesas Technology Corp. and Renesas Solutions Corp., All rights reserved. Printed in Japan.[...]

  • Page 294

    M16C PC4701 Emulator Debugger V.1.03 User's Manual[...]