您当前的位置:首页 > IT编程 > C++
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:C++ HAL_ADC_ConfigChannel函数代码示例

51自学网 2021-06-01 21:20:42
  C++
这篇教程C++ HAL_ADC_ConfigChannel函数代码示例写得很实用,希望能帮到您。

本文整理汇总了C++中HAL_ADC_ConfigChannel函数的典型用法代码示例。如果您正苦于以下问题:C++ HAL_ADC_ConfigChannel函数的具体用法?C++ HAL_ADC_ConfigChannel怎么用?C++ HAL_ADC_ConfigChannel使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。

在下文中一共展示了HAL_ADC_ConfigChannel函数的30个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: MX_ADC1_Init

/* ADC1 init function */void MX_ADC1_Init(void){  ADC_ChannelConfTypeDef sConfig;    /**Configure the global features of the ADC (Clock, Resolution, Data Alignment and number of conversion)     */  hadc1.Instance = ADC1;  hadc1.Init.ClockPrescaler = ADC_CLOCKPRESCALER_PCLK_DIV4;  hadc1.Init.Resolution = ADC_RESOLUTION12b;  hadc1.Init.ScanConvMode = ENABLE;  hadc1.Init.ContinuousConvMode = DISABLE;  hadc1.Init.DiscontinuousConvMode = DISABLE;  hadc1.Init.ExternalTrigConvEdge = ADC_EXTERNALTRIGCONVEDGE_NONE;  hadc1.Init.DataAlign = ADC_DATAALIGN_RIGHT;  hadc1.Init.NbrOfConversion = 3;  hadc1.Init.DMAContinuousRequests = DISABLE;  hadc1.Init.EOCSelection = EOC_SINGLE_CONV;  HAL_ADC_Init(&hadc1);    /**Configure for the selected ADC regular channel its corresponding rank in the sequencer and its sample time.     */  sConfig.Channel = ADC_CHANNEL_1;  sConfig.Rank = 1;  sConfig.SamplingTime = ADC_SAMPLETIME_3CYCLES;  HAL_ADC_ConfigChannel(&hadc1, &sConfig);    /**Configure for the selected ADC regular channel its corresponding rank in the sequencer and its sample time.     */  sConfig.Channel = ADC_CHANNEL_2;  sConfig.Rank = 2;  HAL_ADC_ConfigChannel(&hadc1, &sConfig);    /**Configure for the selected ADC regular channel its corresponding rank in the sequencer and its sample time.     */  sConfig.Channel = ADC_CHANNEL_3;  sConfig.Rank = 3;  HAL_ADC_ConfigChannel(&hadc1, &sConfig);}
开发者ID:SNU-Sigma,项目名称:stm32f4_study_code,代码行数:41,


示例2: MX_ADC_Init

/* ADC init function */void MX_ADC_Init(void){  ADC_ChannelConfTypeDef sConfig;    /**Configure the global features of the ADC (Clock, Resolution, Data Alignment and number of conversion)     */  hadc.Instance = ADC1;  hadc.Init.ClockPrescaler = ADC_CLOCK_ASYNC;  hadc.Init.Resolution = ADC_RESOLUTION12b;  hadc.Init.DataAlign = ADC_DATAALIGN_RIGHT;  hadc.Init.ScanConvMode = ADC_SCAN_DIRECTION_FORWARD;  hadc.Init.EOCSelection = EOC_SINGLE_CONV;  hadc.Init.LowPowerAutoWait = DISABLE;  hadc.Init.LowPowerAutoPowerOff = DISABLE;  hadc.Init.ContinuousConvMode = DISABLE;  hadc.Init.DiscontinuousConvMode = ENABLE;  hadc.Init.ExternalTrigConvEdge = ADC_EXTERNALTRIGCONVEDGE_NONE;  hadc.Init.DMAContinuousRequests = DISABLE;  hadc.Init.Overrun = OVR_DATA_PRESERVED;  HAL_ADC_Init(&hadc);    /**Configure for the selected ADC regular channel to be converted.     */  sConfig.Channel = ADC_CHANNEL_6;  sConfig.Rank = ADC_RANK_CHANNEL_NUMBER;  sConfig.SamplingTime = ADC_SAMPLETIME_1CYCLE_5;  HAL_ADC_ConfigChannel(&hadc, &sConfig);  sConfig.Channel = ADC_CHANNEL_7;  sConfig.Rank = ADC_RANK_CHANNEL_NUMBER;  sConfig.SamplingTime = ADC_SAMPLETIME_1CYCLE_5;  HAL_ADC_ConfigChannel(&hadc, &sConfig);  sConfig.Channel = ADC_CHANNEL_8;  sConfig.Rank = ADC_RANK_CHANNEL_NUMBER;  sConfig.SamplingTime = ADC_SAMPLETIME_1CYCLE_5;  HAL_ADC_ConfigChannel(&hadc, &sConfig);}
开发者ID:bartslinger,项目名称:lisadc_cube,代码行数:40,


示例3: MX_ADC_Init

/* ADC init function */void MX_ADC_Init(void){  ADC_ChannelConfTypeDef sConfig;    /**Configure the global features of the ADC (Clock, Resolution, Data Alignment and number of conversion)     */  hadc.Instance = ADC1;  hadc.Init.OversamplingMode = DISABLE;  hadc.Init.ClockPrescaler = ADC_CLOCKPRESCALER_PCLK_DIV1;  hadc.Init.Resolution = ADC_RESOLUTION12b;  //hadc.Init.SamplingTime = ADC_SAMPLETIME_28CYCLES_5;  //hadc.Init.SamplingTime = ADC_SAMPLETIME_41CYCLES_5;  hadc.Init.SamplingTime = ADC_SAMPLETIME_239CYCLES_5;  hadc.Init.ScanDirection = ADC_SCAN_DIRECTION_UPWARD;  hadc.Init.DataAlign = ADC_DATAALIGN_RIGHT;  hadc.Init.ContinuousConvMode = ENABLE;  hadc.Init.DiscontinuousConvMode = DISABLE;  hadc.Init.ExternalTrigConvEdge = ADC_EXTERNALTRIG_EDGE_NONE;  hadc.Init.DMAContinuousRequests = ENABLE;  hadc.Init.EOCSelection = EOC_SEQ_CONV;  hadc.Init.Overrun = OVR_DATA_OVERWRITTEN;  hadc.Init.LowPowerAutoWait = DISABLE;  hadc.Init.LowPowerFrequencyMode = DISABLE;  hadc.Init.LowPowerAutoOff = DISABLE;  HAL_ADC_Init(&hadc);    /**Configure for the selected ADC regular channel to be converted.     */  sConfig.Channel = ADC_CHANNEL_0;  HAL_ADC_ConfigChannel(&hadc, &sConfig);    /**Configure for the selected ADC regular channel to be converted.     */  sConfig.Channel = ADC_CHANNEL_1;  HAL_ADC_ConfigChannel(&hadc, &sConfig);}
开发者ID:shorai,项目名称:stm32L05,代码行数:40,


示例4: MX_ADC1_Init

/* ADC1 init function */void MX_ADC1_Init(void){  ADC_ChannelConfTypeDef sConfig;  ADC_InjectionConfTypeDef sConfigInjected;    /**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_DIV4;  hadc1.Init.Resolution = ADC_RESOLUTION_12B;  hadc1.Init.ScanConvMode = DISABLE;  hadc1.Init.ContinuousConvMode = DISABLE;  hadc1.Init.DiscontinuousConvMode = DISABLE;  hadc1.Init.ExternalTrigConvEdge = ADC_EXTERNALTRIGCONVEDGE_NONE;  hadc1.Init.ExternalTrigConv = ADC_SOFTWARE_START;  hadc1.Init.DataAlign = ADC_DATAALIGN_RIGHT;  hadc1.Init.NbrOfConversion = 1;  hadc1.Init.DMAContinuousRequests = DISABLE;  hadc1.Init.EOCSelection = ADC_EOC_SINGLE_CONV;  if (HAL_ADC_Init(&hadc1) != HAL_OK)  {    _Error_Handler(__FILE__, __LINE__);  }    /**Configure for the selected ADC regular channel its corresponding rank in the sequencer and its sample time.     */  sConfig.Channel = ADC_CHANNEL_6;  sConfig.Rank = 1;  sConfig.SamplingTime = ADC_SAMPLETIME_3CYCLES;  if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK)  {    _Error_Handler(__FILE__, __LINE__);  }    /**Configures for the selected ADC injected channel its corresponding rank in the sequencer and its sample time     */  sConfigInjected.InjectedChannel = ADC_CHANNEL_6;  sConfigInjected.InjectedRank = 1;  sConfigInjected.InjectedNbrOfConversion = 1;  sConfigInjected.InjectedSamplingTime = ADC_SAMPLETIME_3CYCLES;  sConfigInjected.ExternalTrigInjecConvEdge = ADC_EXTERNALTRIGINJECCONVEDGE_RISING;  sConfigInjected.ExternalTrigInjecConv = ADC_EXTERNALTRIGINJECCONV_T1_TRGO;  sConfigInjected.AutoInjectedConv = DISABLE;  sConfigInjected.InjectedDiscontinuousConvMode = DISABLE;  sConfigInjected.InjectedOffset = 0;  if (HAL_ADCEx_InjectedConfigChannel(&hadc1, &sConfigInjected) != HAL_OK)  {    _Error_Handler(__FILE__, __LINE__);  }}
开发者ID:madcowswe,项目名称:ODrive,代码行数:52,


