成人免费无码不卡毛片,亚洲AⅤ无码精品一区二区三区,国产尤物精品视频,久久精品日本亚洲,欧美成人一区三区无码乱码A片,中文字日产幕码一区二区色哟哟,亞洲日韓中文字幕網AV

  • 資料介紹
    • 引言
    • 調(diào)研
    • 分析
    • 處理
    • 小結(jié)
  • 資料預(yù)覽
  • 相關(guān)推薦
申請入駐 產(chǎn)業(yè)圖譜

LAT1299 定時器不按設(shè)定超時產(chǎn)生中斷(PDF)

03/24 10:18
572
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點資訊討論

LAT1299 定時器不按設(shè)定超時產(chǎn)生中斷(PDF)

372.66 KB

引言

某客戶設(shè)計需要啟動定時器在 3ms 后產(chǎn)生中斷,其后定時器不再運行,直至下一次軟件要求再次啟動定時器產(chǎn)生中斷,實測代碼后發(fā)現(xiàn)定時器啟動后立即產(chǎn)生了超時中斷。

調(diào)研

客戶通過 STM32CubeMX 配置 TIM7 并生成工程,在主循環(huán)中添加定時器啟動代碼;在定時器中斷處理函數(shù)處理 update event 回調(diào)時停止定時器,并翻轉(zhuǎn)一個 I/O 腳指示定時器啟停。

分析

應(yīng)用代碼在初始化定時器時會調(diào)用 HAL_TIM_Base_Init( )接口,此接口會調(diào)用TIM_Base_SetConfig( ) 配置定時器,并產(chǎn)生更新事件(TIMx->EGR = TIM_EGR_UG)加載寄存器,此事件標(biāo)志 UIF 會被置位,在調(diào)用 HAL_TIM_Base_Start_IT( ) 啟動定時器,在此使能定時器中斷時,由于 UIF 已經(jīng)置位,所以會立即觸發(fā)并進入中斷處理函數(shù),中斷回調(diào)函數(shù)會停止定時器計數(shù),并禁止定時器中斷;但當(dāng)從中斷處理函數(shù)返回繼續(xù)執(zhí)行HAL_TIM_Base_Start_IT( )時,此接口會使能定時器開始計數(shù),進而在下一次調(diào)用HAL_TIM_Base_Start_IT( )時又會立即產(chǎn)生中斷,循環(huán)往復(fù)。

處理

修改代碼,在啟動定時器前強制停止定時器計數(shù)、清除中斷位、清除 NVIC 掛起的中斷后,再啟動定時器。

小結(jié)

在碰到這類定時器異常問題時,可以利用 I/O 口指示運行狀態(tài),結(jié)合代碼分析找到原因并加以解決。

資料預(yù)覽

相關(guān)推薦

阳新县| 枝江市| 万荣县| 祥云县| 长岭县| 东乡族自治县| 乡城县| 夏津县| 甘孜| 建瓯市| 哈密市| 锡林郭勒盟| 宾川县| 县级市| 宝兴县| 贵阳市| 衡阳市| 长顺县| 武清区| 泗水县| 遵化市| 基隆市| 寿光市| 仙桃市| 蕉岭县| 东明县| 枣庄市| 北川| 太原市| 赤城县| 蓝山县| 万宁市| 牡丹江市| 杭锦后旗| 长葛市| 五指山市| 宜章县| 富川| 淄博市| 临武县| 东乡族自治县|