打印
[STM32F1]

关于USART中TXE和TC的问题,新人第一次发帖,求助!

[复制链接]
1460|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
dwightwjl|  楼主 | 2014-1-26 21:18 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本渣刚开始学STM32,用的是刘凯老师的视频。在学到UARST时遇到了一个小问题:
下面的代码是在USART初始化完成后的,期望的执行结果是USART1发送ABCDEFGHIJ,调试发现少了个B。而如果把USART_FLAG_TC换成USART_FLAG_TXE,得到的结果就是正确的。另外,将下面代码中的延时利用上时,结果也是正确的。。。隐约得感觉到是与时间有关,但还是不明确问题所在,视频里的刘凯老师也没发现这个BUG(看到他在调试结果显示ACDEFGHI时说到:“我们成功了”)。。。请教各位前辈了!
        data = 'A';
        for(i = 0;i < 10;i++)
        {
                USART_SendData(USART1, data);
                data++;
                 //Delay_MS(1);       
                 while(USART_GetFlagStatus(USART1, USART_FLEAG_TC) == RESET);
        }
沙发
dwightwjl|  楼主 | 2014-1-26 21:34 | 只看该作者
有木有大侠~~~

使用特权

评论回复
板凳
dwightwjl|  楼主 | 2014-1-28 00:10 | 只看该作者
弱弱问一句,这个问题很复杂么?

使用特权

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

本版积分规则

2

主题

10

帖子

0

粉丝