娇小w搡bbbb搡bbb,《第一次の人妻》,中国成熟妇女毛茸茸,边啃奶头边躁狠狠躁视频免费观看

歷史上的今天

今天是:2025年06月16日(星期一)

2021年06月16日 | STM32CubeMX之串口不定長數據接收(接收中斷+空閑中斷)

發布者:快樂飛躍 來源: eefocus關鍵字:STM32CubeMX  串口  數據接收  接收中斷  空閑中斷 手機看文章 掃描二維碼
隨時隨地手機看文章

環境:

開發板:STM32F4探索者(正點原子)

一. 空閑(IDLE)中斷

1. 空閑幀

什么是空閑幀?在 STM32的中文參考手冊 中,你會發現如下解釋:


空閑幀可理解為整個幀周期內電平均為“1”(停止位的電平也是“1”),該幀后是下一個數據幀的起始位。如下圖所示:

[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-brYlUqqt-1594141130268)(/image/空閑幀圖.png)]

其實按使用的情況來看,應是數據幀接收之后,從停止位開始一直為高電平,一直持續一幀的時間(包含停止位)為高電平,那時就會產生空閑中斷。


二. 空閑中斷相關的宏

使能 IDLE 中斷


__HAL_UART_ENABLE_IT(__HANDLE__, UART_IT_IDLE)    //使能idle中斷


獲取 IDLE 中斷標志位


__HAL_UART_GET_FLAG(__HANDLE__, UART_IT_IDLE)


清除IDLE 掛起標志位


__HAL_UART_CLEAR_IDLEFLAG(__HANDLE__) 


三. 空閑中斷使用實例

在上一篇文章(STM32CubeMX之串口使用(中斷方式))的測試代碼的基礎之上進行修改。


在串口中斷處理函數中添加自定義的空閑中斷處理函數 ,如下圖所示:

[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-56b9XVPI-1594141130270)(/image/添加空閑中斷處理函數.png)]

然后在主函數中,進行自定義空閑中斷處理函數 ,如下


//自定義空閑中斷處理函數

void HAL_UART_IDLE_HANDLER(UART_HandleTypeDef *huart)

{

   uint32_t isrflags   =  READ_REG(huart->Instance->SR); 

   if((USART_SR_IDLE & isrflags) != RESET && ( huart->RxXferCount > 0))

   {

       printf("idlern");

       __HAL_UART_CLEAR_IDLEFLAG(huart);

      /* Disable the UART Data Register not empty Interrupt */

      __HAL_UART_DISABLE_IT(huart, UART_IT_RXNE);

      /* Disable the UART Parity Error Interrupt */

      __HAL_UART_DISABLE_IT(huart, UART_IT_PE);

      /* Disable the UART Error Interrupt: (Frame error, noise error, overrun error) */

      __HAL_UART_DISABLE_IT(huart, UART_IT_ERR);

      /* Rx process is completed, restore huart->RxState to Ready */

      huart1.RxState = HAL_UART_STATE_READY;  

      HAL_UART_RxCpltCallback(huart); 

   }else if((USART_SR_IDLE & isrflags) != RESET && ( huart->RxXferCount == 0 ))

   { 

       __HAL_UART_CLEAR_IDLEFLAG(huart);

      

   } 

}


在測試串口的結構中,添加初始化函數用來初始化使能空閑中斷,如下圖

[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-vs370Tar-1594141130272)(/image/測試結構體添加初始化函數.png)]

使用初始化函數如下:

[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-OoU5HqLG-1594141130278)(/image/串口初始化函數.png)]

用調試助手顯示如下:

[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-RbiTSdul-1594141130282)(/image/不定長接收數據顯示.png)]

關鍵字:STM32CubeMX  串口  數據接收  接收中斷  空閑中斷 引用地址:STM32CubeMX之串口不定長數據接收(接收中斷+空閑中斷)

上一篇:什么是STM32CubeMX?(STM32代碼生成器)
下一篇:STM32CubeMX之串口使用(中斷方式)

推薦閱讀

亞洲消費電子展(CES Asia?2018)在上海新國際博覽中心盛大開幕。據悉,在今年的CES Asia參展商里,包括了56家汽車技術公司,展出面積比上屆增加了近50%。顯然,汽車行業受到了越來越多人的關注,越來越多的企業也開始布局汽車產業鏈。??別出心裁的車聯網體驗區伴隨著傳統造車技術的日益成熟,及互聯網信息技術的應用發展,汽車電子行業正面臨著新一...
據消息稱,在幾日前,廈門大學附屬第一醫院院長姜杰教授、胸外科于修義主任用達芬奇機器人給一位患者做了肺癌切除手術。 在手術中,醫生先在患者的胸部開了3個不到1厘米寬的操作孔、1個約3厘米的輔助操作口,再將機器人的機械臂放置在胸腔內,人體胸腔通過攝像頭形成的三維影像可以被放大10-15倍。 姜杰教授坐在操縱臺上,通過控制桿來操作,應用比手...
成立僅9個月的通用智能芯片設計公司壁仞科技,近日宣布完成總額11億元人民幣的A輪融資,創下近年來同行業A輪融資新紀錄,在“后疫情時代”尤顯珍貴。本輪融資由啟明創投、IDG資本及華登國際中國基金領投,格力創投、松禾資本、云暉資本、國開裝備基金、華映資本、廣微控股、耀途資本等知名投資機構和產業方聯合參投。據悉,A輪募集資金將用于加速技術產品...
Akamai邊緣平臺的增強功能包括免費使用層級、快速訪問數據和API流量加速2021年6月16日——負責保護和交付數字化體驗且深受全球企業信賴的解決方案提供商阿卡邁技術公司(Akamai Technologies, Inc.,以下簡稱:Akamai)(NASDAQ:AKAM)今日宣布推出強大的增強功能,以助力Akamai客戶在邊緣創建并交付更出色的用戶體驗。自問世以來,Akamai EdgeWorkers...

史海拾趣

小廣播
設計資源 培訓 開發板 精華推薦

最新單片機文章
何立民專欄 單片機及嵌入式寶典

北京航空航天大學教授,20余年來致力于單片機與嵌入式系統推廣工作。

 
EEWorld訂閱號

 
EEWorld服務號

 
汽車開發圈

 
機器人開發圈

電子工程世界版權所有 京ICP證060456號 京ICP備10001474號-1 電信業務審批[2006]字第258號函 京公網安備 11010802033920號 Copyright ? 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
主站蜘蛛池模板: 靖西县| 呼伦贝尔市| 赤峰市| 固始县| 沅江市| 茌平县| 长岛县| 呼玛县| 沾化县| 汉中市| 宣城市| 松潘县| 常州市| 贺州市| 滕州市| 五指山市| 黄龙县| 兴文县| 永济市| 虎林市| 颍上县| 含山县| 英超| 门源| 义乌市| 靖宇县| 乌拉特后旗| 东城区| 德令哈市| 河北区| 长宁县| 拜泉县| 五原县| 南涧| 太白县| 营山县| 陆川县| 弋阳县| 青阳县| 若尔盖县| 沙坪坝区|