欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標題: 求救:STM32F042K6T6高低溫測試時死機 [打印本頁]

作者: callan    時間: 2017-6-22 18:00
標題: 求救:STM32F042K6T6高低溫測試時死機
最近公司有個項目上面用的STM32F042K6T6做CAN通信。現在做高低溫測試時總是死機,平時都是正常的,高溫最高60度,低溫最低-20度,死機不是發生在高溫或者低溫,而是發生在從60度恢復到0度或者從-20度恢復到0度。MCU已經使用了IWDG和WWDG,但是都起不到復位的作用,求救啊!

參考原理圖.jpg (189.63 KB, 下載次數: 149)

參考原理圖

參考原理圖

作者: yzwzfyz    時間: 2017-6-22 22:43
多半是:
程序中有死待某個標記,用C寫的程序常有此問題(因為按正常邏輯及狀況,這個標記一定會出現,程序未考慮循特殊情況的出現)。
比如:某個硬件在異常狀態下給不出標記時,程序又死等它出現。

我一般比較注意有死等某個標記地方,在死等的語句中插入時間限制(時間由中間程序控制,計時與死待無關),等不到標記,但時間到了就跳出。
如何找到死等的點呢?
給程序運行加追蹤器:
比如:程序有10個步驟或任務或其它什么,用一個寄存器R_RUN,運行到任務1就讓R_RUN=1,運行到任務N就讓R_RUN=N。也就是說只要知道R_RUN的值就能知道程序運行到什么任務(地方)。
當看門狗復位動作時,運行一個輸出R_RUN的程序(寫一個顯示程序或其它可以輸出的方式)
這樣你就知道,程序死在什么地方了。任務分得越細越易找到問題。
作者: qwert126    時間: 2017-6-23 09:25
不懂,完全看不懂




歡迎光臨 (http://www.raoushi.com/bbs/) Powered by Discuz! X3.1