根據(jù)自己編寫(xiě)程序和網(wǎng)上找到的SysTick示例,發(fā)現(xiàn)以下問(wèn)題
重裝載功能 和 SR寄存器是相關(guān)聯(lián)的,SR硬件置位后必須手動(dòng)復(fù)位清除,重裝載功能才能正常工作,不然不能正常實(shí)現(xiàn)重復(fù)計(jì)數(shù)功能,無(wú)法理想的實(shí)現(xiàn)自動(dòng)重裝載并進(jìn)入中斷,只能靠開(kāi)啟和關(guān)閉中斷來(lái)實(shí)現(xiàn)
在手冊(cè)中,只對(duì)重裝載做了簡(jiǎn)單說(shuō)明,說(shuō)是使能位,能夠?qū)崿F(xiàn)自動(dòng)重裝載,這就讓人忽略了SR的狀態(tài)位于重裝載是相關(guān)聯(lián)的
對(duì)于SR需要手動(dòng)復(fù)位這一點(diǎn)來(lái)說(shuō)不理解,因?yàn)槭鼓苤匮b載后,應(yīng)該是硬件自動(dòng)對(duì)SR進(jìn)行復(fù)位,不需要人工干涉,到達(dá)計(jì)數(shù)值響應(yīng)中斷和對(duì)SR復(fù)位才是正常流程,小白,所以求一個(gè)為什么
所以現(xiàn)在正確使用SysTick重裝載功能是在中斷處理函數(shù)中對(duì)SR進(jìn)行手動(dòng)復(fù)位,就會(huì)按照重裝載值進(jìn)行重復(fù)計(jì)時(shí)功能