關(guān)于CH32V307中的SysTick中斷的問(wèn)題說(shuō)明

根據(jù)自己編寫(xiě)程序和網(wǎng)上找到的SysTick示例,發(fā)現(xiàn)以下問(wèn)題

  1. 重裝載功能 和 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)

  2. 在手冊(cè)中,只對(duì)重裝載做了簡(jiǎn)單說(shuō)明,說(shuō)是使能位,能夠?qū)崿F(xiàn)自動(dòng)重裝載,這就讓人忽略了SR的狀態(tài)位于重裝載是相關(guān)聯(lián)的

  3. 對(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í)功能

您好,關(guān)于CH32V307的SysTick,當(dāng)使能SysTick中斷后,進(jìn)入中斷的條件是當(dāng)計(jì)數(shù)器的值和比較寄存器的值一樣時(shí)進(jìn)入中斷。關(guān)于SR寄存器,只包含一個(gè)計(jì)數(shù)值比較標(biāo)志位,你可以理解每次進(jìn)入中斷后都要清除對(duì)應(yīng)的中斷標(biāo)志位,因此需要對(duì)SR寄存器寫(xiě)0清除。后面若有問(wèn)題,可通過(guò)郵箱和我溝通(lzs@wch.cn)


剛剛踩了相同的坑。既然ISR中必須對(duì)SR寄存器寫(xiě)0清除,順便清CNT寄存器也不是什么問(wèn)題。自動(dòng)重裝載失去了存在的意義,這里硬件設(shè)計(jì)明顯不妥。


只有登錄才能回復(fù),可以選擇微信賬號(hào)登錄

国产91精品新入口,国产成人综合网在线播放,九热这里只有精品,本道在线观看,美女视频a美女视频,韩国美女激情视频,日本美女pvp视频