PFIC_EnableIRQ(ADC_IRQn)中斷跑飛

下面代碼是從參考代碼直接復(fù)制過來(lái)的,只是把通道0改為通道3,增益改了一下,但是執(zhí)行到

PFIC_EnableIRQ(ADC_IRQn)語(yǔ)句的時(shí)候,后面的log就打印不出來(lái)了,哪里出錯(cuò)了呢,采用的571k芯片


void Peripheral_Init()

{

? ? DMA_end=1;

? ? RoughCalib_Value=0;// = ADC_DataCalib_Rough();

? ? GPIOA_ModeCfg(GPIO_Pin_13, GPIO_ModeIN_Floating);

? ? ADC_ExtSingleChSampInit(SampleFreq_3_2, ADC_PGA_1_2);

? ? ADC_ChannelCfg(3);

? ? ADC_AutoConverCycle(192); //采樣周期為 (256-192)*16個(gè)系統(tǒng)時(shí)鐘


? ? ADC_DMACfg(ENABLE, (uint16_t)(uint32_t)adcBuff, (uint16_t)(uint32_t)(&adcBuff[40]), ADC_Mode_Single);

? ? PRINT("ADCINIT0\n");

? ? PFIC_EnableIRQ(ADC_IRQn);

? ? PRINT("ADCINIT1\n");

? ? ADC_StartDMA();

}


中斷處理代碼也是直接復(fù)制過來(lái)的

__attribute__((interrupt("WCH-Interrupt-fast")))

__attribute__((section(".highcode")))

void ADC_IRQHandler(void)

{

? ? if(ADC_GetDMAStatus())

? ? {

? ? ? ? ADC_ClearDMAFlag();

? ? ? ? ADC_StopDMA();

? ? ? ? R16_ADC_DMA_BEG = (uint16_t)(uint32_t)&adcBuff[0];

? ? ? ? DMA_end = 1;

? ? }


}



手冊(cè)ADC章節(jié)可以參考一下,如有需要可使用573的芯片。

image.png


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

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