示例5: Adc_Init

void Adc_Init(){	 ADC_ChannelConfTypeDef sConfig;	GPIO_InitTypeDef          GPIO_InitStruct;    /*##-- Enable peripherals and GPIO Clocks #################################*/  /* ADC3 Periph clock enable */	__HAL_RCC_ADC1_CLK_ENABLE();  /* Enable GPIO clock ****************************************/  __HAL_RCC_GPIOC_CLK_ENABLE();    /*##-- Configure peripheral GPIO ##########################################*/   /* ADC3 Channel8 GPIO pin configuration */  GPIO_InitStruct.Pin = GPIO_PIN_3;  GPIO_InitStruct.Mode = GPIO_MODE_ANALOG;  GPIO_InitStruct.Pull = GPIO_NOPULL;  HAL_GPIO_Init(GPIOC, &GPIO_InitStruct);	 AdcHandle.Instance          = ADC1;    AdcHandle.Init.ClockPrescaler        = ADC_CLOCKPRESCALER_PCLK_DIV2;  AdcHandle.Init.Resolution            = ADC_RESOLUTION_12B;  AdcHandle.Init.ScanConvMode          = DISABLE;  AdcHandle.Init.ContinuousConvMode    = DISABLE;  AdcHandle.Init.DiscontinuousConvMode = DISABLE;  AdcHandle.Init.NbrOfDiscConversion   = 0;  AdcHandle.Init.ExternalTrigConvEdge  = ADC_EXTERNALTRIGCONVEDGE_NONE;  AdcHandle.Init.ExternalTrigConv      = ADC_EXTERNALTRIGCONV_T1_CC1;  AdcHandle.Init.DataAlign             = ADC_DATAALIGN_RIGHT;  AdcHandle.Init.NbrOfConversion       = 1;  AdcHandle.Init.DMAContinuousRequests = DISABLE;  AdcHandle.Init.EOCSelection          = DISABLE;        if(HAL_ADC_Init(&AdcHandle) != HAL_OK)  {    /* Initialization Error */    Error_Handler();  }    /*##-- Configure ADC regular channel ######################################*/    sConfig.Channel      = ADC_CHANNEL_13;  sConfig.Rank         = 1;  sConfig.SamplingTime = ADC_SAMPLETIME_3CYCLES;  sConfig.Offset       = 0;    if(HAL_ADC_ConfigChannel(&AdcHandle, &sConfig) != HAL_OK)  {    /* Channel Configuration Error */    Error_Handler();  } }	
开发者ID:photon0414,项目名称:Balance_Car_STM32,代码行数:51,


示例6: BSP_JOY_Init

/**  * @brief  Configures joystick available on adafruit 1.8" TFT shield   *         managed through ADC to detect motion.  * @retval Joystickstatus (0=> success, 1=> fail)   */uint8_t BSP_JOY_Init(void){  if (ADCx_Init() != HAL_OK)  {    return (uint8_t) HAL_ERROR;   }    /* Select Channel 8 to be converted */  sConfig.Channel = ADC_CHANNEL_8;  sConfig.Rank    = ADC_RANK_CHANNEL_NUMBER;  /* Return Joystick initialization status */  return (uint8_t)HAL_ADC_ConfigChannel(&hnucleo_Adc, &sConfig);}
开发者ID:lpodkalicki,项目名称:blog,代码行数:19,


示例7: MX_ADC2_Init

/* ADC2 init function */void MX_ADC2_Init(void){    ADC_InjectionConfTypeDef sConfigInjected;    ADC_ChannelConfTypeDef sConfig;    /**Configure the global features of the ADC (Clock, Resolution, Data Alignment and number of conversion)      */    hadc2.Instance = ADC2;    hadc2.Init.ClockPrescaler = ADC_CLOCKPRESCALER_PCLK_DIV2;    hadc2.Init.Resolution = ADC_RESOLUTION12b;    hadc2.Init.ScanConvMode = ENABLE;    hadc2.Init.ContinuousConvMode = DISABLE;    hadc2.Init.DiscontinuousConvMode = DISABLE;    hadc2.Init.ExternalTrigConvEdge = ADC_EXTERNALTRIGCONVEDGE_NONE;    hadc2.Init.DataAlign = ADC_DATAALIGN_RIGHT;    hadc2.Init.NbrOfConversion = 1;    hadc2.Init.DMAContinuousRequests = DISABLE;    hadc2.Init.EOCSelection = EOC_SINGLE_CONV;    HAL_ADC_Init(&hadc2);    /**Configures for the selected ADC injected channel its corresponding rank in the sequencer and its sample time      */    sConfigInjected.InjectedChannel = ADC_CHANNEL_13;    sConfigInjected.InjectedRank = 2;    sConfigInjected.InjectedNbrOfConversion = 0;    sConfigInjected.InjectedSamplingTime = ADC_SAMPLETIME_15CYCLES;    sConfigInjected.AutoInjectedConv = DISABLE;    sConfigInjected.InjectedDiscontinuousConvMode = DISABLE;    sConfigInjected.InjectedOffset = 0;    HAL_ADCEx_InjectedConfigChannel(&hadc2, &sConfigInjected);    /**Configures for the selected ADC injected channel its corresponding rank in the sequencer and its sample time      */    sConfigInjected.InjectedChannel = ADC_CHANNEL_11;    HAL_ADCEx_InjectedConfigChannel(&hadc2, &sConfigInjected);    /**Configures for the selected ADC injected channel its corresponding rank in the sequencer and its sample time      */    sConfigInjected.InjectedChannel = ADC_CHANNEL_4;    sConfigInjected.InjectedRank = 1;    HAL_ADCEx_InjectedConfigChannel(&hadc2, &sConfigInjected);    /**Configure for the selected ADC regular channel its corresponding rank in the sequencer and its sample time.      */    sConfig.Channel = ADC_CHANNEL_6;    sConfig.Rank = 1;    sConfig.SamplingTime = ADC_SAMPLETIME_144CYCLES;    HAL_ADC_ConfigChannel(&hadc2, &sConfig);}
开发者ID:pacabot,项目名称:zhonx3,代码行数:51,


