Fujitsu The Possibilities are Infinite

FAQ for FR Family

Tools


To FAQ List

  1. Up to what IO area can we use with "the _io type modifier"?
  2. It seems that the C compiler of FR handles "char" type and signed "char" type in the same way. Actually, what is the difference between them?
  3. When defining an initialized variable, is it necessary to transfer the ROM area of the initial value area to the RAM area by the startup program (startup.asm)?
  4. Tell us how to confirm the version of each tool of Softune.
  5. We want to use V5-version compiler but V6-version for the other components.
  6. When we confirmed the operation of the program generated in C, the control transited to the described function but not returned from the function. Why? (Target: MB91350A series)
  7. When we performed build, an error, telling "fr.h" file could not open, appeared. Why?
  8. Although we performed debug activation by Softune and pressed the reset button, the control did not jump to the reset vector address. Why? The vector address and mode data value are not set correctly.
  9. What is the setting for monitoring a value in RAM?
  10. For the MB91360 series, after flash loading by the tool, it seems that main program and boot loader program at address 50000 are overlapped. (Target: MB91360 series)
  11. What does the settings by [Project Setup], [MCU Setup], and [Bus Mode] of the Softune Workbench mean?
  12. For Control (S) of the MAP file, the setting of "@-ro ROM=xxxx @-ra RAM=xxx" and "-ro _ROM_1=xxx -ra _RAM_1=xxx" in latter part are overlapped. Is there any problem?
  13. Is there any method for outputting a warning when no macro definition was performed by a compiler of Softune?
  14. LAN settings of MB2198-01
  15. What is the degree of freedom for the oscillation frequency when the PC serial programmer is used?
  16. At Flash loader of MB91360, the comment, telling "Break at 00011042 by hardware breakpoint," is frequently output. (Target: MB91360)
  17. After setting the stepwise trace trap flag, we intended to perform the stepwise execution but continuous execution was carried out. Does it happen according to the specifications?
  18. Which cycles does the number of cycles displayed by the emulator debugger refer to?
  19. How can we acquire the trace when the control is transited to some function?
  20. Can we perform the ROM emulation by using SRAM on the target board? Because it is ROM at mass-production, basically WR is not connected. However, is there any problem if the WR signal is connected to SRAM in the CS0 space?
  21. Can we generate a program to be run in the area of 0x300000 in the Intel HEX format?
  22. Do the processing of .ahx, to .bin and .mhx to .bin make the same file?
  23. When a division exists in a program, Linker automatically allocates "\Softune\LIB\911\lib911.lib" from the library. Can we specify the allocation address of the lib file?
  24. Because we develop the Flash programming control program in C, the program is optimized so as not to operates as we intended.
  25. When the attached "download program" is executed to the Flash part of MB91FV360GA, the download takes long time (about five minutes). (Target: MB91FV360GA)
  26. We intended to "download" to the Flash part of MB91FV360GA, but the pull-down menu is not activated. (Target: MB91FV360GA)
  27. When the "-Kspeed" option is specified, the area named "CODE_4" is automatically generated. How can we prohibit this?
  28. We could not write to 0xA0000 to 0x19FFFF of Flash on Fujitsu's evaluation board MB91906EB by the program command. Why? (Target: MB91150 series)
  29. When compiling a C source by Fujitsu's C compiler, an error telling "Nested comment is not allowed" occurs. What should we do?
  30. Tell us how to inhibit the additional functions by V6-version compiler.
  31. We use Fujitsu's evaluation board and will use Fujitsu's PC programmer for programming the Flash built-in microcomputer. Which cable should we use from the PC, straight or cross? (Target: MB91350A series)

Up to what IO area can we use with "the _io type modifier"?

  • Answer :
    You can use it in the range of h'0000 to h'03FF. Since an _io-type modified variable is referenced by direct addressing, a code shorter than that in normal variable reference is generated.

It seems that the C compiler of FR handles "char" type and signed "char" type in the same way. Actually, what is the difference between them?

  • Answer :
    From the viewpoint of the syntax, "char" type is classified into the signed "char" and unsigned "char" types. When programming, consider that "char" type is signed "char" type if the C compiler handles "char" as signed and that "char" type is unsigned "char" if it handles "char" as the sign type. By default, Fujitsu's C compiler handles it as "char" type is unsigned "char" type. You can change the type by using option (-K SCHAR/UCHAE).

When defining an initialized variable, is it necessary to transfer the ROM area of the initial value area to the RAM area by the startup program (startup.asm)?

  • Answer :
    During program development by using the C compiler, variables with the initial value are generated and the processing for rewriting the variables is frequently performed. The variables with the initial value are located in ROM, but the variables will be rewritten during execution. Therefore, they should be in RAM at application execution. For this reason, transfer the initial value data to RAM before the application execution.

