2019-03-23 17:51发布
lcofjp 发表于 2017-1-16 20:53 你Debug看到的并不是发送数据用DR,DR看似一个,其实有两个,你发送用的那个DR是只写的,没办法读取,而你 ...
大家都是好朋友 发表于 2017-1-16 21:32 哦 明白了 ,我还想问个串口问题 我本想发两个数给上位机,开始我已经CLEAR TC 然后 for(t=4;t
大家都是好朋友 发表于 2017-1-16 21:41 而且我初始化了USART TC还是在置位 那个TXE是发送完成中断是吧。我是看教程才这么写的
最多设置5个标签!
哦 明白了 ,我还想问个串口问题 我本想发两个数给上位机,开始我已经CLEAR TC
然后
for(t=4;t<6;t++)
{
//while(USART_GetFlagStatus(USART1,USART_FLAG_TC)!=SET);//等待发送结束
USART_SendData(USART1, BUF[t]); //向串口1发送数据
while(USART_GetFlagStatus(USART1,USART_FLAG_TC)!=SET);//等待发送结
} 可我只收到一个数
我在FOR前面改,加多个发送,还是只有一个数
我又在FOR前面改,加了句
USART_SendData(USART1, 'b');
while(USART_GetFlagStatus(USART1,USART_FLAG_TC)!=SET);//等待发送结束
这样又收到了3个数,我很晕。。。
我建议你还是按常规套路来,判断TXNE标志比较好。改完之后再调
我建议你别看教程了,看看官网的Reference Manual的相关章节吧,哪个位在什么情况下置位或者复位,里面描述的很详细
一周热门 更多>