设为首页收藏本站

Discuz! Board

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 活动 交友 discuz
查看: 10557|回复: 11
打印 上一主题 下一主题

TM4C123的串口中断问题

[复制链接]

243

主题

1706

帖子

6151

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
6151
楼主
admin 发表于 2014-7-20 20:26:11 | 显示全部楼层
由于所有中断事件在发送到中断控制器之前会一起进行“或运算”操作,所以任意时刻
UART 只能向中断产生一个中断请求。通过查询中断状态函数 UARTIntStatus( ),软件可以
在同一个中断服务函数里处理多个中断事件.
原型
void UARTIntEnable(unsigned long ulBase, unsigned long ulIntFlags)
参数
ulBase:UART 端口的基址,取值 UART0_BASE、UART1_BASE 或 UART2_BASE
ulIntFlags:指定的中断源,应当取下列值之一或者它们之间的任意“或运算”组合形式:
UART_INT_OE
// FIFO 溢出错误中断
UART_INT_BE
// BREAK 错误中断
UART_INT_PE
// 奇偶校验错误中断
UART_INT_FE
// 帧错误中断
UART_INT_RT
// 接收超时中断
UART_INT_TX
// 发送中断
UART_INT_RX
// 接收中断
注:接收中断和接收超时中断通常要配合使用,即 UART_INT_RX | UART_INT_RT
回复 支持 反对

使用道具 举报

243

主题

1706

帖子

6151

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
6151
沙发
admin 发表于 2014-7-20 20:27:00 | 显示全部楼层
unsigned long UARTIntStatus(unsigned long ulBase, tBoolean bMasked)
参数
ulBase:UART 端口的基址,取值 UART0_BASE、UART1_BASE 或 UART2_BASE
bMasked:如果需要获取原始的中断状态,则取值 false
如果需要获取屏蔽的中断状态,则取值 true
返回
原始的或屏蔽的中断状态
回复 支持 反对

使用道具 举报

243

主题

1706

帖子

6151

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
6151
板凳
admin 发表于 2014-7-20 21:11:31 | 显示全部楼层
swh267 发表于 2014-7-20 21:04
恩恩,理解了,要判断是UART_INT_TX中断和UART_INT_RX中断,用 UARTIntStatus的返回值和其中一个相与,非零 ...

你们是搞电赛的么?
回复 支持 反对

使用道具 举报

Archiver|手机版|小黑屋|Comsenz Inc.   

GMT+8, 2024-5-6 04:14 , Processed in 0.140873 second(s), 27 queries .

Powered by Discuz! X3

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表