我有一些代码需要在特定中断结束时运行.
我不想在中断本身的上下文中执行它,但我也不希望它在线程模式下执行.
我想以低于高级别中断的优先级运行它,该高级别中断促使其运行,但也优先级高于线程级别(以及其他一些中断).
我想我需要使用其他一个中断处理程序.
最好使用哪些以及调用它们的最佳方法是什么?
目前我正在计划仅使用中断处理程序来处理一些我没有使用的外设,并通过直接通过NVIC设置位来调用它们,但我希望有更好的,更官方的方式.
谢谢,
在STM32F103上,闪存页面的擦除需要20ms,在此期间核心会停滞不前.从ST PM00042 Flash编程手册中可以清楚地看到,当擦除闪存页时核心是否总是停止,或者它是否因为指令流本身位于闪存(在我的项目中)而且FPEC(闪存接口)是停止而停止忙,无法获取更多指令.
问这个问题的另一种方法是"从RAM运行我的flash编程代码避免闪存页面擦除失速?".
谢谢,
我需要访问 Cortex-M3 处理器的 MSP 和 PSP 寄存器(主和进程堆栈寄存器)。
我正在用 C/C++ 编写。
µVision 和相关的编译器不允许您为这个仅限 Thumb-2 的内核进行内联汇编(而且我不确定这是否是一个好主意)。
我需要这样做,以便我可以提取 svc 指令的立即值,而不管它是在线程模式还是处理程序模式下执行的。
谢谢,