1.初始化ADC1
void ADC1_Configuration(void)
{
ADC_InitTypeDef ADC_InitStructure;
ADC_InitStructure.ADC_Mode = ADC_Mode_Independent;//独立工作模式
ADC_InitStructure.ADC_ScanConvMode = ENABLE;//扫描方式
ADC_InitStructure.ADC_ContinuousConvMode = ENABLE; //连续转换开启
ADC_InitStructure.ADC_ExternalTrigConv = ADC_ExternalTrigConv_None;//外部触发禁止
ADC_InitStructure.ADC_DataAlign = ADC_DataAlign_Right;//右对齐方式
ADC_InitStructure.ADC_NbrOfChannel = 11; //11个采样通道
ADC_Init(ADC1, &ADC_InitStructure);//调用函数,初始化ADC1
//ADC内置温度传感器使能(要使用片内温度传感器,切忌要开启它)
ADC_TempSensorVrefintCmd(ENABLE);
//常规转换序列1:通道10
ADC_RegularChannelConfig(ADC1, ADC_Channel_10, 1, ADC_SampleTime_55Cycles5);
//常规转换序列2:通道16<

这篇博客介绍了如何在STM32F10x上配置ADC进行多通道采集,包括独立工作模式、扫描方式、连续转换的启用,以及温度传感器的使用。此外,还详细阐述了配置DMA进行ADC转换结果的自动读取到内存的过程,以实现高效的数据传输。博主展示了通过ADC采集血氧传感器和压电脉搏传感器数据的实践效果,并提供了代码下载链接。
最低0.47元/天 解锁文章
5489