Tell us how to confirm the version of each tool of Softune.

  • Answer :
    For confirming the version of Workbench only, use the version information of HELP.
    For confirming the version of each tool, use "Ctrl + Alt + Shift + A".

We want to use V5-version compiler but V6-version for the other components.

  • Answer :
    It is supportable in the following procedure. (Not the formal response):
    Procedure 1: Install the V6-version components other than compiler.
    Procedure 2: Install the V5-version compiler.
    Procedure 3: At that time, the install folder of procedure 1 and 2 should be the same folder.

When we confirmed the operation of the program generated in C, the control transited to the described function but not returned from the function. Why? (Target: MB91350A series)

  • Answer :
    MB91350 has two registers for setting the RAM area. Because the initial settings of the data RAM limit control register (DRLR) and instruction RAM control register (FRLR) allow the use of only 4-kilobyte area, it is necessary to extend it to 8-kilobyte or 16-kilobyte by the settings in the startup program. Because the area specified as the STACK area is invalid, the correct STACK value could not be stored for returning from the function. Specify the addresses for IO_DRLR and IO_FRLR by the define declaration.

When we performed build, an error, telling "fr.h" file could not open, appeared. Why?

  • Answer :
    The include path setting for referencing the I/O header file may be incorrect. From the category items on [C/C++ compiler] selected by [Project], and [Project Setup], select "Include path" and confirm the path settings.

Although we performed debug activation by Softune and pressed the reset button, the control did not jump to the reset vector address. Why? The vector address and mode data value are not set correctly.

  • Answer :
    The mode data may not be set because the target file has not been loaded. After loading the target file, make sure that the mode data is set.

What is the setting for monitoring a value in RAM?

  • Answer :
    After choosing [View] and then [Real-time Memory], specify the address to be monitored to achieve the monitoring.

For the MB91360 series, after flash loading by the tool, it seems that main program and boot loader program at address 50000 are overlapped. (Target: MB91360 series)

  • Answer :
    You set the automatic link specified for memory allocation of Linker in ROM1, didn't you? In such a case, delete the memory allocation of ROM1 to handle the situation.

What does the settings by [Project Setup], [MCU Setup], and [Bus Mode] of the Softune Workbench mean?

  • Answer :
    The bus mode is the "function for inhibiting the access to the access inhibited area" when the debugger manipulates the memory. When "1. Disable" is selected, the inhibit check for the access area is not performed. When "2. Single-chip mode", "3. Internal ROM external bus mode", or "4. External ROM external bus mode" is selected, the access area check function corresponding to the memory area is applied. (The target LSI is the product with FR30 core.)

For Control (S) of the MAP file, the setting of "@-ro ROM=xxxx @-ra RAM=xxx" and "-ro _ROM_1=xxx -ra _RAM_1=xxx" in latter part are overlapped. Is there any problem?

  • Answer :
    "-ro _ROM_1=xxx -ra _RAM_1=xxx" in latter part of Confrol (S) of the MAP file is automatically output by Linker based on the CPU information file. When the memory map has not been specified by the Linker settings, this contents become valid. When "@-ro ROM=xxxx @-ra RAM=xxx" has been previously specified, the settings become valid. Outputting the latter part, "-ro _ROM_1=xxx -ra _RAM_1=xxx," can be prohibited by the prohibit option (-Xset_rora) of Linker.

Is there any method for outputting a warning when no macro definition was performed by a compiler of Softune?

  • Answer :
    When a formula of "#if" command is evaluated, the identifier not having been replaced by macro in "#define" is replaced with "0" before the evaluation of the formula. This complies with the ANSI specifications. Using "#error" enables you to find it undefined.
    Example:
    #if A!=0
    for(I=1;I<100;I++);
    #else
    #error A is not defined
    #endif

LAN settings of MB2198-01

  • Answer :
    See Appendix C, "LAN Settings" of Softune Workbench attached to Softune Manual.

What is the degree of freedom for the oscillation frequency when the PC serial programmer is used?

  • Answer :
    ±2%.

At Flash loader of MB91360, the comment, telling "Break at 00011042 by hardware breakpoint," is frequently output. (Target: MB91360)

  • Answer :
    This comment occurs at writing to each sector of Flash. It is not a problem. Wait for the comment to appear as many times as the number of sectors and for the processing to terminate.

After setting the stepwise trace trap flag, we intended to perform the stepwise execution but continuous execution was carried out. Does it happen according to the specifications?

  • Answer :
    When clearing the stepwise trace trap flag for stepwise execution, Note that the processing is continuously executed according to the specifications on the debugger side of Softune.

