i have an unusual problem which i'd very much like some help with. i'm using floating point notation in my project, however it is a defacto 16 bit floating point system with a hardware engine doing all the hard arthmetic work. this engine is mapped into the 8052 sfr space. this system has the problem that when debugging in an fpga we can't use the uv2 to view the 16 bit floats in useful format. ie we can't view '3.14' in the watch window, we get '0xABCD'. an attempt to work around this problem has been to get the hardware engine to report its output in 32 bit ieee float format. the idea was that i could then park a 'float' type _at_ that location and watch it in the view window. the obvious (with hindsight) problem is that it is not possible to declare variables in the sfr space. nor was i able to make a pointer point to that space. is there anything else that i can do to view this data? any thoughts or opinions very welcome, robert young
The canonical approach to this problem would probably an entirely different one from what you've been aiming at so far: writing a uVision extension DLL. You'ld end up with yet another entry in the 'peripherals' menu that you can open to get a little dialog window that represents the state of your FPU SFRs.
thanks for the advice. all of it has been useful. i've implemented a debug button which does what i want. i do like the idea of creating a virtual peripheral. perhaps someday when i have a free minute???? cheers, robert