51串口中断中能不能发送数据

Volftooth 2012-03-12 12:05:56
在串口中断函数中接收了数据、然后发送出去、结果卡机、、
到底在串口中断中能不能发数据??、
...全文
786 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
aydf1 2012-03-17
  • 打赏
  • 举报
回复
发是一定能发的,关键看你有没有清串口发送和接收中断标志,没清的话会不停的进中断,卡机就很正常了!
lynsen 2012-03-17
  • 打赏
  • 举报
回复
可以啊
chenlunju 2012-03-17
  • 打赏
  • 举报
回复
你是在串口接收中断发送数据的吗?换个地方发送吧
lyf0321 2012-03-16
  • 打赏
  • 举报
回复
串口中断接收单个数据然后发送回去可能不会出错 ,但是如果接收完再经过很长的时间处理然后再发送回去就会出错 因为接收中断还没返回可能就有下一串口中断来了 所以最好不要在中断中处理太多事情 接收的数据可以先存在缓冲区 返回中断在处理。
lkncjy 2012-03-16
  • 打赏
  • 举报
回复
很肯定地回答你:可以
cyymycc 2012-03-13
  • 打赏
  • 举报
回复
void serial_port0() interrupt 4 using 1
{
unsigned char c;
if(TI) /*If TI=1, must be transmit complete interrupt*/
{
TI=0;
if(ser0_count>ser0_counts)
{
ser0_count=0;
}
else SBUF=ser0_data[ser0_count++];
}
else if(RI) /*Else If RI=1, must be receive complete interrupt*/
{
RI=0;
nandou 2012-03-12
  • 打赏
  • 举报
回复
发是一定能发的,关键看你有没有清串口发送和接收中断标志,没清的话会不停的进中断,卡机就很正常了!
aydf1 2012-03-12
  • 打赏
  • 举报
回复
LZ采用的发送方式是中断还是查询?
lbing7 2012-03-12
  • 打赏
  • 举报
回复
查看允许发送位有没有置位?

另外,LZ采用的发送方式是中断还是查询?

对应的标志和中断有没有写错
Volftooth 2012-03-12
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 lbing7 的回复:]

查看允许发送位有没有置位?

另外,LZ采用的发送方式是中断还是查询?

对应的标志和中断有没有写错
[/Quote]

发送也是中断方式、

27,375

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 单片机/工控
社区管理员
  • 单片机/工控社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