示例8: readAdcChannel

int readAdcChannel(uint32_t channel){	int rtn = -1;	  HAL_ADC_Init(&hadc);  ADC_ChannelConfTypeDef sConfig;		static uint32_t channels[3] = {ADC_CHANNEL_7, ADC_CHANNEL_9, ADC_CHANNEL_9};	for (int idx = 0; idx < 3; idx++)	{		sConfig.Channel = channels[idx];		if (channel == sConfig.Channel)		{			sConfig.Rank = ADC_RANK_CHANNEL_NUMBER;		}		else		{			sConfig.Rank = ADC_RANK_NONE;		}		HAL_ADC_ConfigChannel(&hadc, &sConfig);	}		int adcRead[3] = {-1, -1, -1};	for (int i=0; i<3; i++)	{		if (HAL_ADC_Start(&hadc) == HAL_OK)		{			if (HAL_ADC_PollForConversion(&hadc, 1000) == HAL_OK)			{				adcRead[i] = (int)HAL_ADC_GetValue(&hadc);				HAL_ADC_Stop(&hadc);			}			else			{				HAL_ADC_Stop(&hadc);				break;			}		}		else		{			break;		}	}		if ((adcRead[0] >= 0) && (adcRead[1] >= 0) && (adcRead[2] >= 0))	{		rtn = (adcRead[0] + adcRead[1] + adcRead[2])/3;	}	return rtn;}
开发者ID:kqzca,项目名称:prj,代码行数:50,


示例9: CustomHID_Init

/**  * @brief  CustomHID_Init  *         Initializes the CUSTOM HID media low layer  * @param  None  * @retval Result of the opeartion: USBD_OK if all operations are OK else USBD_FAIL  */static int8_t CustomHID_Init(void){  GPIO_InitTypeDef   GPIO_InitStructure;  ADC_ChannelConfTypeDef sConfig;    /* Configure the ADC peripheral */  AdcHandle.Instance = ADCx;    /* Configure the ADC clock */  __HAL_RCC_ADC1_CONFIG(RCC_ADC1PCLK2_DIV6);    AdcHandle.Init.ScanConvMode = DISABLE;  AdcHandle.Init.ContinuousConvMode = ENABLE;  AdcHandle.Init.DiscontinuousConvMode = DISABLE;  AdcHandle.Init.NbrOfDiscConversion = 0;  AdcHandle.Init.ExternalTrigConv = ADC_SOFTWARE_START;  AdcHandle.Init.DataAlign = ADC_DATAALIGN_RIGHT;  AdcHandle.Init.NbrOfConversion = 1;  HAL_ADC_Init(&AdcHandle);     /* Configure ADC regular channel */    sConfig.Channel = ADCx_CHANNEL;  sConfig.Rank = 1;  sConfig.SamplingTime = ADC_SAMPLETIME_7CYCLES_5;  HAL_ADC_ConfigChannel(&AdcHandle, &sConfig);  /* Start the conversion process and enable interrupt */    HAL_ADC_Start_DMA(&AdcHandle, (uint32_t*)&ADCConvertedValue, 1);      /* Configure LED1, LED2, LED3 and LED4 */  BSP_LED_Init(LED1);  BSP_LED_Init(LED2);  BSP_LED_Init(LED3);  BSP_LED_Init(LED4);    /* Enable GPIOA clock */  __GPIOA_CLK_ENABLE();    /* Configure PA2 pin as input floating */  GPIO_InitStructure.Mode = GPIO_MODE_IT_RISING_FALLING;  GPIO_InitStructure.Pull = GPIO_NOPULL;  GPIO_InitStructure.Pin = GPIO_PIN_2;  HAL_GPIO_Init(GPIOA, &GPIO_InitStructure);  /* Enable and set EXTI2_TSC Interrupt to the lowest priority */  HAL_NVIC_SetPriority(EXTI2_TSC_IRQn, 3, 0);  HAL_NVIC_EnableIRQ(EXTI2_TSC_IRQn);    return (0);}
开发者ID:afconsult-south,项目名称:dragonfly-fcb,代码行数:56,


示例10: init_adc1

