ํด๋ง ๋ฐฉ์‹์œผ๋กœ ADC1์˜ 2์ฑ„๋„์„ ์ฝ์–ด๋ดค๋‹ค.

์„ธํŒ…์€ ์•„๋ž˜์™€ ๊ฐ™๋‹ค.

 

์ฝ”๋“œ๋Š” ๊ฑฐ์ง€๊ฐ™์ง€๋งŒ ์•„๋ž˜์™€ ๊ฐ™๋‹ค.

void adc()
{
	int value[3];

	HAL_ADC_Start(&hadc1);
	HAL_ADC_PollForConversion(&hadc1, 10);
	value[0] = HAL_ADC_GetValue(&hadc1);
	value[0] = value[0] * 0.78947 ;
	HAL_ADC_Start(&hadc1);
	HAL_ADC_PollForConversion(&hadc1, 10);
	value[1] = HAL_ADC_GetValue(&hadc1);
	value[1] = value[1] * 0.83211;
	value[2] = value[1] * 3.1276;
	HAL_ADC_Stop(&hadc1);
	printf("%c[30;5f", 27);
	printf("ADC \r\n");
	printf("%c[31;5f", 27);
	printf("PRESS : %d V \r\n", value[0]);
	printf("%c[32;5f", 27);
	printf("ADC2 : %d V, %d V\r\n", value[1],  value[2]);
 }

 

HAL_ADC_Start๋ฅผ ์ฃผ๊ณ  HAL_ADC_PollForConversion์œผ๋กœ ์ฝ๊ณ  ์ฝ์€ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ ธ์˜ฌ๋• HAL_ADC_GetValue๋กœ ๊ฐ€์ ธ์™€ ๋ณ€์ˆ˜์— ๋„ฃ์–ด์คฌ๋‹ค. 2์ฑ„๋„์„ ์—ฐ์†์œผ๋กœ ์ผ๊ธฐ ์œ„ํ•ด ์œ„ ๋‹จ๊ณ„๋ฅผ 2๋ฒˆ ์ง„ํ–‰ํ•œ ํ›„ HAL_ADC_Stop์„ ํ•ด์คฌ๋‹ค. HAL ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•˜๋‹ˆ ๊ฐœ ๊ฐ„๋‹จํ•˜๊ฒŒ ๊ณ„์ธก์„ ํ•  ์ˆ˜ ์žˆ์—ˆ๋‹ค.

 

๋ณ€์ˆ˜์— ๊ณฑํ•˜๊ธฐ ํ•œ ๊ฒƒ๋“ค์€ ํŒฉํ„ฐ...๋ฅผ ๋„ฃ์–ด์คฌ๋‹ค.... ์–ผ์ถ” ํ™•์ธ์ด ๋˜์—ˆ๋‹ค.

๋ฐ˜์‘ํ˜•
  • ๋„ค์ด๋ฒ„ ๋ธ”๋Ÿฌ๊ทธ ๊ณต์œ ํ•˜๊ธฐ
  • ๋„ค์ด๋ฒ„ ๋ฐด๋“œ์— ๊ณต์œ ํ•˜๊ธฐ
  • ํŽ˜์ด์Šค๋ถ ๊ณต์œ ํ•˜๊ธฐ
  • ์นด์นด์˜ค์Šคํ† ๋ฆฌ ๊ณต์œ ํ•˜๊ธฐ

"์ด ํฌ์ŠคํŒ…์€ ์ฟ ํŒก ํŒŒํŠธ๋„ˆ์Šค ํ™œ๋™์˜ ์ผํ™˜์œผ๋กœ, ์ด์— ๋”ฐ๋ฅธ ์ผ์ •์•ก์˜ ์ˆ˜์ˆ˜๋ฃŒ๋ฅผ ์ œ๊ณต๋ฐ›์Šต๋‹ˆ๋‹ค."