//ADC_ChannelConfig(ADC1,ADC_Channel_0, ADC_SampleTime_239Cycles5 ); //等待更长采集周期 ADC_GetCalibrationFactor(ADC1); //校准ADC ADC_DMACmd(ADC1, ENABLE); //使能ADC1的DMA通道,还需独立配置DMA通道等参数 ADC_Cmd(ADC1,ENABLE); //使能的ADC1 while(!ADC_GetFlagStatus(ADC1, ADC_FLAG_...
ADC_StartCalibration(ADC1); //开启ADC校准 while(ADC_GetCalibrationStatus(ADC1)); //等待校准结束 ADC_ExternalTrigConvCmd(ADC1,ENABLE);//使用外部触发 /*** DMA初始化 ***/ RCC_AHBPeriphClockCmd(RCC_AHBPeriph_DMA1,ENABLE); DMA_DeInit(DMA1_Channel1); DMA_InitTypeDef DMA_InitStructure; DMA_I...
RCC_AHBPeriphClockCmd(RCC_AHBPeriph_DMA1, ENABLE);//使能时钟 DMA_DeInit(DMA1_Channel1); //将通道一寄存器设为默认值 DMA_InitStructure.DMA_PeripheralBaseAddr = (uint32_t)&(ADC1->DR);//该参数用以定义DMA外设基地址 DMA_InitStructure.DMA_MemoryBaseAddr = (uint32_t)&ADCConvertedValue;//该参...
static void ADC1_DMA1_Init(void) { DMA_InitTypeDef DMA_InitStructure; NVIC_InitTypeDef NVIC_InitStructure; RCC_AHBPeriphClockCmd(RCC_AHBPeriph_DMA1, ENABLE); NVIC_PriorityGroupConfig(NVIC_PriorityGroup_1); NVIC_InitStructure.NVIC_IRQChannel = DMA1_Channel1_IRQn; NVIC_InitStructure.NVIC_IRQChannelPree...
DMA_Cmd(DMA1_Channel1, ENABLE); //DMA1的通道1使能 ADC_DMACmd(ADC1, ENABLE); //ADC1触发DMA1的信号使能 ADC_Cmd(ADC1, ENABLE); //ADC1使能 /*ADC校准*/ ADC_ResetCalibration(ADC1); //固定流程,内部有电路会自动执行校准 while (ADC_GetResetCalibrationStatus(ADC1) == SET); ...
1、 下面代码是一个标准DMA设置,当然实际应用中可根据实际情况进行裁减: DMA_DeInit(DMA_Channel1); 上面这句是给DMA配置通道,根据ST提供的资料,STM3210Fx中DMA包含7个通道(CH1~CH7),也就是说可以为外设或memory提供7座“桥梁”(请允许我使用桥梁一词,我觉得更容易理解,哈哈,别“拍砖”呀!); ...
DMA_DeInit(DMA1_Channel1); //DMA重新设置为缺省值 DMA_InitStructure.DMA_PeripheralBaseAddr = ADC1_DR_Address;//DMA??ADC??? DMA_InitStructure.DMA_MemoryBaseAddr = (uint32_t)&Rec_buff; //DMA数据填充的地址 DMA_InitStructure.DMA_DIR = DMA_DIR_PeripheralSRC;//SRC模式,外设向内存中搬运 ...
while (!ADC_GetFlagStatus(ADC1, ADC_FLAG_ADRDY)) ; /* Wait the ADCEN falg */ //设置DMA要在校准ADC之后 DMA_DeInit(DMA1_Channel1); /* DMA1 Channel1 Config */ DMA_InitStructure.DMA_PeripheralBaseAddr = (uint32_t) 0x40012440; //ADC1->DR; //外设地址 ...
配置ADC对应的DAM1通道1: 代码语言:javascript 复制 DMA_DeInit(DMA1_Channel1);DMA_InitStructure.DMA_PeripheralBaseAddr=(uint32_t)(&(ADC1->DR));//设置源地址DMA_InitStructure.DMA_MemoryBaseAddr = (u32)&ADC_ConvertedValue; //设置内存地址DMA_InitStructure.DMA_DIR = DMA_DIR_PeripheralSRC; // 设...
1.DMA初始化函数 DMA_DeInit(DMAX_ChannelX); 功能:将DMAyChannelx寄存器的初始化为其默认值 注释:RCC_ResetCmd中对DMA无定义,因此采用的直接操纵DMA寄存器的方式 void DMA_Init(DMA_Channel_TypeDef* DMAy_Channelx, DMA_InitTypeDef* DMA_InitStruct) ...