STM32学习记录(七):ADC 模拟/数字转换器(Analog-to-digital converter:ADC)将模拟量转为数字量。STM32F103C8T6中的有2个12bit转换时间为1us的A/D转换器,内置了一个温度传感器,可以通过ADC读取。 ADC的系统框图 ADC读取温度传感器 S
为PCLK2的8分频率ADC_RegularChannelConfig(ADC1, ADC_Channel_8,1, ADC_SampleTime_55Cycles5);//配置ADC1通道8,通道转换顺序为1, 转换时间为55.5个时钟周期ADC_DMACmd(ADC1, ENABLE);//打开ADC1的DMA请求,即ADC转换完成后将触发DMA开始传输ADC_Cmd(ADC1, ENABLE);//打开ADC...
ADC_DeInit();//ADC1复位 3、设置 ADC 的通用控制寄存器 CCR,配置 ADC 输入时钟分频,模式为独立模式等。 代码语言:javascript 代码运行次数:0 运行 AI代码解释 voidADC_CommonInit(ADC_CommonInitTypeDef*ADC_CommonInitStruct) 4、初始化 ADC1 参数,设置 ADC1 的转换分辨率,转换方式,对齐方式,以及规...
ADC_DeInit(ADC1);//将外设ADC1的全部寄存器重设为缺省值 ADC_InitStructure.ADC_Mode=ADC_Mode_Independent;//ADC工作模式:ADC1和ADC2工作在独立模式 ADC_InitStructure.ADC_ScanConvMode=ENABLE;//模数转换工作在扫描模式 ADC_InitStructure.ADC_ContinuousConvMode=ENABLE;//模数转换工作在连续转换模式 ADC_InitStructur...
static void ADC_MODE_CONFIG_(void) { DMA_InitTypeDef DMA_InitInstructure; RCC_AHBPeriphClockCmd(RCC_AHBPeriph_DMA1,ENABLE); DMA_DeInit(DMA1_Channel1);//复位 DMA_InitInstructure.DMA_PeripheralBaseAddr =(u32)(&(ADC1->DR));//配置外设的基址,取adc ...
ADC_DeInit(ADC1); //复位ADC1 ADC_InitStructure.ADC_Mode = ADC_Mode_Independent; //ADC工作...
static void ADC1_Mode_Config(void) { DMA_InitTypeDef DMA_InitStructure; ADC_InitTypeDef ADC_InitStructure; DMA_DeInit(DMA1_Channel1); /* DMA通道1 */ DMA_InitStructure.DMA_PeripheralBaseAddr = ADC1_DR_Address; //ADC 地址 DMA_InitStructure.DMA_MemoryBaseAddr = (u32)&ADC_ConvertedValue; //内...
如下是F103的ADC1通道1的DMA使用(PA1引脚),连续自动转换(校准通道不需要初始化引脚,其余和普通ADC...
ADC 的功能是将模拟信号采样得到数字信号,而有些时候,我们需要使用到定时采样,比如在计算一个采集的波形的频率的时候,我们需要精确的知道采样频率,也就是 1 s 内采集的点数,这个时候,就需要使用到定时采集。定时采样有如下三种方法: 使用定时器中断,每隔一段时间进行 ADC 转换,但是这样每次都必须读 ADC 的数据寄存...
ADC_DMACmd(ADC1, ENABLE); //开启ADC1的DMA传输 DMA配置: NVIC_InitTypeDef NVIC_InitStruct; DMA_InitTypeDef DMA_InitStructure; RCC_AHBPeriphClockCmd(RCC_AHBPeriph_DMA1, ENABLE); //使能DMA传输 DMA_DeInit(DMA_CHx); //将DMA的通道1寄存器重设为缺省值 ...