Migrating from CM3 to CM0

alainm3 wrote on Friday, November 07, 2014:

I just ported FreeRTOS from CortexM3 (STM32F101) to CortexM0 (STM32F030), I copied the files from FreeRTOS/Source/portable and it is working with just minor adjustments :wink:

Please I need help in just two items:

  1. Interrupt configurations has visible changed, what do I have to change and is there any recomended configuration?
  2. is there anything else that I must be aware of?


edwards3 wrote on Friday, November 07, 2014:

Did you see this page http://www.freertos.org/FreeRTOS-for-STM32F051-Cortex-M0-IAR.html

alainm3 wrote on Friday, November 07, 2014:

Yes thanks,
but I have not fount anything about interrupt priority configuration. CM3 had a rather complex priority setup, CM0 is simpler and I would like to have some better explanation about it.

Anyway, if I don’t find any better explanation I will copy from that example and use it more or less “as is”…


rtel wrote on Saturday, November 08, 2014:

You are correct - the M0 is much simpler - primarily as there is no
BASEPRI register, so the complexity of getting the masks right that you
have in the M3/4 don’t exist in the M0/0+. The interrupt enable in the
core is used instead of the mask in the NVIC.