kl25中UART的中断问题
KL25的每个UART只有一个中断入口地址,那么同一个UART中的发送中断和接收中断同时使用,要怎么判断到底是哪个触发了中断? 可以读取寄存器啊,哪个串口有数据就处理哪个 根据寄存器标志位判断是接收还是发送 或者2者都有 读寄存器标志位来判断的! powerk6 发表于 2015-1-13 23:33根据寄存器标志位判断是接收还是发送 或者2者都有
如果2者都有 ,是先处理接收 还是先处理发送的 ? qs6361036 发表于 2015-1-15 20:19
如果2者都有 ,是先处理接收 还是先处理发送的 ?
先接收放入缓存队列
发送是已发完中断,如果有数据再发,延迟一点也没关系 读寄存器标志位,应该有库支持的 如果不是全双工模式啊,发时关收中断,收时关发中断 查标志位应该就行了,我一般用查询发送中断接收。 楼主你好
请在中断服务函数里判断UARTx_S1寄存器的TDRE、TC、RDRF标志位实现。 FSL_TICS_Robin 发表于 2015-1-19 09:14
楼主你好
请在中断服务函数里判断UARTx_S1寄存器的TDRE、TC、RDRF标志位实现。 ...
具体如何实现可以看一下参考手册的“39.3.5 Interrupts and status flags”章节。
如果还是有些困惑的话,可以使用KDS里的PE工具生成一个带串口中断服务函数的例子看一下。
laotui 发表于 2015-1-15 23:26
查标志位应该就行了,我一般用查询发送中断接收。
FIFO~
页:
[1]