yangang123 / ygOS

ygOS是一款面向未来的宏内核设计的简约的操作系统
7 stars 4 forks source link

打开中断和关闭中断代码导致pendsv异常不能触发? #1

Closed yangang123 closed 5 years ago

yangang123 commented 5 years ago

现象:在MDK调试stm32f4discovery开发板的时候,断点位置如下,pendsv异常不能触发,任务不能正常调度? 图片

临时补救方法: 取消关闭中断和打开中断的代码,pendsv正常触发,任务正常调度 `__asm void ygos_interrupt_disable(void) { // EXPORT ygos_interrupt_disable // MRS r0, PRIMASK // //PRIMASK=1
// CPSID I BX LR }

//使能全局中断 __asm void ygos_interrupt_enable(int level) { // EXPORT ygos_interrupt_enable // MSR PRIMASK, r0 BX LR }`

yangang123 commented 5 years ago

今天,经过刘华科刘工的的提示:

  1. MDK调试下不能在汇编代码添加断点
  2. 不能在中断服务程序打断点

经过测试,ygOS昨天发现的问题,现在不存在了,MDK模拟硬件的时候可以随意在不同位置打断点,但是跑到板子上后,要注意上面操作方法。