Interrupt Service Routines cannot be coded in Thumb mode
Hi all
I have a program that has about twenty source files and one of the files contains all the Interrupt Service Routines. When I try to compile the project in Thumb mode I predictably get the message that ISR's need to be coded in ARM instructions. I can not find a way to change the one module to be compiled in ARM mode. In the Project Explorer I highlight the module (cpu.c) and in the Properties window I select Instruction Set : ARM and all modules have ARM/Thumb Interworking set (it is the default). Even when the instruction set selection shows ARM. I get the error about thumb mode.
Please help if anyone found a workaround.
Daniel
-
I have found the magic handshake: Highlight the file Project Explorer and in the Properties window change the instruction set to Thumb. Select another file in Project explorer and then go back to the one that needs to be in ARM instructions. Change the Thumb to ARM and see that the 'Instruction set' is in Bold characters. Now it will compile in ARM instructions. Somehow, the selection is not reliable till you go to Thumb and back to ARM and the field is in bold.
Daniel
Please sign in to leave a comment.
Comments
2 comments