1.时序问题(可以加mutex保护)
2.cpu资源抢占问题,可以加入sleep缓解
3.hardware处理能力问题,hardware或某芯片的处理能力没有你想象的那么快,如camera sensor,需要加入一些等待
4.其它(个人认为跟缓冲无关,又不是所以的hareware都跟它有关)
_interupt int OperAt(int a)
{
int b = 2;
a *= b;
printf( "%d ",a);
return a;
}
1.中断函数不能有参数传递与返回值
2.printf()经常有重入和性能上的问题,在中断函数中避免使用
3.a *= b;中断函数中的语句尽量短,避免做大的运算
4 在中断中不能引入浮点数的变量,因为也有重入的问题(有的时候硬件也不支持)