1.接收中断:当接收到数据时产生中断,读取了数据后,假如之后中断程序要处理的指令很 多,这时又接受到一个数据,但还在中断程序中,这时会处理完这个中断后再次 进入中断吗?
2.发送中断:疑问跟接收一样。还有:发送中断标志上电是置位的,我软件将其置零,这时候 发送BUF是空的,这发送标志还会马上自动置位吗?
用的是F149
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.
1.接收中断:当接收到数据时产生中断,读取了数据后,假如之后中断程序要处理的指令很 多,这时又接受到一个数据,但还在中断程序中,这时会处理完这个中断后再次 进入中断吗?
2.发送中断:疑问跟接收一样。还有:发送中断标志上电是置位的,我软件将其置零,这时候 发送BUF是空的,这发送标志还会马上自动置位吗?
用的是F149
你好,
关于问题1,答案应该是不会的,所以需要楼主不要在中断服务程序中做太多的操作
问题2答案应该是是的,只要buf为空就会马上置位
IFG1&=~UTXIFG0; 现在将发送标志清零,之后会马上置1吗?(从未发送过数据)kqian0327 说:你好,
以接收中断为例,你可以这样理解。
当PC在main函数里面跑,如果来了一个数据。中断产生,进入中断处理程序。
在中断处理程序如果再来中断,分四种情况:
在中断开始清IFG
第一,你已经读取buf数据,那么读完之后还没退出,buf又进数据,IFG置位,退出该中断立即有进来。
第二,没读buf又来数据,之前数据被覆盖,下次再进,数据还是最后一次数据 。
在中断末清IFG
只接受一次数据,退出前清了IFG,在中断又来的一次数据被忽略。
你好,
看你在什么清。
如果你清零IFG之后还在中断服务函数里面处理其他东西,而下一次中断又到来,你的IFG就会由置1.
你好,在main函数里清零,也不发送数据,此时会立马又置1吗?(因为发送BUF是空的,软件将U0TXIFG清零了)kqian0327 说:你好,
看你在什么清。
如果你清零IFG之后还在中断服务函数里面处理其他东西,而下���次中断又到来,你的IFG就会由置1.