2138a太阳城娱乐官网

LPC2138串口中断总结

字号+ 作者:Admin 来源:未知 2018-06-22 10:37 我要评论( )

LPC2138的串口带有16字节的接收和发送FIFO,并且接收FIFO的触发点可设为1,4,8,14字节。 LPC2138的串口带有16字节的接收和发送FIFO,并且接收FIFO的触发点可设为1,4,8,14字节。 当接收到的字节数达到设置的触发点(通过FCR寄存器设置)时,就会产生接收

  LPC2138的串口带有16字节的接收和发送FIFO,并且接收FIFO的触发点可设为1,4,8,14字节。

  LPC2138的串口带有16字节的接收和发送FIFO,并且接收FIFO的触发点可设为1,4,8,14字节。

  当接收到的字节数达到设置的触发点(通过FCR寄存器设置)时,就会产生接收中断;而当接收到的字节数未能达到设置的触发点(比如触发点设置为14,但是只接收到了10个字节的数据),那么经过短暂的等待时间后会产生超时中断。在这两种情况下需要正确读取RBR寄存器,妥善保存接收到的数据。

  举例来说,假设接收FIFO的触发点设置为14,而要接收的数据一共有16字节。那么接收过程中会产生两次中断:第一次是当接收到第14个字节时产生的接收中断;之后只剩2个字节要接收,达不到触发点14,所以经过等待时间后会产生超时中断。

  发送FIFO并没有触发点的问题。要发送数据时,首先把数据写入THR寄存器,之后MCU会将其移入发送FIFO缓冲区中,一旦THR寄存器被移空,就会产生发送中断。换句话说,在使能了发送中断的情况下,每向THR寄存器写一个字节就会引起一次发送中断。所以要发送一系列的数据时,只需要发送第一个字节来启动发送过程,剩余的字节由中断服务程序来完成就可以了。

  个人觉得,使能发送中断会导致MCU的工作效率变低。因为一旦THR寄存器为空就会进入中断服务程序,会出现连续的无效中断。(如果理解有错误,还请指正)

转载请注明出处。

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

相关文章
  • 基于LPC2138的红外摄像机系统

    基于LPC2138的红外摄像机系统

    2018-06-22 10:36

网友点评