#CH579M

串口發(fā)送中斷,串口接收到數(shù)據(jù),開啟發(fā)送中斷,第一次可以進入中斷發(fā)送數(shù)據(jù);再接收數(shù)據(jù),開啟數(shù)據(jù)發(fā)送中斷,進入不了?這個問題怎么解決

您好,看描述不太清晰,能否提供更多信息。

“開啟發(fā)送中斷”是指使能發(fā)送中斷嗎,這樣的話使能的時候會觸發(fā)一次發(fā)送中斷(從0變1觸發(fā)),再次使能是不會觸發(fā)的。

使能發(fā)送中斷之后,先手動向R8_UART1_THR或者說發(fā)送fifo中填充一組數(shù)據(jù),這組數(shù)據(jù)發(fā)完后會由于“發(fā)送保持寄存器空”自動觸發(fā),進uart中斷“發(fā)送緩存空”的case,在這個case中繼續(xù)填充數(shù)據(jù)即可。

download.png


串口收到數(shù)據(jù),開啟中斷發(fā)送,數(shù)據(jù)可以正常發(fā)送,數(shù)據(jù)發(fā)送完關(guān)閉發(fā)送中斷;串口再接收到數(shù)據(jù),開啟發(fā)送中斷,不可以發(fā)送數(shù)據(jù)。


您好,通過您的描述,不太好定位問題。要不您貼一段代碼,或者將工程發(fā)至郵箱zhaiyw@wch.cn。

“發(fā)送中斷”是在數(shù)據(jù)發(fā)送完后被動觸發(fā)的,不必手動開關(guān),初始化UART時開著就行。觸發(fā)之后,在中斷服務(wù)函數(shù)中往THR填充數(shù)據(jù)。要注意PRINT打印函數(shù)使用的也是UART,也會觸發(fā)發(fā)送中斷。

可以參考下方帖子。

http://www.findthetime.net/bbs/thread-94048-1.html


只有登錄才能回復(fù),可以選擇微信賬號登錄

国产91精品新入口,国产成人综合网在线播放,九热这里只有精品,本道在线观看,美女视频a美女视频,韩国美女激情视频,日本美女pvp视频