久久久国产一区二区_国产精品av电影_日韩精品中文字幕一区二区三区_精品一区二区三区免费毛片爱

 找回密碼
 注冊會員

QQ登錄

只需一步,快速開始

搜索
查看: 2561|回復: 1

UART的可能性會導致數據丟失嗎?

[復制鏈接]
1#
發表于 2018-9-21 11:36:45 | 只看該作者 |倒序瀏覽 |閱讀模式
在很多使用STM32,HAL的例子中,通過中斷接收UART數據,代碼如下所示:
最初(開始接收):
  • <font size="4">HAL_UART_Receive_IT(&huart1, Rx_data, 1); </font>
    7 J6 M$ X( U' ]# A: d) s

" B5 W1 W/ {: J" q[color=rgb(51, 102, 153) !important]復制代碼
& @" ~2 V2 }8 x; U+ u' M9 j8 ]
! v# w+ D5 p( O/ k% |
中斷接收完成后:
  • <font size="4">//Interrupt callback routine
  • void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart)
  • {
  •     ...
  •     HAL_UART_Receive_IT(&huart, Rx_data, 1);
  • }</font>" \- ~- d6 m3 A9 F

5 B2 S6 l3 G# A: }' H4 T1 q$ O4 x[color=rgb(51, 102, 153) !important]復制代碼

7 `1 p6 Q8 D! N' K
我想知道,是否有可能在實際接收和再次啟動中斷的(接收完成)回調之后丟失字節。
或者假設上面的中斷處理程序太短,數據仍然在UART緩沖區中?
/ `+ ^3 F: U: w& \% n8 o' R
回復

使用道具 舉報

2#
發表于 2018-9-22 17:53:14 | 只看該作者
理論上不會,UART接收完成才會產生事件
7 s( k* f6 ~& l0 z4 UUART模塊內部肯定會做緩存處理。
' o1 }8 O' G3 N, g如果還擔心丟數據,請使用DMA大法!
您需要登錄后才可以回帖 登錄 | 注冊會員

本版積分規則

Archiver|手機版|小黑屋|機械社區 ( 京ICP備10217105號-1,京ICP證050210號,浙公網安備33038202004372號 )

GMT+8, 2025-7-22 10:04 , Processed in 0.065019 second(s), 14 queries , Gzip On.

Powered by Discuz! X3.5 Licensed

© 2001-2025 Discuz! Team.

快速回復 返回頂部 返回列表