欢迎来到天天文库
浏览记录
ID:46625461
大小:69.51 KB
页数:6页
时间:2019-11-26
《ADC外部触发教训》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、ADC1和ADC2双ADC模式TIM8同时触发。折腾了3天,各种查询,感谢网上的大侠提供的信息。现总结下我遇到的问题1、配置问题:ADC1配置模式选择:ADC_Mode_RegSimult触发选择:ADC_ExternalTrigConv_Ext_IT11_TIM8_TRGOGPIO_PinRemapConfig(GPIO_Remap_ADC1_ETRGREG,ENABLE);/*重要!!通过复用选择触发*/就这一句话,我找了一天的原因,汗!!重点:要使用管脚重映射来选择外部触发信号,原因:2、配置TIM8TRGO信号要注
2、意:如果选择了更新模式,同时又开启了预加载,那么此时重复计数器会影响这个信号的输出。3、ADC配置程序:ADC_InitTypeDefADC_InitStructure;DMA_InitTypeDefDMA_InitStructure;NVIC_InitTypeDefNVIC_InitStructure;/*ADCCLK=PCLK2/4*/RCC_ADCCLKConfig(RCC_PCLK2_Div6);//设置ADC分频因子672M/6=12,ADC最大时间不能超过14MGPIO_PinRemapConfig(GPIO_
3、Remap_ADC1_ETRGREG,ENABLE);/*重要!!通过复用选择触发*//*Enableperipheralclocks------------------------------------------------*//*EnableDMA1andDMA2clocks*/RCC_AHBPeriphClockCmd(RCC_AHBPeriph_DMA1
4、RCC_AHBPeriph_DMA2,ENABLE);/*EnableADC1,ADC2,ADC3andGPIOCclocks*/RCC_APB2Periph
5、ClockCmd(RCC_APB2Periph_ADC1
6、RCC_APB2Periph_ADC2
7、RCC_APB2Periph_ADC3,ENABLE);/*DMA1channel1configuration----------------------------------------------*/DMA_DeInit(DMA1_Channel1);DMA_InitStructure.DMA_PeripheralBaseAddr=ADC1_DR_Address;DMA_InitStructure.DMA_MemoryB
8、aseAddr=(uint32_t)&AdcCh12Buf;//ADC12公用缓冲DMA_InitStructure.DMA_DIR=DMA_DIR_PeripheralSRC;//从外设读DMA_InitStructure.DMA_BufferSize=AdDataNum;//传送数量DMA_InitStructure.DMA_PeripheralInc=DMA_PeripheralInc_Disable;//外设地址加关闭DMA_InitStructure.DMA_MemoryInc=DMA_MemoryInc_Ena
9、ble;//寄存器地址加开启DMA_InitStructure.DMA_PeripheralDataSize=DMA_PeripheralDataSize_Word;//字32位传输DMA_InitStructure.DMA_MemoryDataSize=DMA_MemoryDataSize_Word;//字32位传输DMA_InitStructure.DMA_Mode=DMA_Mode_Circular;//单次传输:DMA_Mode_Normal,DMA_Mode_CircularDMA_InitStructure.D
10、MA_Priority=DMA_Priority_High;//高优先级DMA_InitStructure.DMA_M2M=DMA_M2M_Disable;//非存储器到存储器模式DMA_Init(DMA1_Channel1,&DMA_InitStructure);DMA_ITConfig(DMA1_Channel1,DMA_IT_TC,ENABLE);//中断配置:半满和全满/*EnableDMA1channel1*/DMA_Cmd(DMA1_Channel1,ENABLE);/*DMA2channel5configur
11、ation----------------------------------------------*/DMA_DeInit(DMA2_Channel5);DMA_InitStructure.DMA_PeripheralBaseAddr=ADC3_DR_Address;//ADC3地址DMA_Init
此文档下载收益归作者所有