打印

快忍不住要骂人了,来帮帮我吧

[复制链接]
1827|4
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
a1z26|  楼主 | 2008-12-12 07:52 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我用Keil仿真以下例子,它就一直停在下面函数的while语句上,按说 
USART_FLAG_TXE是发送数据寄存器空标志,RESET代表0,就是说等待发送数据寄存器空了才开始发送下一个字符,但他一直发送的是 
Printf要输出字符串的第一个字符。不知道我分析的对不对,麻烦大伙 
帮我看一下。 
int fputc(int ch, FILE *f) 

  /* Write a character to the USART */ 
  USART_SendData(USARTx, (u8) ch); 
  while(USART_GetFlagStatus(USARTx, USART_FLAG_TXE) == RESET) 
  { 
  } 
  return ch; 

相关链接:https://bbs.21ic.com/upfiles/img/200812/2008121274833766.rar
沙发
香水城| | 2008-12-12 09:48 | 只看该作者

请问你的第一个字符发送出去了吗?接收方收到了吗?

使用特权

评论回复
板凳
a1z26|  楼主 | 2008-12-12 10:14 | 只看该作者

请教香版主

不知道怎么会发送不出去?发送到串口需要确认对方收到没有吗?

使用特权

评论回复
地板
a1z26|  楼主 | 2008-12-15 08:08 | 只看该作者

沉了沉了

我等啊等。。。。。

使用特权

评论回复
5
missyou198| | 2008-12-15 08:34 | 只看该作者

试试

楼主用串口助手看看,第一个数据发没发出去。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

28

主题

214

帖子

0

粉丝