The project requires the use of both uarts on the Cypress EZ-USB chip, so the monitor must use an extra, external uart, and a custom monitor is required. Unfortunately the monitor toolkit that comes with the Cypress Dev Kit is a little different to that supplied elsewhere. Has anyone out there in cyberspace done this job, I have a multitude of questions.
the monitor itself is almost the same. The only difference is the init. You may use the std mon51 from keil and modify the startup according to your needs. As far as I remember you will not be able to stop with external uarts, because you don't get serial interupts. With some disassembly even that can be done. The main trick will be how your monitor gets loaded with ezusb. You need carefully read the docs because Cypress will not help. A better way would be to use ISD51 Thomas
Thanks, now for the real questions. We have the external uart connected to externat interrupt 4. I am assuming that serial prt handling, while in mon51, is by polling, so I am enabling int4 in the serial init code, clearing and masking it in the bit called just after a breakpoint is hit, and unmasked again before a GO. I hope this works. Also, the suppied monitors all set the processor to 48 meg, the build-it-yourself version does not, This has been fixed. The problem I seem to be having is with configuration request handling. How do the pre-built monitors handle this. Part of my problems seem to be registry entries which I will fix next week when I get back to the office, meanwhile can you see anything wrong with the above. Thanks
We have Sounds like a company. In that case, get an ICE and all your diagnostic troubles will disappear. An ICE will pay for itself in saved time in less than one month! Erik
An ICE will pay for itself in saved time in less than one month! Paying for EMU will not help because there is no EMU which supports the EZUSB Chips. At least I don't know of any EMU. I have done my designs with the Keil MON. It worked well for me. Thomas
processor to 48 meg you are talking about FX or FX2 aren't you? Stepping and run til break is not the problem. The main thing is that you won't be able to stop the cpu. This always require one of the serial irqs. The only other thing is to rewrite the serial irq handling. You may take a look into mon51 lib with an OMF dissassembler or ask Keil for the source. Without a new handler you need to reset the cpu which of course stops the usb connection. The best thing might be to use one internal UART for the mon and use the external for normal IO. This is how I did it here with special debug builds and special debug HW. It will be much more stable and painless than any other solution. Understanding Mon51 is not trivial and in conjunction with the EZUSB chips it will be a real pain. BTW: the monitor does not handle any of the usb requests thats completely up to you. IF you don't use the Reenum Feature all requests will be handled by usb core. If you are doing Reenum at startup you get a new device and all requests are handled by your firmware. Thomas
Thanks for the thoughts, I am back in ther office on Monday and will maybe have more to ask.