This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
您好,我在使用timer_A计时器输出一个数组m[10],每次中断输出a[k] (k从0到9),我想当k=10时,关闭中断,重新从内存中读取新的数值赋给数组a,不清楚如何关闭定时器a的中断,并在数组重置赋值后打开
您好,有以下两种方法:
1) 使用 -> TA0CCTL0 &= ~CCIE 禁用定时器中断;
2)禁用全局中断 -> _BIC_SR_REGISTER (GIE) 。
需要注意的是,第二种方法会禁用所有 MSP430 中断,因此如果您有其他使用中断的外设 (如 ADC) ,建议您不要使用该种方法。
您好,中断程序中的变量似乎不能作用在主程序中,比如我这里在中断程序使用了n++来计数,希望n到9时,可以关闭定时器,但是测试发现实际上是一直有输出的,timer_a一直在工作
您好,是的。我想设计的就是一个把flash中存储的数据赋给数组,然后每次定时器中断输出一个数组值的程序。但是由于数据过大,ccs中我定义的数组好像一次性存放不下,所以我希望在定时器累计中断一定次数时可以返回一个值给主程序,通过这个反馈值关闭中断重写数组然后再重复上述的输出过程。