1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Renesas RAマイコンを使ってみよう(6)~ADCを使ってみよう~

Posted at

Renesas RAマイコンを使ってみよう(5)~UARTとスイッチを使ってみよう~2 の続きです。

今回は、ADCを使ってみましょう。

ADCの追加

FSP Configuratio から ADC を追加します。
最初に使用する P000 のピンを見てみましょう。
image.png
P000ADC0 となっています。
image.png
New Stack⇒Analog⇒ADC(r_adc) を選択します。
image.png
g_adc0_ADC(r_adc) のプロバティを開きます。
ModeSingleScan⇒Continuous Scan
Channel0、VoltageSensor
のチェックを入れます。
image.png
image.png
ここまで設定した段階で Generate Project Content をクリックします。
image.png

プログラム作成

Developer Assistance を開き g_adc0 ADC から
Call R_ADC_Open,R_ADC_ScanCfg,R_ADC_ScanStart を探し追加します。
image.png
次に Call R_ADC_ScanStart を追加します。
image.png
次に Call R_ADC_Read を追加します。
これでADCを読み取ることが出来ます。
image.png
読み込む ADCADC_CHANNEL_0 になります。
image.png
image.png
読み込んだデータは adcval とします。
image.png
adcval 及び出力内容を規定します。
出力の adcout13 だとオーバーフローするので 14 にしました。
image.png
今回は、STM32CubeIDEを使ってみよう How To STM32CubeIDE 日本語版 (12) ADCを使ってみよう と同じく sprintf を使用します。

image.png
オーバーフローの警告が出ています。
image.png
出力の様子
image.png
送信する値の桁数が減る事で元の改行部分が残り改行が2回分送られています。
image.png

uint16_t adcval;
uint8_t adcout[14];

void hal_entry(void)
{
    /* TODO: add your own code here */
    R_SCI_UART_Open(&g_uart0_ctrl, &g_uart0_cfg);
    R_ADC_Open(&g_adc0_ctrl, &g_adc0_cfg);
    R_ADC_ScanCfg(&g_adc0_ctrl, &g_adc0_channel_cfg);
    R_ADC_ScanStart(&g_adc0_ctrl);
    while(1){
    R_ADC_Read(&g_adc0_ctrl, ADC_CHANNEL_0, &adcval);
    sprintf((char*)adcout,"ADCVAL %u \n\r",(unsigned int)adcval);
    R_SCI_UART_Write(&g_uart0_ctrl,adcout,sizeof(adcout));
    R_BSP_SoftwareDelay (100, BSP_DELAY_UNITS_MILLISECONDS);
    }
1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?