用了 ADC1_IN10 ADC1_IN11 ADC1_IN15 只有10 和11 的adc值正确 IN15的值不正确, 模式选择的是 sequencer set to not fully configurable 求大佬看看 void MX_ADC1_Init(void) { ADC_ChannelConfTypeDef sConfig = {0}; /** Configure the global features of the ADC (Clock, Resolution, Data Alignment and number of conversion) */ hadc1.Instance = ADC1; hadc1.Init.ClockPrescaler = ADC_CLOCK_SYNC_PCLK_DIV2; hadc1.Init.Resolution = ADC_RESOLUTION_12B; hadc1.Init.DataAlign = ADC_DATAALIGN_RIGHT; hadc1.Init.ScanConvMode = ADC_SCAN_DISABLE; hadc1.Init.EOCSelection = ADC_EOC_SINGLE_CONV; hadc1.Init.LowPowerAutoWait = DISABLE; hadc1.Init.LowPowerAutoPowerOff = DISABLE; hadc1.Init.ContinuousConvMode = DISABLE; hadc1.Init.NbrOfConversion =3; hadc1.Init.ExternalTrigConv = ADC_SOFTWARE_START; hadc1.Init.ExternalTrigConvEdge = ADC_EXTERNALTRIGCONVEDGE_NONE; hadc1.Init.DMAContinuousRequests = DISABLE; hadc1.Init.Overrun = ADC_OVR_DATA_PRESERVED; hadc1.Init.SamplingTimeCommon1 = ADC_SAMPLETIME_12CYCLES_5; hadc1.Init.OversamplingMode = DISABLE; hadc1.Init.TriggerFrequencyMode = ADC_TRIGGER_FREQ_HIGH; sConfig.Channel = ADC_CHANNEL_10; sConfig.Rank = ADC_RANK_CHANNEL_NUMBER; if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK) { Error_Handler(); } sConfig.Channel = ADC_CHANNEL_11; sConfig.Rank = ADC_RANK_CHANNEL_NUMBER; if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK) { Error_Handler(); } sConfig.Channel = ADC_CHANNEL_15; sConfig.Rank = ADC_RANK_CHANNEL_NUMBER; if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK) { Error_Handler(); } } |
STM32G030, RTC, 调用LL_RTC_DeInit() 会进入1s超时的错误
STM32G030K8 i2c_get通讯异常
mcu iic问题:mcu作为i2c-slave, main函数内循环打印,收到 i2c get 时,循环打印停止了是什么原因?
adc采集电压
关于使用STM32G030C8T6的串口收发过程中串口接收问题
STM32G0B1的CAN自动重发
用stm32cubeide生成的STM32G030F6P6代码只要一开中断,任何中断程序都会跑飞.
STM32G0B1CBT6 双Bank升级,运行Bank2上Flash不能写问题
有关STM32G0B1RET6芯片FLASH擦除问题
STM32G030烧录程序
谢谢 我去看看
而3个通道都使用:sConfig.Rank = ADC_RANK_CHANNEL_NUMBER;
结果就只转换1个通道而已