Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/firmware/Src/adc.c

    r26 r6  
    3636  */
    3737  hadc1.Instance = ADC1;
    38   hadc1.Init.ClockPrescaler = ADC_CLOCK_SYNC_PCLK_DIV4;
     38  hadc1.Init.ClockPrescaler = LL_ADC_CLOCK_SYNC_PCLK_DIV4;
    3939  hadc1.Init.Resolution = ADC_RESOLUTION_12B;
    4040  hadc1.Init.DataAlign = ADC_DATAALIGN_RIGHT;
    41   hadc1.Init.ScanConvMode = ADC_SCAN_SEQ_FIXED; //More channnels
     41  hadc1.Init.ScanConvMode = ADC_SCAN_ENABLE;
    4242  hadc1.Init.EOCSelection = ADC_EOC_SEQ_CONV;
    4343  hadc1.Init.LowPowerAutoWait = DISABLE;
    4444  hadc1.Init.LowPowerAutoPowerOff = DISABLE;
    4545  hadc1.Init.ContinuousConvMode = ENABLE;
    46   hadc1.Init.NbrOfConversion = 1;
     46  hadc1.Init.NbrOfConversion = 8;
    4747  hadc1.Init.DiscontinuousConvMode = DISABLE;
    4848  hadc1.Init.ExternalTrigConv = ADC_SOFTWARE_START;
    4949  hadc1.Init.ExternalTrigConvEdge = ADC_EXTERNALTRIGCONVEDGE_NONE;
    5050  hadc1.Init.DMAContinuousRequests = ENABLE;
    51   hadc1.Init.Overrun = ADC_OVR_DATA_PRESERVED;
    52   hadc1.Init.SamplingTimeCommon1 = ADC_SAMPLETIME_160CYCLES_5; //bei79,5 ist das gezappelt in der fast voltage eindeutig höher
     51  hadc1.Init.Overrun = ADC_OVR_DATA_OVERWRITTEN;
     52  hadc1.Init.SamplingTimeCommon1 = ADC_SAMPLETIME_160CYCLES_5;
    5353  hadc1.Init.SamplingTimeCommon2 = ADC_SAMPLETIME_160CYCLES_5;
    5454  hadc1.Init.OversamplingMode = ENABLE;
     
    6565  //Messung Common Mode Voltage (Shunt Spannung - gegen Batterie Minus)
    6666  sConfig.Channel = ADC_CHANNEL_0;
    67   sConfig.Rank = ADC_RANK_CHANNEL_NUMBER;
     67  sConfig.Rank = ADC_REGULAR_RANK_1;
    6868  sConfig.SamplingTime = ADC_SAMPLINGTIME_COMMON_1;
    6969  if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK)
     
    7575  //Messung Batteriespannung Plus
    7676  sConfig.Channel = ADC_CHANNEL_1;
     77  sConfig.Rank = ADC_REGULAR_RANK_2;
     78  sConfig.SamplingTime = ADC_SAMPLINGTIME_COMMON_1;
    7779  if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK)
    7880  {
     
    8385  //Messung Neu : Vref
    8486  sConfig.Channel = ADC_CHANNEL_2;
     87  sConfig.Rank = ADC_REGULAR_RANK_3;
     88  sConfig.SamplingTime = ADC_SAMPLINGTIME_COMMON_1;
    8589  if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK)
    8690  {
     
    9094  //Fast current Plus
    9195  sConfig.Channel = ADC_CHANNEL_3;
     96  sConfig.Rank = ADC_REGULAR_RANK_4;
     97  sConfig.SamplingTime = ADC_SAMPLINGTIME_COMMON_1;
    9298  if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK)
    9399  {
     
    97103  //Fast current Minus
    98104  sConfig.Channel = ADC_CHANNEL_4;
    99   if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK)
    100   {
    101     Error_Handler();
    102   }
    103 
    104 
    105   sConfig.Channel = ADC_CHANNEL_TEMPSENSOR;
    106   if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK)
    107   {
    108     Error_Handler();
    109   }
    110 
     105  sConfig.Rank = ADC_REGULAR_RANK_5;
     106  sConfig.SamplingTime = ADC_SAMPLINGTIME_COMMON_1;
     107  if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK)
     108  {
     109    Error_Handler();
     110  }
    111111
    112112
     
    115115  //ovp sense
    116116  sConfig.Channel = ADC_CHANNEL_8;
     117  sConfig.Rank = ADC_REGULAR_RANK_6;
     118  sConfig.SamplingTime = ADC_SAMPLINGTIME_COMMON_2;
    117119  if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK)
    118120  {
     
    122124  //lvp sense
    123125  sConfig.Channel = ADC_CHANNEL_9;
    124   if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK)
    125   {
    126     Error_Handler();
    127   }
     126  sConfig.Rank = ADC_REGULAR_RANK_7;
     127  sConfig.SamplingTime = ADC_SAMPLINGTIME_COMMON_2;
     128  if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK)
     129  {
     130    Error_Handler();
     131  }
     132
    128133
    129134  //Temp Meas
    130135  sConfig.Channel = ADC_CHANNEL_10;
    131   if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK)
    132   {
    133     Error_Handler();
    134   }
     136  sConfig.Rank = ADC_REGULAR_RANK_8;
     137  sConfig.SamplingTime = ADC_SAMPLINGTIME_COMMON_1;
     138  if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK)
     139  {
     140    Error_Handler();
     141  }
     142
     143
     144
     145
    135146}
    136147
Note: See TracChangeset for help on using the changeset viewer.