void init_adc1(void){	GPIO_InitTypeDef GPIO_InitStruct;	//Enable peripheral and GPIO clocks	__ADC1_CLK_ENABLE();	__GPIOA_CLK_ENABLE();	//AN0 to AN7 are on PA0 to PA7	//AN0 & 1: 1/10kHz LPF	//AN3 & 3: 1/10kHz LPF, 1<G<10	//AN4 & 5: Buffered	//AN6 & 7: Resistive dividers, buffered	//Config inputs:	GPIO_InitStruct.Pin = GPIO_PIN_0 | GPIO_PIN_1 | GPIO_PIN_2 | GPIO_PIN_3			| GPIO_PIN_4 | GPIO_PIN_5 | GPIO_PIN_6 | GPIO_PIN_7;	GPIO_InitStruct.Mode = GPIO_MODE_ANALOG;	GPIO_InitStruct.Pull = GPIO_NOPULL;	HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);	//ADC1 config: (ToDo: test & optimize, use DMA and multiple conversions)	//===========	//Configure the global features of the ADC (Clock, Resolution, Data Alignment and number of conversion)	hadc1.Instance = ADC1;	hadc1.Init.ClockPrescaler = ADC_CLOCKPRESCALER_PCLK_DIV2;	hadc1.Init.Resolution = ADC_RESOLUTION12b;	hadc1.Init.ScanConvMode = DISABLE;	hadc1.Init.ContinuousConvMode = DISABLE;	hadc1.Init.DiscontinuousConvMode = DISABLE;	hadc1.Init.NbrOfDiscConversion = 1;	hadc1.Init.ExternalTrigConvEdge = ADC_EXTERNALTRIGCONVEDGE_NONE;	hadc1.Init.DataAlign = ADC_DATAALIGN_RIGHT;	hadc1.Init.NbrOfConversion = 1;	hadc1.Init.DMAContinuousRequests = DISABLE;	hadc1.Init.EOCSelection = EOC_SINGLE_CONV;	HAL_ADC_Init(&hadc1);	//Configure for the selected ADC regular channel its corresponding rank in the sequencer and its sample time.	sConfig.Channel = ADC_CHANNEL_0;	sConfig.Rank = 1;	sConfig.SamplingTime = ADC_SAMPLETIME_3CYCLES;	HAL_ADC_ConfigChannel(&hadc1, &sConfig);	//Configure the ADC multi-mode	multimode.Mode = ADC_MODE_INDEPENDENT;	multimode.TwoSamplingDelay = ADC_TWOSAMPLINGDELAY_5CYCLES;	HAL_ADCEx_MultiModeConfigChannel(&hadc1, &multimode);}
开发者ID:JFDuval,项目名称:FlexSEA,代码行数:50,


示例11: uni_adc_singleSample

//---------------------------------------------------------------------------------//---------------------------------------------------------------------------------//// single sample//uint16 uni_adc_singleSample(void){	uint16 val16 = 0;  ADC_ChannelConfTypeDef sConfig;  //sConfig.Channel = ADC_CHANNEL_VREFINT;  sConfig.Channel = ADC_CHANNEL_1;	sConfig.SamplingTime = ADC_SAMPLETIME_15CYCLES;	sConfig.Rank = 1;  HAL_ADC_ConfigChannel(&hadc1, &sConfig);	if(HAL_ADC_Start(&hadc1) != HAL_OK) return 0;	HAL_ADC_PollForConversion(&hadc1, 10); // timeout	val16 = HAL_ADC_GetValue(&hadc1);	HAL_ADC_Stop(&hadc1);	return val16;}
开发者ID:craig-unilectric,项目名称:pdp,代码行数:20,


示例12: BSP_JOY_Init

/**  * @brief  Configures joystick available on adafruit 1.8" TFT shield  *         managed through ADC to detect motion.  * @param  None  * @retval Joystickstatus (0=> success, 1=> fail)  */uint8_t BSP_JOY_Init(void){    uint8_t status = 1;    ADCx_Init();    /* Select the ADC Channel to be converted */    sConfig.Channel = NUCLEO_ADCx_CHANNEL;    sConfig.SamplingTime = ADC_SAMPLETIME_3CYCLES;    sConfig.Rank = 1;    status = HAL_ADC_ConfigChannel(&hnucleo_Adc, &sConfig);    /* Return Joystick initialization status */    return status;}
开发者ID:birdyou,项目名称:Balance_Car_STM32,代码行数:21,


示例13: BSP_JOY_Init

/**  * @brief  Configures joystick available on adafruit 1.8" TFT shield   *         managed through ADC to detect motion.  * @param  None  * @retval Joystickstatus (0=> success, 1=> fail)   */uint8_t BSP_JOY_Init(void){  uint8_t status = 1;     ADCx_Init();     /* Start ADC calibration */  HAL_ADCEx_Calibration_Start(&hnucleo_Adc, ADC_SINGLE_ENDED);    /* Select Channel 0 to be converted */  sConfig.Channel = ADC_CHANNEL_8;      status = HAL_ADC_ConfigChannel(&hnucleo_Adc, &sConfig);    /* Return Joystick initialization status */  return status;}
开发者ID:S4mw1s3,项目名称:Nucleo32,代码行数:22,


示例14: ADC_Config

/**  * @brief  ADC configuration  * @param  None  * @retval None  */static void ADC_Config(void){  ADC_ChannelConfTypeDef sConfig;  /* Configuration of ADCx init structure: ADC parameters and regular group */  AdcHandle.Instance = ADCx;  AdcHandle.Init.ClockPrescaler = ADC_CLOCKPRESCALER_PCLK_DIV4;  AdcHandle.Init.Resolution = ADC_RESOLUTION12b;  AdcHandle.Init.DataAlign = ADC_DATAALIGN_RIGHT;  AdcHandle.Init.ScanConvMode = DISABLE;                       /* Sequencer disabled (ADC conversion on only 1 channel: channel set on rank 1) */  AdcHandle.Init.EOCSelection = EOC_SINGLE_CONV;  AdcHandle.Init.LowPowerAutoWait = DISABLE;  AdcHandle.Init.ContinuousConvMode = ENABLE;                  /* Continuous mode to have conversions kept running after 1st conversion trig */  AdcHandle.Init.NbrOfConversion = 1;                          /* Parameter discarded because sequencer is disabled */  AdcHandle.Init.DiscontinuousConvMode = DISABLE;              /* Parameter discarded because sequencer is disabled */  AdcHandle.Init.NbrOfDiscConversion = 1;                      /* Parameter discarded because sequencer is disabled */  AdcHandle.Init.ExternalTrigConv = ADC_SOFTWARE_START;        /* Software start to trig the 1st conversion manually, without external event */  AdcHandle.Init.ExternalTrigConvEdge = ADC_EXTERNALTRIGCONVEDGE_NONE;  AdcHandle.Init.DMAContinuousRequests = DISABLE;  AdcHandle.Init.Overrun = OVR_DATA_OVERWRITTEN;    if (HAL_ADC_Init(&AdcHandle) != HAL_OK)  {    /* ADC Initiliazation Error */    Error_Handler();  }   /* Configuration of channel on ADCx regular group on rank 1 */  /* Differential mode: only the ADC channel positive has to be configured.   */  /*                    The negative input is configured automatically        */  /* Note: Considering IT occuring after each ADC conversion (ADC IT          */  /*       enabled), select sampling time and ADC clock with sufficient       */  /*       duration to not create an overhead situation in IRQHandler.        */  sConfig.Channel = ADCx_CHANNEL_DIFF_HIGH;  sConfig.Rank = ADC_REGULAR_RANK_1;  sConfig.SamplingTime = ADC_SAMPLETIME_181CYCLES_5;  sConfig.SingleDiff = ADC_DIFFERENTIAL_ENDED;  sConfig.OffsetNumber = ADC_OFFSET_NONE;  sConfig.Offset = 0;    if (HAL_ADC_ConfigChannel(&AdcHandle, &sConfig) != HAL_OK)  {    /* Channel Configuration Error */    Error_Handler();  }}
开发者ID:taegwonkim,项目名称:STM32Cube,代码行数:52,


示例15: AdcMcuRead

uint16_t AdcMcuRead( Adc_t *obj, uint8_t channel ){    ADC_HandleTypeDef *hadc;    ADC_ChannelConfTypeDef adcConf;    uint16_t adcData = 0;    hadc = &obj->Adc;    /* Enable HSI */    __HAL_RCC_HSI_ENABLE();    /* Wait till HSI is ready */    while(__HAL_RCC_GET_FLAG(RCC_FLAG_HSIRDY) == RESET)    {    }    __HAL_RCC_ADC1_CLK_ENABLE( );    adcConf.Channel = channel;    adcConf.Rank = ADC_REGULAR_RANK_1;    adcConf.SamplingTime = ADC_SAMPLETIME_192CYCLES;    HAL_ADC_ConfigChannel( hadc, &adcConf);    /* Enable ADC1 */    __HAL_ADC_ENABLE( hadc) ;    /* Start ADC1 Software Conversion */    HAL_ADC_Start( hadc);    HAL_ADC_PollForConversion( hadc, HAL_MAX_DELAY );    adcData = HAL_ADC_GetValue ( hadc);    __HAL_ADC_DISABLE( hadc) ;    if( ( adcConf.Channel == ADC_CHANNEL_TEMPSENSOR ) || ( adcConf.Channel == ADC_CHANNEL_VREFINT ) )    {        HAL_ADC_DeInit( hadc );    }    __HAL_RCC_ADC1_CLK_DISABLE( );    /* Disable HSI */    __HAL_RCC_HSI_DISABLE();    return adcData;}
开发者ID:CommunicationSolutions,项目名称:LoRaMac-node,代码行数:47,


示例16: MX_ADC1_Init

/* ADC1 init function */void MX_ADC1_Init(void){  ADC_ChannelConfTypeDef sConfig;    /**Common config     */  hadc1.Instance = ADC1;  hadc1.Init.ScanConvMode = ADC_SCAN_ENABLE;  hadc1.Init.ContinuousConvMode = ENABLE;  hadc1.Init.DiscontinuousConvMode = DISABLE;  hadc1.Init.ExternalTrigConv = ADC_SOFTWARE_START;  hadc1.Init.DataAlign = ADC_DATAALIGN_RIGHT;  hadc1.Init.NbrOfConversion = 6;  HAL_ADC_Init(&hadc1);    /**Configure Regular Channel     */  sConfig.Channel = ADC_CHANNEL_11;  sConfig.Rank = 1;  sConfig.SamplingTime = ADC_SAMPLETIME_7CYCLES_5;  HAL_ADC_ConfigChannel(&hadc1, &sConfig);    /**Configure Regular Channel    */  sConfig.Channel = ADC_CHANNEL_10;  sConfig.Rank = 2;  HAL_ADC_ConfigChannel(&hadc1, &sConfig);    /**Configure Regular Channel    */  sConfig.Channel = ADC_CHANNEL_9;  sConfig.Rank = 3;  HAL_ADC_ConfigChannel(&hadc1, &sConfig);    /**Configure Regular Channel    */  sConfig.Channel = ADC_CHANNEL_6;  sConfig.Rank = 4;  HAL_ADC_ConfigChannel(&hadc1, &sConfig);    /**Configure Regular Channel    */  sConfig.Channel = ADC_CHANNEL_8;  sConfig.Rank = 5;  HAL_ADC_ConfigChannel(&hadc1, &sConfig);    /**Configure Regular Channel    */  sConfig.Channel = ADC_CHANNEL_7;  sConfig.Rank = 6;  HAL_ADC_ConfigChannel(&hadc1, &sConfig);}
开发者ID:marek848,项目名称:Minotaur2_New,代码行数:55,


示例17: ADC_Config

/**  * @brief  ADC configuration  * @param  None  * @retval None  */static void ADC_Config(void){  ADC_ChannelConfTypeDef   sConfig;    /* Configuration of ADCx init structure: ADC parameters and regular group */  AdcHandle.Instance                   = ADCx;  AdcHandle.Init.ClockPrescaler        = ADC_CLOCK_SYNC_PCLK_DIV4;  AdcHandle.Init.Resolution            = ADC_RESOLUTION_12B;  AdcHandle.Init.DataAlign             = ADC_DATAALIGN_RIGHT;  AdcHandle.Init.ScanConvMode          = ADC_SCAN_DIRECTION_FORWARD;    /* Sequencer will convert the number of channels configured below, successively from the lowest to the highest channel number */  AdcHandle.Init.EOCSelection          = ADC_EOC_SINGLE_CONV;#if defined(ADC_LOWPOWER)  AdcHandle.Init.LowPowerAutoWait      = ENABLE;                        /* Enable the dynamic low power Auto Delay: new conversion start only when the previous conversion (for regular group) or previous sequence (for injected group) has been treated by user software. */  AdcHandle.Init.LowPowerAutoPowerOff  = ENABLE;                        /* Enable the auto-off mode: the ADC automatically powers-off after a conversion and automatically wakes-up when a new conversion is triggered (with startup time between trigger and start of sampling). */#else  AdcHandle.Init.LowPowerAutoWait      = DISABLE;  AdcHandle.Init.LowPowerAutoPowerOff  = DISABLE;#endif  AdcHandle.Init.ContinuousConvMode    = DISABLE;                       /* Continuous mode disabled to have only 1 conversion at each conversion trig */  AdcHandle.Init.DiscontinuousConvMode = DISABLE;                       /* Parameter discarded because sequencer is disabled */  AdcHandle.Init.ExternalTrigConv      = ADC_EXTERNALTRIGCONV_Tx_TRGO;  /* Trig of conversion start done by external event */  AdcHandle.Init.ExternalTrigConvEdge  = ADC_EXTERNALTRIGCONVEDGE_RISING;  AdcHandle.Init.DMAContinuousRequests = ENABLE;  AdcHandle.Init.Overrun               = ADC_OVR_DATA_PRESERVED;            /* Overrun set to data preserved to trig overrun event as an error in this exemple */  if (HAL_ADC_Init(&AdcHandle) != HAL_OK)  {    /* ADC initialization error */    Error_Handler();  }  /* Configuration of channel on ADCx regular group on sequencer rank 1 */  /* Note: Considering IT occurring after each ADC conversion (ADC IT         */  /*       enabled), select sampling time and ADC clock with sufficient       */  /*       duration to not create an overhead situation in IRQHandler.        */  sConfig.Channel      = ADCx_CHANNELa;  sConfig.Rank         = ADC_RANK_CHANNEL_NUMBER;  sConfig.SamplingTime = ADC_SAMPLETIME_41CYCLES_5;  if (HAL_ADC_ConfigChannel(&AdcHandle, &sConfig) != HAL_OK)  {    /* Channel Configuration Error */    Error_Handler();  }}
开发者ID:jmoyerman,项目名称:stm32f0_cube,代码行数:51,


示例18: TM_ADC_Read

uint16_t TM_ADC_Read(ADC_TypeDef* ADCx, TM_ADC_Channel_t channel) {	ADC_ChannelConfTypeDef sConfig;		/* Configure ADC regular channel */  	sConfig.Channel = (uint8_t) channel;	sConfig.Rank = 1;#if defined(STM32F0xx) || defined(STM32F1xx)	sConfig.SamplingTime = ADC_SAMPLETIME_13CYCLES_5;#else	sConfig.SamplingTime = ADC_SAMPLETIME_15CYCLES;	sConfig.Offset = 0;#endif	/* Set handle */	AdcHandle.Instance = ADCx;		/* Return zero */	if (HAL_ADC_ConfigChannel(&AdcHandle, &sConfig) != HAL_OK) {		return 0;	}	/* Start conversion */  	if (HAL_ADC_Start(&AdcHandle) != HAL_OK) {		return 0;	}#if defined(STM32F0xx)	/* Poll for end */	if (HAL_ADC_PollForConversion(&AdcHandle, 10) == HAL_OK) {		/* Get the converted value of regular channel */		return HAL_ADC_GetValue(&AdcHandle);	}#else	/* Poll for end */	HAL_ADC_PollForConversion(&AdcHandle, 10);	/* Check if the continous conversion of regular channel is finished */	if (HAL_ADC_GetState(&AdcHandle) == HAL_ADC_STATE_EOC_REG) {		/* Get the converted value of regular channel */		return HAL_ADC_GetValue(&AdcHandle);	}#endif		/* Return zero */	return 0;}
开发者ID:wpawel74,项目名称:STM32_LIBRARIES,代码行数:46,


示例19: BSP_JOY_Init

/**  * @brief  Configures joystick available on adafruit 1.8" TFT shield   *         managed through ADC to detect motion.  * @retval Joystickstatus (0=> success, 1=> fail)   */uint8_t BSP_JOY_Init(void){  if (ADCx_Init() != HAL_OK)  {    return (uint8_t) HAL_ERROR;   }  /* Select Channel 15 to be converted */  hnucleo_AdcChannelConfig.Channel       = ADC_CHANNEL_15;  hnucleo_AdcChannelConfig.SamplingTime  = ADC_SAMPLETIME_24CYCLES_5;  hnucleo_AdcChannelConfig.Rank          = 1;  hnucleo_AdcChannelConfig.SingleDiff    = ADC_SINGLE_ENDED;  hnucleo_AdcChannelConfig.OffsetNumber  = ADC_OFFSET_NONE;    /* Return Joystick initialization status */  return (uint8_t) HAL_ADC_ConfigChannel(&hnucleo_Adc, &hnucleo_AdcChannelConfig);}
开发者ID:LedgerHQ,项目名称:blue-nonsecure-firmware,代码行数:22,


示例20: HAL_ADC_ConfigChannel

float STM32AdcChannel::GetVoltage (){    float result = 0;    HAL_ADC_ConfigChannel (adc.adcHandle, &channelConfig);    HAL_Delay (1);    HAL_ADC_Start (adc.adcHandle);    HAL_ADC_PollForConversion (adc.adcHandle, 10);    if (HAL_ADC_GetState (adc.adcHandle) == HAL_ADC_STATE_EOC_REG)    {        result = HAL_ADC_GetValue (adc.adcHandle) * scaleFactor;    }    return result;}
开发者ID:QuantumDeveloper,项目名称:AvalonStudio,代码行数:18,


示例21: adc_config_channel

STATIC void adc_config_channel(ADC_HandleTypeDef *adc_handle, uint32_t channel) {    ADC_ChannelConfTypeDef sConfig;    sConfig.Channel = channel;    sConfig.Rank = 1;#if defined(STM32F4) || defined(STM32F7)    sConfig.SamplingTime = ADC_SAMPLETIME_15CYCLES;#elif defined(STM32L4)    sConfig.SamplingTime = ADC_SAMPLETIME_12CYCLES_5;    sConfig.SingleDiff = ADC_SINGLE_ENDED;    sConfig.OffsetNumber = ADC_OFFSET_NONE;#else    #error Unsupported processor#endif    sConfig.Offset = 0;    HAL_ADC_ConfigChannel(adc_handle, &sConfig);}
开发者ID:c-goosen,项目名称:micropython,代码行数:18,


示例22: adc_config_channel

STATIC void adc_config_channel(ADC_HandleTypeDef *adc_handle, uint32_t channel) {    ADC_ChannelConfTypeDef sConfig;    sConfig.Channel = channel;    sConfig.Rank = 1;#if defined(STM32F0)    sConfig.SamplingTime = ADC_SAMPLETIME_71CYCLES_5;#elif defined(STM32F4) || defined(STM32F7)    sConfig.SamplingTime = ADC_SAMPLETIME_15CYCLES;#elif defined(STM32H7)    if (channel == ADC_CHANNEL_VREFINT        || channel == ADC_CHANNEL_TEMPSENSOR        || channel == ADC_CHANNEL_VBAT) {        sConfig.SamplingTime = ADC_SAMPLETIME_387CYCLES_5;    } else {        sConfig.SamplingTime = ADC_SAMPLETIME_8CYCLES_5;    }    sConfig.SingleDiff = ADC_SINGLE_ENDED;    sConfig.OffsetNumber = ADC_OFFSET_NONE;    sConfig.OffsetRightShift = DISABLE;    sConfig.OffsetSignedSaturation = DISABLE;#elif defined(STM32L4)    if (channel == ADC_CHANNEL_VREFINT        || channel == ADC_CHANNEL_TEMPSENSOR        || channel == ADC_CHANNEL_VBAT) {        sConfig.SamplingTime = ADC_SAMPLETIME_247CYCLES_5;    } else {        sConfig.SamplingTime = ADC_SAMPLETIME_12CYCLES_5;    }    sConfig.SingleDiff = ADC_SINGLE_ENDED;    sConfig.OffsetNumber = ADC_OFFSET_NONE;    sConfig.Offset = 0;#else    #error Unsupported processor#endif    #if defined(STM32F0)    // On the STM32F0 we must select only one channel at a time to sample, so clear all    // channels before calling HAL_ADC_ConfigChannel, which will select the desired one.    adc_handle->Instance->CHSELR = 0;    #endif    HAL_ADC_ConfigChannel(adc_handle, &sConfig);}
开发者ID:DanielO,项目名称:micropython,代码行数:44,


示例23: BSP_ADC_Init

void BSP_ADC_Init(void) {	ADC_ChannelConfTypeDef ChannelConfStruct;	GPIO_InitTypeDef GPIO_InitStruct;	EXP_BOARD_POT_PIN_CLK_ENABLE()	;	EXP_BOARD_POT_ADC_CLK_ENABLE()	;	ADC_HandleStruct.Instance = ADC1;	ADC_HandleStruct.Init.ClockPrescaler = ADC_CLOCK_SYNC_PCLK_DIV4;	ADC_HandleStruct.Init.Resolution = ADC_RESOLUTION_12B;	ADC_HandleStruct.Init.DataAlign = ADC_DATAALIGN_RIGHT;	ADC_HandleStruct.Init.ScanConvMode = DISABLE;	ADC_HandleStruct.Init.EOCSelection = ADC_EOC_SINGLE_CONV;	ADC_HandleStruct.Init.ContinuousConvMode = ENABLE;	ADC_HandleStruct.Init.NbrOfConversion = 1;	ADC_HandleStruct.Init.DiscontinuousConvMode = DISABLE;	ADC_HandleStruct.Init.ExternalTrigConv = ADC_SOFTWARE_START;	ADC_HandleStruct.Init.DMAContinuousRequests = DISABLE;	ADC_HandleStruct.Init.NbrOfDiscConversion = 0;	ADC_HandleStruct.Init.ExternalTrigConvEdge =	ADC_EXTERNALTRIGCONVEDGE_NONE;	ADC_HandleStruct.Init.EOCSelection = DISABLE;	GPIO_InitStruct.Pin = EXP_BOARD_POT_PIN;	GPIO_InitStruct.Mode = GPIO_MODE_ANALOG;	GPIO_InitStruct.Pull = GPIO_NOPULL;	GPIO_InitStruct.Speed = GPIO_SPEED_FAST;	HAL_GPIO_Init(EXP_BOARD_POT_PORT, &GPIO_InitStruct);	ChannelConfStruct.Channel = EXP_BOARD_POT_CHANNEL;	ChannelConfStruct.Offset = 0;	ChannelConfStruct.Rank = 1;	ChannelConfStruct.SamplingTime = ADC_SAMPLETIME_15CYCLES;	HAL_ADC_Init(&ADC_HandleStruct);	HAL_ADC_ConfigChannel(&ADC_HandleStruct, &ChannelConfStruct);	HAL_ADC_Start(&ADC_HandleStruct);}
开发者ID:juanmanuellerda,项目名称:TPBlinky,代码行数:44,


示例24: initialize_Temp

/*---------------------------------------------------------------------------- *      Initialize the GPIO associated with the LED *---------------------------------------------------------------------------*/	void initialize_Temp (void)	{				ADCInit.ClockPrescaler = ADC_CLOCK_SYNC_PCLK_DIV4;		ADCInit.ContinuousConvMode = DISABLE;		ADCInit.DataAlign = ADC_DATAALIGN_RIGHT;		ADCInit.DiscontinuousConvMode = DISABLE;		ADCInit.DMAContinuousRequests = DISABLE;		ADCInit.EOCSelection = ADC_EOC_SINGLE_CONV;		ADCInit.ExternalTrigConv = ADC_SOFTWARE_START;		ADCInit.ExternalTrigConvEdge = ADC_EXTERNALTRIGCONVEDGE_NONE;		ADCInit.NbrOfConversion= 1;		ADCInit.NbrOfDiscConversion = 0;		ADCInit.Resolution = ADC_RESOLUTION_12B;		ADCInit.ScanConvMode = DISABLE;		ADCHandleinit.ErrorCode = HAL_ADC_ERROR_NONE;				ADCHandleinit.Init.ClockPrescaler = ADCInit.ClockPrescaler;		ADCHandleinit.Init.ContinuousConvMode = ADCInit.ContinuousConvMode;		ADCHandleinit.Init.DataAlign = ADCInit.DataAlign;		ADCHandleinit.Init.DiscontinuousConvMode = ADCInit.DiscontinuousConvMode;		ADCHandleinit.Init.DMAContinuousRequests = ADCInit.DMAContinuousRequests;		ADCHandleinit.Init.EOCSelection = ADCInit.EOCSelection;		ADCHandleinit.Init.ExternalTrigConv = ADCInit.ExternalTrigConv;		ADCHandleinit.Init.ExternalTrigConvEdge = ADCInit.ExternalTrigConvEdge;		ADCHandleinit.Init.NbrOfConversion = ADCInit.NbrOfConversion;		ADCHandleinit.Init.NbrOfDiscConversion = ADCInit.NbrOfDiscConversion;		ADCHandleinit.Init.Resolution = ADCInit.Resolution;		ADCHandleinit.Init.ScanConvMode = ADCInit.ScanConvMode;				ADCHandleinit.Instance = ADC1;		ADCHandleinit.Lock = HAL_UNLOCKED;		ADCHandleinit.NbrOfCurrentConversionRank = 1;				HAL_ADC_Init(&ADCHandleinit);		__HAL_RCC_ADC1_CLK_ENABLE();						channelConfig.Channel = ADC_CHANNEL_16;		channelConfig.Offset = 0;		channelConfig.Rank = 1;		channelConfig.SamplingTime = ADC_SAMPLETIME_480CYCLES;		HAL_ADC_ConfigChannel(&ADCHandleinit, &channelConfig);}
开发者ID:Tedderic,项目名称:MicroP-Lab-4,代码行数:47,


示例25: adc_init_single

void adc_init_single(pyb_obj_adc_t *adc_obj) {    if (!IS_ADC_CHANNEL(adc_obj->channel)) {        return;    }    if (adc_obj->channel < ADC_NUM_GPIO_CHANNELS) {      // Channels 0-16 correspond to real pins. Configure the GPIO pin in      // ADC mode.      const pin_obj_t *pin = pin_adc1[adc_obj->channel];      GPIO_InitTypeDef GPIO_InitStructure;      GPIO_InitStructure.Pin = pin->pin_mask;      GPIO_InitStructure.Mode = GPIO_MODE_ANALOG;      GPIO_InitStructure.Pull = GPIO_NOPULL;      HAL_GPIO_Init(pin->gpio, &GPIO_InitStructure);    }    ADCx_CLK_ENABLE();    ADC_HandleTypeDef *adcHandle = &adc_obj->handle;    adcHandle->Instance                   = ADCx;    adcHandle->Init.ClockPrescaler        = ADC_CLOCKPRESCALER_PCLK_DIV2;    adcHandle->Init.Resolution            = ADC_RESOLUTION12b;    adcHandle->Init.ScanConvMode          = DISABLE;    adcHandle->Init.ContinuousConvMode    = DISABLE;    adcHandle->Init.DiscontinuousConvMode = DISABLE;    adcHandle->Init.NbrOfDiscConversion   = 0;    adcHandle->Init.ExternalTrigConvEdge  = ADC_EXTERNALTRIGCONVEDGE_NONE;    adcHandle->Init.ExternalTrigConv      = ADC_EXTERNALTRIGCONV_T1_CC1;    adcHandle->Init.DataAlign             = ADC_DATAALIGN_RIGHT;    adcHandle->Init.NbrOfConversion       = 1;    adcHandle->Init.DMAContinuousRequests = DISABLE;    adcHandle->Init.EOCSelection          = DISABLE;    HAL_ADC_Init(adcHandle);    ADC_ChannelConfTypeDef sConfig;    sConfig.Channel = adc_obj->channel;    sConfig.Rank = 1;    sConfig.SamplingTime = ADC_SAMPLETIME_15CYCLES;    sConfig.Offset = 0;    HAL_ADC_ConfigChannel(adcHandle, &sConfig);}
开发者ID:HackDads,项目名称:micropython,代码行数:44,


示例26: adc_init

void adc_init(){	HAL_Status status = HAL_ERROR;	ADC_InitParam initParam;	initParam.delay = ADC_FIRST_DELAY;	initParam.freq = ADC_FEQ;#ifdef ADC_TEST_FIFO	initParam.mode = ADC_BURST_CONV;#else	initParam.mode = ADC_CONTI_CONV;#endif	status = HAL_ADC_Init(&initParam);	if (status != HAL_OK) {		printf("ADC init error %d/n", status);		return;	}#ifdef ADC_IT_MODE#ifdef ADC_TEST_FIFO	status = HAL_ADC_FifoConfigChannel(ADC_INCH, ADC_SELECT_ENABLE);#else	status = HAL_ADC_ConfigChannel(ADC_INCH, ADC_SELECT_ENABLE, ADC_IRQ_MODE, 0, 0);#endif	if (status != HAL_OK) {		printf("ADC config error %d/n", status);		return;	}	status = HAL_ADC_EnableIRQCallback(ADC_INCH, adc_callback, NULL);	if (status != HAL_OK) {		printf("ADC IRQ Enable error %d/n", status);		return;	}	status = HAL_ADC_Start_Conv_IT();	if (status != HAL_OK) {		printf("ADC it mode start error %d/n", status);		return;	}#endif}
开发者ID:diguokaituozhe,项目名称:XR871,代码行数:42,


示例27: ADC_Config

/**  * @brief  ADC configuration  * @param  None  * @retval None  */static void ADC_Config(void){  ADC_ChannelConfTypeDef sConfig;  /* ADC Initialization */  AdcHandle.Instance          = ADCx;    AdcHandle.Init.ClockPrescaler        = ADC_CLOCK_SYNC_PCLK_DIV4;  AdcHandle.Init.Resolution            = ADC_RESOLUTION12b;  AdcHandle.Init.DataAlign             = ADC_DATAALIGN_RIGHT;  AdcHandle.Init.ScanConvMode          = DISABLE;                       /* Sequencer disabled (ADC conversion on only 1 channel: channel set on rank 1) */  AdcHandle.Init.EOCSelection          = EOC_SINGLE_CONV;  AdcHandle.Init.LowPowerAutoWait      = DISABLE;  AdcHandle.Init.ContinuousConvMode    = DISABLE;                       /* Continuous mode disabled to have only 1 conversion at each conversion trig */  AdcHandle.Init.NbrOfConversion       = 1;                             /* Parameter discarded because sequencer is disabled */  AdcHandle.Init.DiscontinuousConvMode = DISABLE;                       /* Parameter discarded because sequencer is disabled */  AdcHandle.Init.NbrOfDiscConversion   = 1;                             /* Parameter discarded because sequencer is disabled */  AdcHandle.Init.ExternalTrigConv = ADC_EXTERNALTRIGCONV_T2_TRGO;       /* Conversion start trigged at each external event */  AdcHandle.Init.ExternalTrigConvEdge = ADC_EXTERNALTRIGCONVEDGE_RISING;  AdcHandle.Init.DMAContinuousRequests = ENABLE;  AdcHandle.Init.Overrun               = OVR_DATA_OVERWRITTEN;  if (HAL_ADC_Init(&AdcHandle) != HAL_OK)  {    /* ADC initialization Error */    Error_Handler();  }  /* Configure ADC regular channel */  sConfig.Channel      = ADCx_CHANNEL;  sConfig.Rank         = ADC_REGULAR_RANK_1;  sConfig.SamplingTime = ADC_SAMPLETIME_19CYCLES_5;  sConfig.SingleDiff   = ADC_SINGLE_ENDED;  sConfig.OffsetNumber = ADC_OFFSET_NONE;  sConfig.Offset = 0;  if (HAL_ADC_ConfigChannel(&AdcHandle, &sConfig) != HAL_OK)  {    /* Channel Configuration Error */    Error_Handler();  }}
开发者ID:eleciawhite,项目名称:STM32Cube,代码行数:47,


示例28: stm32f4_adc_configure_channel

/** * Configure an ADC channel on the STM32F4 ADC. * * @param dev The ADC device to configure * @param cnum The channel on the ADC device to configure * @param cfgdata An opaque pointer to channel config, expected to be *                a ADC_ChannelConfTypeDef * * @return 0 on success, non-zero on failure. */static intstm32f4_adc_configure_channel(struct adc_dev *dev, uint8_t cnum,        void *cfgdata){    int rc;    ADC_HandleTypeDef *hadc;    struct stm32f4_adc_dev_cfg *cfg;    struct adc_chan_config *chan_cfg;    GPIO_InitTypeDef gpio_td;    rc = OS_EINVAL;    if (dev == NULL && !IS_ADC_CHANNEL(cnum)) {        goto err;    }    cfg  = (struct stm32f4_adc_dev_cfg *)dev->ad_dev.od_init_arg;    hadc = cfg->sac_adc_handle;    chan_cfg = &((struct adc_chan_config *)cfg->sac_chans)[cnum];    cfgdata = (ADC_ChannelConfTypeDef *)cfgdata;    if ((HAL_ADC_ConfigChannel(hadc, cfgdata)) != HAL_OK) {        goto err;    }    dev->ad_chans[cnum].c_res = chan_cfg->c_res;    dev->ad_chans[cnum].c_refmv = chan_cfg->c_refmv;    dev->ad_chans[cnum].c_configured = 1;    dev->ad_chans[cnum].c_cnum = cnum;    if (stm32f4_resolve_adc_gpio(hadc, cnum, &gpio_td)) {        goto err;    }    hal_gpio_init_stm(gpio_td.Pin, &gpio_td);    return (OS_OK);err:    return (rc);}
开发者ID:vrahane,项目名称:incubator-mynewt-core,代码行数:51,


示例29: CAM_ADC_init

void CAM_ADC_init(void){	/*	 * Enable ADC clock	 */	__ADC1_CLK_ENABLE();	/* Variables */	ADC_ChannelConfTypeDef sADCConfig;	/*	 * ADC Initialization	 */	AdcHandle.Instance = ADC1;	AdcHandle.Init.ClockPrescaler = ADC_CLOCKPRESCALER_PCLK_DIV2;	AdcHandle.Init.Resolution = ADC_RESOLUTION8b;	AdcHandle.Init.ScanConvMode = ENABLE;	AdcHandle.Init.ContinuousConvMode = ENABLE;	AdcHandle.Init.DiscontinuousConvMode = DISABLE;	AdcHandle.Init.NbrOfDiscConversion = 0;	AdcHandle.Init.ExternalTrigConvEdge = ADC_EXTERNALTRIGCONVEDGE_RISING;	AdcHandle.Init.ExternalTrigConv = ADC_EXTERNALTRIGCONV_T2_TRGO;	AdcHandle.Init.DataAlign = ADC_DATAALIGN_RIGHT;	AdcHandle.Init.NbrOfConversion = 1;	AdcHandle.Init.DMAContinuousRequests = ENABLE;	AdcHandle.Init.EOCSelection = ENABLE;	HAL_ADC_Init(&AdcHandle);	/*	 * Configure channel 0	 */	sADCConfig.Channel = ADC_CHANNEL_0;	sADCConfig.Rank = 1;	sADCConfig.SamplingTime = ADC_SAMPLETIME_3CYCLES;	sADCConfig.Offset = 0;	HAL_ADC_ConfigChannel(&AdcHandle, &sADCConfig);}
开发者ID:gdelazzari,项目名称:STM32-GameBoy-Camera,代码行数:39,


示例30: MX_ADC1_Init

/**  * @brief ADC1 Initialization Function  * @param None  * @retval None  */static void MX_ADC1_Init(void){  /* USER CODE BEGIN ADC1_Init 0 */  /* USER CODE END ADC1_Init 0 */  ADC_ChannelConfTypeDef sConfig = {0};  /* USER CODE BEGIN ADC1_Init 1 */  /* USER CODE END ADC1_Init 1 */  /** Common config   */  hadc1.Instance = ADC1;  hadc1.Init.ScanConvMode = ADC_SCAN_DISABLE;  hadc1.Init.ContinuousConvMode = DISABLE;  hadc1.Init.DiscontinuousConvMode = DISABLE;  hadc1.Init.ExternalTrigConv = ADC_SOFTWARE_START;  hadc1.Init.DataAlign = ADC_DATAALIGN_RIGHT;  hadc1.Init.NbrOfConversion = 1;  if (HAL_ADC_Init(&hadc1) != HAL_OK)  {    Error_Handler();  }  /** Configure Regular Channel   */  sConfig.Channel = ADC_CHANNEL_1;  sConfig.Rank = ADC_REGULAR_RANK_1;  sConfig.SamplingTime = ADC_SAMPLETIME_1CYCLE_5;  if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK)  {    Error_Handler();  }  /* USER CODE BEGIN ADC1_Init 2 */  /* USER CODE END ADC1_Init 2 */}
开发者ID:heyuanjie87,项目名称:rt-thread,代码行数:44,



注:本文中的HAL_ADC_ConfigChannel函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


C++ HAL_ADC_Init函数代码示例
C++ HALDEBUG函数代码示例
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。