Keil Logo

µVISION DEBUGGER: KEIL MON51 Configurations for EZUSB FX


Information in this article applies to:

  • C51 Version 7.00 or later
  • µVision Version 2.30 or later
  • Cypress EZ-USB FX Family Development Board
  • Cypress EZ-USB FX2 Family Development Board

QUESTION

Do I have to configure the Keil Monitor 51 for the Cypress EZ-USB parts or are there preconfigured monitors available?

ANSWER

The following µVision compatible monitors are preconfigured for the Cypress parts and are found in the default Cypress subdirectory C:\Cypress\USB\Target\Monitor. They are loaded into the target (EZ-Link) board and serve as an interface to the Keil debugger so you may view target memory, step through code, set breakpoints, etc. These 4 monitors are the only ones available. Due the complexity of the Cypress, custom monitors cannot be created.

  • mon-ext-sio1-e0.hex (or mon-64K.hex): This is a 64K monitor for the Keil debugger. It is the default monitor loaded automatically at startup for EZ-USB and EZ-USB FX. You may, therefore, use the Keil debugger without explicitly loading this monitor yourself (it is done for you). It may also be manually downloaded using the control panel. This version uses sio1 and external memory from 0xe000-0xef75. mon-ext-sio1-e0.m51 (or mon-64K.m51) is the map file generated by the linker.
  • mon-ext-sio1-c0.hex: This is a 64K monitor for the Keil debugger. It is the default monitor loaded automatically at startup for the FX2. Since the FX2 monitor could not load at 0xe000 (there are registers there in FX2), this alternate monitor is loaded. You may, therefore, use the Keil debugger without explicitly loading this monitor yourself (it is done for you). It may also be manually downloaded using the control panel. This version uses sio1 and external memory from 0xc000-0xcf75. mon-ext-sio1-c0.m51 is the map file generated by the linker.
  • mon-ext-sio0-c0.hex: This is a version of the external memory monitor that uses the first serial port (sio0). Download this file with the control panel prior to using it with the Keil debugger. This version uses sio0 and external memory from 0xc000-0xcf75. mon-ext-sio0-c0.m51 is the map file generated by the linker.
  • mon-int-sio1.hex (or mon-8k.hex): This is a version of the monitor for the Keil debugger that uses only internal memory. Download this file with the control panel prior to using it with the Keil debugger. This version uses sio 1 and loads at 0x0000-0x1075. mon-int-sio1.m51 (or mon-8K.m51) is the map file generated by the linker.
  • mon-int-sio0.hex: This is a version of the monitor for the Keil debugger that uses only internal memory. Download this file with the control panel prior to using it with the Keil debugger. This version uses sio 0 and loads at 0x0000-0x1075. mon-int-sio0.m51 is the map file generated by the linker.

NOTE:

  • If you are debugging GPIF waveforms on the EZ-USB FX, you must manually load mon-*-sio0*.hex prior to debugging your GPIF application. This is because the sio1 monitors use PORTB which is disabled when IFCONFIG [1..0] is set to a value of 0x2 for GPIF Data (GDA[7..0]) pins.

    This setting precludes use of the Keil debugger on SIO1 since PORTB is where TXD1and RXD1 pins are located and this conflicts with the GPIF Data (GDA[7..0]) pins. To avoid this, use SIO0 for the Keil Debugger. To avoid manually reloading the debugger every time you reset, you may want to use mon-int-sio0.hex to create your own file called mon-int-sio0.sys in the same manner that ezmon.sys contains the default monitor (which is normally mon-ext-sio1-e0.hex for EZ-USB FX).

    This makes sense if you were debugging a GPIF program on FX since you do not want the default monitor in that case. To use it, you would replace C:\windows\system32\drivers\ezmon.sys with mon-int-sio0.sys (after changing the name of "mon-int-sio0.sys" to "ezmon.sys").

None of the above monitors were designed to work with code-banked applications.

Other monitor configurations have been tested by Cypress and are available from Cypress support.

MORE INFORMATION

SEE ALSO

Last Reviewed: Friday, February 5, 2021


Did this article provide the answer you needed?
 
Yes
No
Not Sure
 
  Arm logo
Important information

This site uses cookies to store information on your computer. By continuing to use our site, you consent to our cookies.

Change Settings

Privacy Policy Update

Arm’s Privacy Policy has been updated. By continuing to use our site, you consent to Arm’s Privacy Policy. Please review our Privacy Policy to learn more about our collection, use and transfers
of your data.