万年历的一个问题 printf

[复制链接]
2594|7
 楼主| jiutianhun 发表于 2010-11-3 11:02 | 显示全部楼层 |阅读模式
在做万年历时,调用这个函数 fput()时一直跳不出来,也不知道是什么原因?
int fputc(int ch, FILE *f)
{
/* 将Printf内容发往串口 */
  USART_SendData(USART1,(unsigned char) ch);
  while(USART_GetFlagStatus(USART1,USART_FLAG_TXE)==RESET);||应该是这句跳不出来
  return ch;
}
yuanruibing 发表于 2010-11-16 16:55 | 显示全部楼层
俺也不知!
baidudz 发表于 2010-11-16 22:14 | 显示全部楼层
还有其他代码吗,一起贴出来看看
hgjinwei 发表于 2010-11-16 22:51 | 显示全部楼层
串口没有初始化?
发送没有使能?
mcu5i51 发表于 2010-11-17 08:43 | 显示全部楼层
printf 会调用这个吗 fputc
dbayj 发表于 2010-11-20 19:51 | 显示全部楼层
本帖最后由 dbayj 于 2010-11-20 19:55 编辑

int fputc(int ch, FILE *f)
{
  /* Write a character to the USART */
  USART_SendData(USART1, (u8) ch);

  /* Loop until the end of transmission */
  while(!(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == SET))
  {
  }
  return ch;
}
dbayj 发表于 2010-11-20 19:52 | 显示全部楼层
仔细对一下,你那里不对,我也是从别人代码里找到的,停留在改代码的阶段。
dbayj 发表于 2010-11-20 19:54 | 显示全部楼层
本帖最后由 dbayj 于 2010-11-20 19:56 编辑

:victory:
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

1

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部