国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

致單片機程序總是跑飛怎么辦

Q4MP_gh_c472c21 ? 來源:個人圖書館 ? 作者:xpxys99 ? 2021-09-26 10:45 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

單片機中有看門狗,長時間不喂狗,程序就會復位。為什么長時間不喂狗呢?這是因為程序跑飛了,拋開外部因素不談。今天就和大家分享一下,單片機程序跑飛的幾個原因。

在編寫單片機程序的時候,由于中斷服務程序寫的不好,導致單片機程序總是跑飛,最后費了好長時間,花了很大功夫才找到問題原因,由此總結了單片機程序跑飛的三種現象、原因以及解決方法。

01數組越界/溢出

現象:

單片機程序在函數中運行時,總是在運行到函數末尾,要跳出函數時,程序跑飛。

原因:

數組越界(數組溢出),函數中定義的數組元素的個數小于程序中實際使用的數組元素的個數,例如在函數中定義了一個數組ucDataBuff[10],這個數組只有10個元素,但是在函數中卻有這樣的語句ucDataBuff[10]=0x1a,這個語句是給數組的第11個元素賦值,:由于定義的數組只有10個元素,從而導致賦值語句中不知道把0x1a放到什么地方,從而導致程序跑飛。

解決方法:

如果在調試程序時,發現程序總是在函數執行完畢時跑飛,多數情況是發生了數組越界(數組溢出)的錯誤,仔細檢查函數中調用的數組是否存在越界(溢出)的情況。

0

2

中斷服務程序缺失

現象:

程序運行過程中總是跑飛。

原因:

程序中打開了某個中斷,但是卻沒有相應的中斷服務程序,從而導致在中斷發生后,找不到中斷服務程序入口,從而導致程序跑飛。

解決方法:

檢查程序中是否存在打開了某個中斷,但是沒有相對應的中斷服務程序。

0

3

看門狗復位

現象:

在執行一段較為耗費時間的程序時,程序跑飛,并且總是跳到復位位置處。

原因:

程序中使用了看門狗,但是沒有及時“喂狗”,從而導致看門狗復位,使程序直接跳到復位位置。

解決方法:

根據程序運行時間,尤其是一定要計算清楚最耗時的那段程序的運行時間,然后準確設置看門狗的復位時長,定時“喂狗”,尤其是如果有死循環的情況,一定要在死循環中記得“喂狗”。

責任編輯:haq

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 單片機
    +關注

    關注

    6076

    文章

    45495

    瀏覽量

    670281
  • 看門狗
    +關注

    關注

    10

    文章

    610

    瀏覽量

    72936
  • 程序
    +關注

    關注

    117

    文章

    3846

    瀏覽量

    85234

原文標題:單片機程序又跑飛?

文章出處:【微信號:gh_c472c2199c88,微信公眾號:嵌入式微處理器】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    單片機程序死機的幾種原因分享

    在使用單片機過程中,經常會出現程序運行一段時間后,不能夠正常相應的情況。一般分為軟件原因和硬件原因,其中硬件原因比較容易查,軟件原因就較為復雜。 軟件導致單片機死機的原因 1、指針異常 指針未
    發表于 01-21 07:34

    單片機里的程序運行方式

    我們想要理解單片機是如何運行程序的,我們首先需要了解單片機的組成,我們這里以80C51單片機為例來理解程序
    發表于 01-16 06:57

    如何解決MCU系統時鐘頻率改變導致的程序

    如何解決MCU系統時鐘頻率改變導致的程序問題
    發表于 12-05 08:20

    使用單片機系統時間不準怎么辦

    使用單片機系統時間不準,怎么辦?具體的是與晶振有關系還是MCU內部有關系,時間一長顯示的時間就慢了
    發表于 12-05 07:51

    在使用Saiyuan的CW32單片機時,頻率調整導致系統,影響正常運行,怎么解決?

    在使用Saiyuan的CW32單片機時,頻率調整導致系統,影響正常運行。該怎么做?
    發表于 11-28 08:09

    單片機如何選擇復位方式?

    在數字電路領域,單片機的復位是確保其正常啟動與運行的重要環節,復位功能主要是將單片機內部狀態重置為初始狀態,避免程序運行過程中的混亂、
    發表于 11-26 08:09

    用IAP去升級,遇見現象怎么解決

    1、檢查供電電壓 確保單片機的供電電壓穩定,且在正常工作電壓范圍內。 檢查電源文波大小,確保Ldo供電電壓和電流滿足要求。 在單片機的vdda和vssa引腳接磁珠,各電源硬件接濾波電容。 2
    發表于 11-26 06:34

    請問單片機RAM空間不夠用了怎么辦

    單片機RAM空間不夠用了怎么辦
    發表于 11-25 08:09

    單片機應用系統的可靠性設計介紹

    指標。由于51單片機的指令系統是復雜指令集結構,致使其抗干擾性能較低,尤其用在工業控制的場合,如果不增加額外的抗干擾措施,甚至無法正常工作。單片機軟件抗干擾設計的主要目的就是及時發現“
    發表于 11-25 06:21

    單片機可靠性差的解決辦法

    1、軟件陷阱是什么? 軟件陷阱是一種用于捕獲并處理單片機程序”現象的技術,當程序執行過程中因干擾而偏離正常軌道時,軟件陷阱可及時發現
    發表于 11-25 06:10

    單片機燒錄原理是怎樣的?輝芒微單片機燒錄程序詳細步驟講解

    燒錄(Programming)就是把 .hex/.bin 文件里的機器碼搬運進單片機片內 Flash 的過程。輝芒微(FMD)單片機內部有一塊 自舉 BootROM,上電時會先跑這段程序;如果檢測
    的頭像 發表于 09-17 16:14 ?2307次閱讀
    <b class='flag-5'>單片機</b>燒錄原理是怎樣的?輝芒微<b class='flag-5'>單片機</b>燒錄<b class='flag-5'>程序</b>詳細步驟講解

    怎么測單片機系統頻率

    單片機系統頻率是指單片機工作時的時鐘頻率,它直接影響單片機的運行速度和處理能力,準確測量系統頻率對單片機應用開發、程序調試和性能優化具有重要
    的頭像 發表于 07-25 11:39 ?783次閱讀

    單片機怎么燒程序

    單片機程序是將編寫好的程序代碼寫入單片機內部存儲單元,讓單片機按照預設邏輯工作的過程,是單片機
    的頭像 發表于 07-23 11:47 ?1273次閱讀

    STC單片機范例程序

    電子發燒友網站提供《STC單片機范例程序.zip》資料免費下載
    發表于 06-04 16:27 ?10次下載

    2.4寸TFT彩屏配套測試程序-51單片機

    如題,2.4寸TFT彩屏配套測試程序-51單片機
    發表于 06-04 16:26 ?0次下載