Following set: Two identical PCBs (my hardware design using the LPC932), one with the "real" MCU, other with connector adaptor to EPM900 board. My software runs smooth on the emulator. I always send 24 bytes via COM5 (virtual COM port of FTDI232 USB-to-RS232 chip). The MCU processes the 24 bytes, executes a command, some routines and sends 24 bytes back to PC. The 24 bytes are a certain telegram with a two byte header and a checksum at the end. So far, so good. As I said, it runs smooth on the emu. But when I flash the compiled hex file into the LPC932 on the other board and connect this board with USB (COM5), I can send the 24 bytes to COM5, but I receive an error code generated by my firmware telling me the header is wrong. I found out that the last, the 24th byte, is somehow coming to the first position of the serial input buffer. Example: PC sends: AA 55 00 FF .... FF 60 hardware should have: AA 55 00 FF ... FF 60 in the 24 byte input buffer, but it has: 60 AA 55 00 FF ... FF No idea. Code is fine, I worked it out a thousand time. The whole buffer seems to be shifted. I repeat, this runs correct on the emu, which holds the same MCU. The worst fact is, that sometimes the code in the "real" MCU runs correctly after being connected to supply voltage (USB), sometimes it doesn't. So the code must be ok. Any clue? Thanks for any help.
Oh! This is finally something I can use. My variables are currently global. Whether static nor volatile. In case STATIC isn't used, I assume the compiler will generate a static variable like an Assembler would do. A fixed memory address for every variable. If it isn't so, where should I know how the compiler is working? I'll try this out... static oe not makes no difference for global variables. What you have to take care of is ints that are used in both an ISR and main(). If you read these in main() with interrupts enabled, you will get sporadic failures. One more thing: re. "it works on the dev. board, not on my board" is EVERYTHING identical, I doubt it, list even subtle differences. Erik