在你的代碼中,必須使用static關(guān)鍵字來聲明局部變量 i 因?yàn)榫植孔兞咳绻麤]有使用 static 限定,默認(rèn)就是 auto 類型的,那么每次 5ms 定時時間到,中斷服務(wù)函數(shù)就會被調(diào)用一次,每次調(diào)用,變量 i 的值又會重新歸為垃圾值,主要是需要理解函數(shù)調(diào)用時會給該函數(shù)分配一個?臻g,并不能保證每次分配的都是同一個,所以變量 i 的值在沒有使用 static 修飾它的存儲類型時就不會按照我們預(yù)想的從 i 一直自加到 100
當(dāng)然,如果不想使用 static 關(guān)鍵字,也可以將記錄 T0 中斷次數(shù)的變量 i 定義成全局變量