Hello, I am using tm4c123g microcontroller(cortex m4) and successfully programmed led blink, created 16x2 and 128x64 library files using CMSIS standard. But when I try to write any value in UART register, it causes the cpu to jump into hard fault. Example UART0->CTL&=~1; triggers the hard fault handler. I am facing this problem with all other UART registers like baud registers.
BTW I am able to do it with direct memory addressing. But I want to use UART funcions in CMSIS. I don't know what's going wrong please help.
Debugging includes verifying exactly what addresses your code tries to access using the two methods. And that should have told you what would differ between direct addressing and indirect addressing using the pointer. But it sounds like your form of debugging was to test run and deduce "works" or "fails" instead of figuring out what actually differs.