Which cycles does the number of cycles displayed by the emulator debugger refer to?

  • Answer :
    A CPU-machine clock is counted as one cycle.

How can we acquire the trace when the control is transited to some function?

  • Answer :
    You can trace it by using code event/data event as a trigger. However, since it is just the start trigger for the event, you need to set the trace buffer full break. (Otherwise, the trace is overwritten.)

Can we perform the ROM emulation by using SRAM on the target board? Because it is ROM at mass-production, basically WR is not connected. However, is there any problem if the WR signal is connected to SRAM in the CS0 space?

  • Answer :
    It is possible to use the SRAM on the target for debugging. When the WR signal is not connected to SRAM, any program download cannot be performed. To connect it to the area other than CS0, set up the necessary registers in advance by the procedure file etc. before the program loading.

Can we generate a program to be run in the area of 0x300000 in the Intel HEX format?

  • Answer :
    In the Intel HEX format, the data allocated to address 0x100000 and above are abandoned. Generate your program in Motorola S format that supports the addresses.

Do the processing of .ahx, to .bin and .mhx to .bin make the same file?

  • Answer :
    .mhx, (m2ms), .ahx, (m2bs),and .bin and
    .mhx, (m2bs), and .bin make the same binary file.

When a division exists in a program, Linker automatically allocates "\Softune\LIB\911\lib911.lib" from the library. Can we specify the allocation address of the lib file?

  • Answer :
    Linker allocates files by section. You can specify a section for a file before compiling. For this library, however, the section has been decided, so you cannot specify the allocation address.

Because we develop the Flash programming control program in C, the program is optimized so as not to operates as we intended.

  • Answer :
    If a variable is rewritten by hardware (still not rewritten in the C program description), specify it as the variable not to be optimized for the C compiler. For the C description, the volatile modification is required at variable definition description. Therefore, the volatile modification is required for the variable definition of the hardware sequence flag of the Flash memory.

When the attached "download program" is executed to the Flash part of MB91FV360GA, the download takes long time (about five minutes). (Target: MB91FV360GA)

  • Answer :
    It is possible to shorten the download time by setting the internal operating clock after "start debug" in the command line or procedure file. As an example, we have a good track record that the time was reduced to about one-fifth by the maximum internal operating frequency (4 MHz × 16).

We intended to "download" to the Flash part of MB91FV360GA, but the pull-down menu is not activated. (Target: MB91FV360GA)

  • Answer :
    The event occurs when the appropriate MUC name (MB91FV360GA, in this case) has not been registered to file "flash911.csv". Take countermeasures by updating to the latest Softune or additionally input it based on the memory map.

When the "-Kspeed" option is specified, the area named "CODE_4" is automatically generated. How can we prohibit this?

  • Answer :
    For fcc911s V50L05 (V60L01) and later, the "-align" option is added.
    When "-Kspeed" is specified, this "-align" option is included to generate the area. To prohibit it, specify the "-Xalign" option additionally.

We could not write to 0xA0000 to 0x19FFFF of Flash on Fujitsu's evaluation board MB91906EB by the program command. Why? (Target: MB91150 series)

  • Answer :
    The MB91150 series supports the internal ROM external bus mode and single-chip mode only.
    In each case, addresses 0xA0000 to 0xFFFFF, can be seen in internal ROM. Therefore, Flash on MB91906EB can use 0x100000 to 0x19FFFF.
    For using them, make sure that you can access only the addresses above even if you have changed the register for setting bus, because the Flash addresses on the board are fixed.

When compiling a C source by Fujitsu's C compiler, an error telling "Nested comment is not allowed" occurs. What should we do?

  • Answer :
    The JIS specifications define that "The characters "/*" indicate the start of a comment. The contents of the comment are checked for identifying multi-byte characters and searching for the characters "*/" indicating the end of the comment." The language specifications of Fujitsu's C compiler also allow no nest of comment (/*ranged comment*/).

Tell us how to inhibit the additional functions by V6-version compiler.

  • Answer :
    For each additional function, the command option to add/inhibit the new function is provided. For details, see Read me in the attached CD-ROM.

We use Fujitsu's evaluation board and will use Fujitsu's PC programmer for programming the Flash built-in microcomputer. Which cable should we use from the PC, straight or cross? (Target: MB91350A series)

  • Answer :
    For using Fujitsu's evaluation board, use a cross cable. Make sure to set No. 5 of DIP SW1 to "ON" (down), or the signal of the SIN3 pin is not transmitted. For the PC programmer, set PN0/PPG0 and PN2/PPG2 to "L".