在学习《dsPIC30F系列参考手册》第2-31页时发现一个很难理解的地方。 书上说:“如果REPEAT循环被中断且正在处理ISR,用户必须在ISR内部执行另一个REPEAT指令前先将RCOUNT存入堆栈。如果在ISR内部使用REPEAT,用户必须在执行REPEAT之前先将RCOUNT的值出栈。”
那正好出现这种情况的时候:REPEAT循环被中断且正在处理ISR,用户要在ISR内部执行另一个REPEAT指令。用户先将RCOUNT存入堆栈,然后再将RCOUNT的值出栈,接着执行REPEAT。那前两个步骤不是白做的么? |