Content originally posted in LPCWare by ktownsend on Sun Jan 24 12:29:01 MST 2010
The user manual states that rom-based USB (HID) uses 0x1000 0050-0180, meaning you can't use any of this memory yourself (which I found out the hard way) ... I was wondering if someone could confirm whether this chunk of memory was automatically being set aside in LPCXpresso or not (I'm sure it's not), and what the easiest way to reserve this memory block is? In the case of Crossworks I just modified the flash placement file to start at 0x10000180, but not being terribly familiar with RedSuite/LPCXpresso I'm not sure how to go about that with your own software. For reference sake, here's the quote (p.131 of the latest UM):
[FONT=Arial][SIZE=2][FONT=Arial][SIZE=2][LEFT]On-chip RAM from address 0x1000 0050 to 0x1000 0180 is used by the USB driver. This address range should not be used by the application. For applications using the on-chip USB driver, the linker control file should be modified appropriately to prevent usage of this area for the application’s variable storage[/LEFT]
[/SIZE][/FONT][/SIZE][/FONT]