新手上路
- 积分
- 47
- 金钱
- 47
- 注册时间
- 2010-12-29
- 在线时间
- 3 小时
|
发表于 2014-1-16 10:09:19
|
显示全部楼层
回复【楼主位】为你分心:
正点原子的串口例程中有这么一个函数,我实在不明白程序中两次用到while(USART_GetFlagStatus(USART2, USART_FLAG_TC) == RESET); 是啥意思????每次各是啥意思????
各位高手解释一下吧。谢谢啊、、、、、、
void RS485_Send_Data(u8 *buf,u8 len)
{
u8 t;
RS485_TX_EN=1; //设置为发送模式
for(t=0;t<len;t++) //循环发送数据
{
while(USART_GetFlagStatus(USART2, USART_FLAG_TC) == RESET); //判断 USART_FLAG_TC是否为0,若为0,则停在此处继续判断,一直判断下去,一旦 USART_FLAG_TC==1,(就意味着串 //口之前的数据传递结束),则while不成立,然后继续向下执行
USART_SendData(USART2,buf[t]);
}
while(USART_GetFlagStatus(USART2, US //1楼说的不错,此处的while就是为了等待上面的 uart_sendData执行完毕。
......
---------------------------------
回复【楼主位】为你分心:
正点原子的串口例程中有这么一个函数,我实在不明白程序中两次用到while(USART_GetFlagStatus(USART2, USART_FLAG_TC) == RESET); 是啥意思????每次各是啥意思????
各位高手解释一下吧。谢谢啊、、、、、、
void RS485_Send_Data(u8 *buf,u8 len)
{
u8 t;
RS485_TX_EN=1; //设置为发送模式
for(t=0;t<len;t++) //循环发送数据
{
while(USART_GetFlagStatus(USART2, USART_FLAG_TC) == RESET);
USART_SendData(USART2,buf[t]);
}
while(USART_GetFlagStatus(USART2, US
......
--------------------------------- |
|