I do not know what kind of board you have.
Also we are not knowing about your programming experience.
For unexperienced programming skills:
I suppose there are some example projects for that board.
Start from low level. From simple examples.
Try to compile and run the examples.
Maybe there are also examples with FreeRTOS.
Go step by step. If low level is working, add some more code. E.g. FreeRTOS.
Add a simple task which do nothing more than looping.
Try to get some experience with debugging. Use the debugger. Use breakpoints, use single stepping.
Try to find out til which code point is everything ok.
For experienced programming skills:
In HardFault_Handler you can read processor registers which holds information about the kind of hardfault, and at which address it occurred.
Hardfault error are mostly pointer error. Null pointer, or wrong pointer arithmetics. Pointing to illegal memory locations.