找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1779|回復(fù): 4
打印 上一主題 下一主題
收起左側(cè)

while(UART1.ucTX_Busy_Flag); 這條C語言語句怎么理解?

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:1025655 發(fā)表于 2023-9-15 15:14 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
while(UART1.ucTX_Busy_Flag);   這條語句怎么理解?
uint8_t  volatile ucTX_Busy_Flag;  初始化賦值是  FALSE,

while(UART1.ucTX_Busy_Flag);   -> while(FALSE);   

/*
        * @name   SendData
        * @brief  發(fā)送字符
        * @param  dat:待發(fā)送字符
        * @retval None      
*/
static void SendData(uint8_t dat)
{
        while(UART1.ucTX_Busy_Flag);       //等待前面的數(shù)據(jù)發(fā)送完
        UART1.ucTX_Busy_Flag = TRUE;       //置位忙碌標(biāo)志
        SBUF = dat;                        //寫數(shù)據(jù)至UART寄存器
}

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:883242 發(fā)表于 2023-9-15 15:47 | 只看該作者
UART1.ucTX_Busy_Flag為真就死循環(huán)。
回復(fù)

使用道具 舉報(bào)

板凳
ID:77589 發(fā)表于 2023-9-15 17:26 | 只看該作者
注釋已經(jīng)說的很明白啊,保證USART發(fā)送部分空閑啊。
回復(fù)

使用道具 舉報(bào)

地板
ID:1092335 發(fā)表于 2023-9-20 16:55 | 只看該作者
while(UART1.ucTX_Busy_Flag==1);則程序陷入死循環(huán)無法跳出,會(huì)不斷的執(zhí)行這行代碼
回復(fù)

使用道具 舉報(bào)

5#
ID:526543 發(fā)表于 2023-9-20 17:22 | 只看該作者
用于等待UART1(通用異步收發(fā)器1)的發(fā)送緩沖區(qū)空閑標(biāo)志(ucTX_Busy_Flag)變?yōu)榉橇?/td>
回復(fù)

使用道具 舉報(bào)

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表