STM32F401のADCの使い方
STM32でADCの使い方をまとめる。
これはSTM32でアナログジョイスティックを使うための前段階の勉強になる。
あとはmain関数にこれらのコードを記述する。
これはSTM32でアナログジョイスティックを使うための前段階の勉強になる。
CubeMXでピンの設定を行う
STM32F401-Nucleoでアナログ入力を行えるピンは、Arduinoと同じ。
なので「A0」ピンを使っていこうと思う。
調べるとA0は「PA0」になるようだ。
PA0を選択して「ADC1_INO」に設定する。
ピンの設定はこれで終了。
ADC一つだけならこれだけで使える。
main.cでプログラムを書いていく
まずは「USER CODE BIGEN Includes」に「<stdio.h>」と「<string.h>」をインクルードする。
/* Private includes ----------------------------------------------------------*/
/* USER CODE BEGIN Includes */
#include <stdio.h>
#include <string.h>
/* USER CODE END Includes */あとはmain関数にこれらのコードを記述する。
  /* USER CODE BEGIN WHILE */
  int adc = 1;
  char str[16];
  while (1)
  {
    /* USER CODE END WHILE */
    /* USER CODE BEGIN 3 */
   HAL_ADC_Start(&hadc1);
   HAL_ADC_PollForConversion(&hadc1, 100);
   adc = HAL_ADC_GetValue(&hadc1);
   sprintf(str, "ADC: %d\n\r", adc);
   HAL_UART_Transmit(&huart2, (uint8_t *)str, strlen(str), 1000);
   HAL_ADC_Stop(&hadc1);
   HAL_Delay(300);
  }
  /* USER CODE END 3 */

 
 
 
コメント
コメントを投稿