Hello everyone
i have a question, i am using 3 Ranks ADC injected mode for reading potential resistors.. with stm32f103c8
the problem is when ever i change one value it affects the other channel reading.
example
channel 1 reading is 1.3v
channel 2 reading is 1.5v
channel 3 reading is 1.6v
changing only resistor value on channel 1 to 2.9v makes the following:
channel 1 reading is 2.9v
channel 2 reading is 1.7v
channel 3 reading is 1.7v
why when i change one value the others are affected !! or the second one affecting the third !
code is :
i have a question, i am using 3 Ranks ADC injected mode for reading potential resistors.. with stm32f103c8
the problem is when ever i change one value it affects the other channel reading.
example
channel 1 reading is 1.3v
channel 2 reading is 1.5v
channel 3 reading is 1.6v
changing only resistor value on channel 1 to 2.9v makes the following:
channel 1 reading is 2.9v
channel 2 reading is 1.7v
channel 3 reading is 1.7v
why when i change one value the others are affected !! or the second one affecting the third !
code is :
Code:
while (1)
{
HAL_ADCEx_InjectedStart(&hadc1);
HAL_ADC_PollForConversion(&hadc1,100);
u[0]=((float)HAL_ADCEx_InjectedGetValue(&hadc1,ADC_INJECTED_RANK_1))*3.0/4096.0;
u[1]=((float)HAL_ADCEx_InjectedGetValue(&hadc1,ADC_INJECTED_RANK_2))*3.0/4096.0;
u[2]=((float)HAL_ADCEx_InjectedGetValue(&hadc1,ADC_INJECTED_RANK_3))*3.0/4096.0;
HAL_ADCEx_InjectedStop(&hadc1);
sprintf(str, "%.2fv %.2fv %.2fv ", u[0], u[1], u[2]);
LCD_SetPos(0,0);
LCD_String(str);
HAL_Delay(200);
/* USER CODE END WHILE */
/* USER CODE BEGIN 3 */
}
Attachments
-
33.1 KB Views: 3
Last edited by a moderator: