Erich Styger has written an article on debugging a hard fault on an ARM Cortex-M0+ device:
To me, one of the most frustrating things working with ARM Cortex-M cores are the hard fault exceptions. I have lost several hours this week debugging and tracking an instance of a hard fault on an ARM Cortex-M0+ device.
More details at MCU on Eclipse homepage.