ADC1 GPIO配置(ADC1通道8对应PB0的复用功能): GPIO_InitTypeDef GPIO_InitStructure; RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE);//开启GPIOB外设时钟 (STM32在对外设寄存器操作之前需要开启相应外设时钟)GPIO_InitStructure.GPIO_Pin =GPIO_Pin_0; GPIO_InitStructure.GPIO_Mode= GPIO_Mode_AIN;//...
我将两个模拟输入设置为GPIO_Mode_AIN(模拟输入),将PC2 按键功能键设置成上拉输入(摇杆的SW引脚已经被上拉)。下面是重点: 在ADC1_GPIO_Config(void)函数中,我们主要进行的是DMA和ADC1双通道的设置,下面我们对负责传输的DMA进行设置: DMA_InitTypeDef DMA_InitStructure;/*DMA channel1 configuration*/DMA_DeInit(...
GPIO_SetBits(GPIOA , GPIO_Pin_7); //错误处理 } } void GPIO_Configuration(void) { GPIO_InitTypeDef GPIO_InitStructure; GPIO_InitStructure.GPIO_Pin = GPIO_Pin_4 | GPIO_Pin_5 | GPIO_Pin_6 | GPIO_Pin_7; GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; GPIO_InitStructure.GPIO_Mode = ...
RCC_ADCCLKConfig(RCC_ADC12PLLCLK_Div16);RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOA | RCC_AHB...
LED_GPIO_Config();LED_BLUE;ILI9806G_DispStringLine_EN(LINE(1),"test of ADC");//初始化引脚 PB0GPIO_InitTypeDefGPIO_InitStructure;RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOB,ENABLE);GPIO_InitStructure.GPIO_Pin=GPIO_Pin_0;GPIO_InitStructure.GPIO_Mode=GPIO_Mode_AIN;GPIO_InitStructure.GPIO_...
初始化* @param 无* @retval 无*/static void ADCx_GPIO_Config(void){GPIO_InitTypeDef GPIO_...
GPIO_Initure.Pull=GPIO_NOPULL; //不带上下拉 HAL_GPIO_Init(GPIOA,&GPIO_Initure); 1. 2. 3. 4. 5. 6. 5、配置通道之后开启ADC转换 AI检测代码解析 ADC_ChannelConfTypeDef ADC1_ChanConf; ADC1_ChanConf.Channel=ch; //通道 ADC1_ChanConf.Rank=1; //第1个序列,序列1 ...
SystemClock_Config(); MX_GPIO_Init(); MX_ADC1_Init(); MX_USART1_UART_Init(); while (1) { // 启动ADC转换 HAL_ADC_Start(&hadc1); // 等待转换完成 HAL_ADC_PollForConversion(&hadc1, 100); // 获取ADC转换结果 uint16_t adc_value = HAL_ADC_GetValue(&hadc1); ...
配置GPIO引脚作为ADC输入通道,使用HAL库函数进行配置。初始化ADC1和ADC3模块,配置模块参数,例如采样时间...
int main(void) { HAL_Init(); SystemClock_Config(); MX_GPIO_Init(); MX_ADC1_Init(); while (1) { ADC1_StartConversion(); // 可以在这里添加其他代码,或者等待转换完成 HAL_Delay(1000); // 等待1秒 } } 将读取到的ADC值进行处理或输出: 在HAL_ADC_ConvCpltCallback()函数中,我们已经将...