型號(hào):CH32V303
使用了DMA中斷,每次仿真程序跑到斷點(diǎn)處或者暫停運(yùn)行程序都會(huì)卡在中斷出不來(lái),如何解決
型號(hào):CH32V303
使用了DMA中斷,每次仿真程序跑到斷點(diǎn)處或者暫停運(yùn)行程序都會(huì)卡在中斷出不來(lái),如何解決
?
;
你好,你的中斷函數(shù)寫的和啟動(dòng)文件不一致,建議你直接把啟動(dòng)文件里的中斷函數(shù)復(fù)制替換掉你寫的中斷函數(shù)名.
DMA1_Channel5_IRQHandler? 沒(méi)有寫中斷函數(shù),正常運(yùn)行程序是沒(méi)問(wèn)題的,只有仿真暫停后會(huì)停在這里
這是DMA的配置
你開(kāi)啟了DMA中斷,不寫中斷服務(wù)函數(shù)?正常運(yùn)行嗎?你在while1中翻轉(zhuǎn)IO口點(diǎn)燈。DMA搬運(yùn)完串口的數(shù)據(jù)找不到中斷服務(wù)函數(shù),燈肯定就滅了,串口肯定有數(shù)據(jù),可能你就搬了一次,你代碼中多使幾次DMA搬運(yùn),肯定就第一次串口有數(shù)據(jù),剩下的就沒(méi)數(shù)據(jù)了
可以正常運(yùn)行的,程序沒(méi)有跑飛,你們的例程里也沒(méi)有寫DMA的中斷服務(wù)函數(shù)
加了中斷函數(shù)后仿真正常了