アプリケーションノートRAファミリ、RXファミリ、RL78ファミリ、RZファミリ
HS300xサンプルソフトウェアマニュアル要旨
本アプリケーションノートでは、RA ファミリ、RX ファミリ、RL78 ファミリ、RZ ファミリで動作する
HS300x 湿度・温度センサーのサンプルソフトウェアについて説明します。

動作確認デバイスRA6M4 グループ
RX65N グループ
RL78/G14 グループ
RL78/G23 グループ
RZ/G2L グループ

商標・他社 TM
FreeRTOSTM と FreeRTOS.orgTM は Amazon Web Serices, Inc.の登録商標です。
Microsoft® Azure RTOS は米国 Microsoft Corporation の米国およびその他の国における登録商標または商
標です。

目次
1.

概要 ......................................................................................................................................... 4

2.

動作確認環境 ........................................................................................................................... 4

2.1

RA動作確認環境 ...................................................................................................................................... 42.2

RX動作確認環境 ...................................................................................................................................... 5

2.3

RL78/G14動作確認環境 .......................................................................................................................... 6

2.4

RL78/G23動作確認環境 .......................................................................................................................... 7

2.5

RZ/G2L動作確認環境 .............................................................................................................................. 83.

センサー仕様 ........................................................................................................................... 93.1

センサー仕様概要 .................................................................................................................................... 93.2

センサー機能 ........................................................................................................................................... 9

3.2.1

I2C通信インタフェース ...................................................................................................................... 103.2.2

出力値の湿度・温度への変換式 .......................................................................................................... 10

4.

サンプルソフトウェア仕様 .................................................................................................... 11

4.1

サンプルソフトウェア構成 ................................................................................................................... 11

4.2

センサーAPI関数仕様 ............................................................................................................................ 11

4.2.1

センサーAPI関数一覧 .......................................................................................................................... 11

R01AN5897JJ0153
September 7.23

Rev.1.53

Page 1 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ

HS300xサンプルソフトウェアマニュアル

4.2.2

API使用ガイド ..................................................................................................................................... 12

4.3

Non-OS版サンプルソフトウェアメイン処理フロー ............................................................................. 15

4.4

OS版サンプルソフトウェアフロー ....................................................................................................... 17

4.5

Azure RTOSプロジェクト .................................................................................................................... 19

5.

コンフィグ設定 ..................................................................................................................... 20

5.1HS300x湿度・温度センサー設定 .......................................................................................................... 20

5.1.1

RAファミリ ......................................................................................................................................... 20

5.1.2

RXファミリ ......................................................................................................................................... 21

5.1.3

RL78ファミリ...................................................................................................................................... 22

5.1.4

RZファミリ ......................................................................................................................................... 235.2

通信ドライバミドルウェア設定 ............................................................................................................ 24

5.2.1

RAファミリ ......................................................................................................................................... 24

5.2.2

RXファミリ ......................................................................................................................................... 25

5.2.3

RL78ファミリ...................................................................................................................................... 27

5.2.4

RZファミリ ......................................................................................................................................... 28

5.3

I2Cドライバ設定 ................................................................................................................................... 29

5.3.1

RAファミリ ......................................................................................................................................... 29

5.3.2

RXファミリ ......................................................................................................................................... 33

5.3.3

RL78ファミリ...................................................................................................................................... 38

5.3.4

RZファミリ ......................................................................................................................................... 40

6.

デバイス変更ガイド .............................................................................................................. 42

6.1

RA サンプルプロジェクト .................................................................................................................... 42

6.1.1

サンプルプロジェクトのインポート ................................................................................................... 42

6.1.2

FSP Configuratorの設定変更............................................................................................................... 44

6.1.3

ツールチェイン設定変更 ..................................................................................................................... 49

6.2

RX サンプルプロジェクト .................................................................................................................... 50

6.2.1

サンプルプロジェクトのインポート ................................................................................................... 50

6.2.2

デバイスの変更 ................................................................................................................................... 52

6.2.3

Smart Configurator設定の変更 ............................................................................................................ 54

6.2.4

ツールチェイン設定変更 ..................................................................................................................... 56

6.3

RL78 サンプルプロジェクト ................................................................................................................ 57

6.3.1

新規プロジェクトの作成 ..................................................................................................................... 57

6.3.2

Code Generatorの設定 ........................................................................................................................ 59

6.3.3

生成コードの変更 ................................................................................................................................ 63

6.3.4

サンプルソースの変更 ........................................................................................................................ 67

6.4

RZ サンプルプロジェクト .................................................................................................................... 72

6.4.1

サンプルプロジェクトのインポート ................................................................................................... 72

6.4.2

FSP Configuratorの設定変更............................................................................................................... 74

6.4.3

サンプルソースの変更 ........................................................................................................................ 76

7.

温湿度データの確認方法 ....................................................................................................... 77

改訂記録 ....................................................................................................................................... 79
製品ご使用上の注意事項............................................................................................................... 80

R01AN5897JJ0153
September 7.23

Rev.1.53

Page 2 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ

HS300xサンプルソフトウェアマニュアル

ご注意書き .................................................................................................................................... 81

R01AN5897JJ0153
September 7.23

Rev.1.53

Page 3 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ

HS300xサンプルソフトウェアマニュアル

1. 概要
本ソフトウェアは、HS300x 湿度・温度センサーによる湿度・温度データの取得および、演算を行うためのサンプルプログラムです。MCU に内蔵されている I2C を用い FSP / FIT の I2C ドライバとの組み合わせに
よって HS300x の湿度・温度の測定、ADC データ取得、取得データの演算を行います。

2. 動作確認環境
2.1

RA 動作確認環境

本ソフトウェアの RA 動作確認環境を以下に示します。

表 2-1 RA 動作環境項目
デモボード
使用マイコン
動作周波数
動作電圧
統合開発環境C コンパイラ

FSP
RTOS
エミュレータ
変換ボード
センサーボード

内容
RTK7EKA6M4S00001BE (EK-RA6M4)
RA6M4 (R7FA6M4AF3CFB :144pin)
200MHz5V
e2 Studio 2023-01
GCC 10.3.1.20210824
IAR ANSI C/C++ Compiler V8.50.9.278/LNX for ARM
ARM Compiler 6.16
V.3.5.0
FreeRTOSTM / Microsoft® Azure RTOS
On board (J-LINK)Interposer Board to convert Type2/3 to Type 6A PMOD standard (US082-INTERPEVZ)
Relative Humidity Sensor Pmod™ Board (US082-HS3001EVZ)

表 2-2 RA 使用メモリ量
領域

サイズ
ROM
Non-OS version: 1,317 bytes
FreeRTOS version: 1,630 bytes
Azure RTOS version: 1,606 bytes
RAM
Non-OS version: 77 bytes
FreeRTOS version: 257 bytes
Azure RTOS version: 426 bytes
メモリサイズは HS300X に関連する関数と変数のみを使用して計算しています。RTOS の場合は、スレッドのメモリサイズは計算に含めていません。

PMOD2

EK-RA6M4Interposer
US082INTERPEVZ

Sensor Board
1

Sensor Board2

図 2-1 RA HW 接続図

R01AN5897JJ0153
September 7.23

Rev.1.53

Page 4 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ
2.2

HS300xサンプルソフトウェアマニュアル

RX 動作確認環境

本ソフトウェアの RX 動作確認環境を以下に示します。

表 2-3 RX 動作環境項目
デモボード
使用マイコン
動作周波数
動作電圧
統合開発環境C コンパイラ

FIT
RTOS
エミュレータ
変換ボード
センサーボード内容
RPBRX65N (Envision Kit RX65N)
RX65N (R5F565NEDDFB 144pin)
12MHz
5V
e2 Studio 2023-01
IAR EW for RX 4.20.1
Renesas Electronics C/C++ compiler for RX family V.3.03.00
GCC 8.3.0.202004
IAR Toolchain for RX 8.4.10.7051
BSP V.7.20
FreeRTOSTM
On board (E2OB)
Interposer Board to convert Type2/3 to Type 6A PMOD standard (US082-INTERPEVZ)
Relative Humidity Sensor Pmod™ Board (US082-HS3001EVZ)

表 2-4 RX 使用メモリ量
領域

サイズ
Non-OS version: 1,652 bytes
FreeRTOS version: 1,992 bytes
Azure RTOS version: 2,041 bytes
RAM
Non-OS version: 133 bytes
FreeRTOS version: 149 bytes
Azure RTOS version: 289 bytes
メモリサイズは HS300X に関連する関数と変数のみを使用して計算しています。RTOS の場合は、スレッドのメモリサイズは計算に含めていません。
ROM

PMOD

Envisionkit RX65N

Interposer
US082INTERPEVZ

Sensor Board
1

Sensor Board2

図 2-2 RX HW 接続図

R01AN5897JJ0153
September 7.23

Rev.1.53

Page 5 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ
2.3

HS300xサンプルソフトウェアマニュアル

RL78/G14 動作確認環境

本ソフトウェアの RL78/G14 動作確認環境を以下に示します。

表 2-5 RL78/G14 動作環境項目
デモボード
使用マイコン
動作周波数
動作電圧
統合開発環境C コンパイラ

エミュレータセンサーボード

内容
RTK5RLG140C00000BJ (RL78/G14 Fast Prototyping Board)
RL78/G14 (R5F104MLAFB :80pin)
32MHz
3.3V
e2 Studio 2023-01
IAR EW for RL78 4.21.1
C compiler package for RL78 family V1.11.00
GCC for Renesas RL78 4.9.2.202103
IAR Toolchain for RL78 4.21.1.2409
On board (E2OB)
Relative Humidity Sensor Pmod™ Board (US082-HS3001EVZ)

表 2-6 RL78/G14 使用メモリ量
領域

サイズ
1,542 bytes
83 bytes

ROM
RAM

Fast Prototyping Board for RL78/G14

Sensor Board 1

Sensor Board 2

PMOD 2

図 2-3 RL78/G14 HW 接続図

R01AN5897JJ0153
September 7.23

Rev.1.53

Page 6 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ
2.4

HS300xサンプルソフトウェアマニュアル

RL78/G23 動作確認環境

本ソフトウェアの RL78/G23 動作確認環境を以下に示します。

表 2-7 RL78/G23 動作環境項目
デモボード
使用マイコン
動作周波数
動作電圧
統合開発環境C コンパイラ

エミュレータセンサーボード

内容
RTK7RLG230CSN000BJ (RL78/G23-128p Fast Prototyping Board)(R7F100GSN2DFB :128pin)
32MHz
3.3V
e2 Studio 2023-01
IAR EW for RL78 4.21.1
C compiler package for RL78 family V1.10.00
LLVM for RL78 10.0.0.202209
IAR Toolchain for RL78 4.21.1.2409
E2 LiteRelative Humidity Sensor Pmod™ Board (US082-HS3001EVZ)

表 2-8 RL78/G23 使用メモリ量
領域

サイズ
1,690 bytes
80 bytes

ROM
RAM

Fast Prototyping Board for RL78/G23

Sensor Board 1

Sensor Board 2

PMOD 2

図 2-4 RL78/G23 HW 接続図

R01AN5897JJ0153
September 7.23

Rev.1.53

Page 7 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ
2.5

HS300xサンプルソフトウェアマニュアル

RZ/G2L 動作確認環境

本ソフトウェアの RZ/G2L 動作確認環境を以下に示します。

表 2-9 RZ 動作環境項目
デモボード
使用マイコン
動作周波数
動作電圧
統合開発環境C コンパイラ
FSP
RTOS
エミュレータセンサーボード

内容
RTK9744L23S01000BE (RZ/G2L Evaluation Kit (SMARC))RZ/G2L (R9A07G044L23GBG :456pin)Arm® Cortex®-M33：200MHz、Arm® Cortex®-A55：1.2GHz
5V
e2 Studio 2023-01
GCC 10.3.1.20210824
V.1.2.0
FreeRTOSTM
On board (J-LINK)
Relative Humidity Sensor Pmod™ Board (US082-HS3001EVZ)

表 2-10 RZ 使用メモリ量
領域

サイズ
ROM
Non-OS version: 1,574 bytes
FreeRTOS version: 1,882 bytes
RAM
Non-OS version: 149 bytes
FreeRTOS version: 429 bytes
メモリサイズは HS300X に関連する関数と変数のみを使用して計算しています。RTOS の場合は、スレッドのメモリサイズは計算に含めていません。

RZ/G2L Evaluation Kit (SMARC)

Sensor Board 1

Sensor Board 2

PMOD 1

図 2-5 RZ HW 接続図

R01AN5897JJ0153
September 7.23

Rev.1.53

Page 8 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ

HS300xサンプルソフトウェアマニュアル

3. センサー仕様
3.1

センサー仕様概要

HS300x 湿度・温度センサーの仕様概要を表 3-1 センサー機能概要に示します。

表 3-1
項目
Humidity range
Humidity accuracy
14-bit resolution
Independent programmable resolution settings
Fast RH response time
Temperature sensor accuracy
Average Current
Sleep Current
Supply voltage
Extended supply voltage
Operating temperature

3.2

センサー機能概要
内容
0~100%RH
TYP. ±1.5%RH（HS3001, 10～90%RH, 25℃）
TYP. 0.01%RH, TYP.
14bit
TYP. 1 秒 (エアフロー1m/s)
TYP.4 秒 (密閉空間)
TYP. ±0.2℃(HS3001, HS3002, -10～80℃)
14bit 分解能 3.3V：24.4μA (max)-40～85℃：0.6μA (TYP.)-40～125℃：1μA (TYP.)
2.3V～5.5V TYP. 3.3V
1.8V（-20℃～+125℃）-40℃～+125℃

センサー機能本ソフトウェアで提供される HS300x の機能は以下の通りです。

表 3-2

センサー機能一覧

機能説明
I2C 通信機能
センサーデータを通信します。
測定モード
本ソフトウェアではスリープモードで動作します。
測定要求による測定開始後、測定が完了するとスリープモードに遷
移します。
測定要求
スリープモードから測定状態に遷移します。
データフェッチ
測定サイクルの最後に有効なデータを取得できます。
結果のステータスによって有効なデータか古いデータか検出できステータスビットます。
【注】 本ソフトウェアでは HS300x の次の機能はサポートしません。
・不揮発性メモリへのアクセス・測定分解能の設定
・HS300xID 番号の読み取り

R01AN5897JJ0153
September 7.23

Rev.1.53

Page 9 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ

HS300xサンプルソフトウェアマニュアル

I2C 通信インタフェース

3.2.1

通信データによる測定データのフォーマットを下記に示します。

2byte Data Read

S

1

0

0

0

1

0

0

R
(1)

Devic e Slave Address [6:0]

A

15

14

13

12

11

10

9

8

A

7

6

Status [15:14] Humidty Data [13:8]

5

4

3

2

1

0

N

S

In the event that the temperature data is not needed, the readcan be terminated by sending a NACK after the second byte.

Humidty Data [7:0]

Master NACK
Slave ACK

4byte Data Read

S

1

0

0

0

1

0

0

R
(1)

Devic e Slave Address [6:0]S

Start Condition

A

15

Master ACK

14

13

Status [15:14]

S

12

11

10

9

8

A

7

Humidty Data [13:8]

Stop Condition

A

6

5

4

3

2

Humidty Data [7:0]

1

0

A

15

14

13

12

11

10

Temp Data [15:8]

ACK

N

図 3-1

I2C 通信フォーマット

9

8

A

7

6

5

4

3

Temp Data [7:2]

2

1

0

N

S

Mask[1:0]

NACK

ステータスビットの値は次の状態を表します。
00B：測定サイクルの最後に取得した有効なデータ
01B：すでに取得済みの無効なデータ

3.2.2

出力値の湿度・温度への変換式

HS300x ソフトウェアでは取得した ADC データを湿度・温度に変換する関数によって、湿度・温度を出力します。変換式は下記式で表されます。

・湿度計算式

・温度計算式

R01AN5897JJ0153
September 7.23

Rev.1.53

Page 10 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ

HS300xサンプルソフトウェアマニュアル

4. サンプルソフトウェア仕様
サンプルソフトウェアパッケージには RA の Non-OS 版と OS 版 (FreeRTOS / Azure RTOS)、RX の
Non-OS 版と OS 版(FreeRTOS / Azure RTOS)、
RL78 の Non-OS 版、RZ の Non-OS 版と OS 版 (FreeRTOS )の合計 13 のプロジェクトが含まれます。それぞれのプロジェクトについて以降に説明します。
RX の FreeRTOS の設定方法についてはFAQを参照してください。

4.1

サンプルソフトウェア構成

サンプルソフトウェアのブロック構成を図 4-1

ソフトウェアブロック図に示します。

Sample (DEMO) Software

HS300x Software

I2C Communications Middleware

I2C Driver (MCU driver)

図 4-1

4.2

センサーAPI 関数仕様

4.2.1

センサーAPI 関数一覧

ソフトウェアブロック図

センサーAPI は以下の関数が含まれます。関数 API の詳細は別途 HS300x Sensor API FIT Module アプリ
ケーションノート(R01AN5893)、RL78 用ルネサスセンサーソフトウェア API 仕様アプリケーションノート
(R01AN5896)を参照してください。

表 4-1
関数
RM_HS300X_Open
RM_HS300X_Close
RM_HS300X_MeasurementStart
RM_HS300X_Read
RM_HS300X_DataCalculate
RM_HS300X_ProgrammingModeEnter
RM_HS300X_SensorIdGet
RM_HS300X_ResolutionChange
RM_HS300X_ProgrammingModeExit

R01AN5897JJ0153
September 7.23

Rev.1.53

センサーAPI 関数一覧
機能

センサー制御開始処理
センサー制御終了処理
センサー測定開始処理
センサーデータ取得処理
センサーデータ結果演算処理
プログラミングモード開始処理
センサーID 取得処理
測定解像度変更処理
プログラミングモード終了処理

Page 11 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ
4.2.2

HS300xサンプルソフトウェアマニュアル

API 使用ガイド

HS300x の API 関数の使用条件について、想定する関数コールの順番を遷移図として示します。

START
(1)
RM_HS300X_Open

(2)

(8)

RM_HS300X_Measure
mentStart

(7)
(3)

(9)
(5)

RM_HS300X_Read

(11)

(10)

(6)

(4)

RM_HS300X_DataCalc
ulate

(10)
RM_HS300X_Close

(12)
END

Flow No. Function
(1)
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10)
(11)
(12)

Transition Case

Start HS300x
not open HS300x
Start Measurement HS300x
open success
ADC Read
Measurement success (callback state success)
Humidity & Temp. calculate
ADC Read success (callback state success)next measurement start
DataCalculate return success and next ADC data Get
get retry ADC data
user get retry ADC data or DataCalculate return invalid data
next measurement (Not calculate) The user requests only ADC data and measures the next data.
Retry Measure Start
Measurement start Waiting for response (callback none and polling)
Retry ADC Read
Read ADC Waiting for response (callback none and polling)
Close HS300x
Error state or user stop
Restart HS300x
Close success and user restart
Stop HS300x
Close success or Error

図 4-2

R01AN5897JJ0153
September 7.23

Rev.1.53

関数 API 遷移図

Page 12 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ

HS300xサンプルソフトウェアマニュアル

関数毎の呼び出し条件は以下の通りです。
・RM_HS300X_Open：(1) HS300x 開始時、(11) RM_HS300X_Close 後の再開始

・RM_HS300X_Close：(10) 各処理の正常終了または異常終了時

・RM_HS300X_MeasurementStart： (2) RM_HS300X_Open 後の測定開始時、(5)(7) 次の測定データ取得時、(8) 測定開始応答待ちによる再試行
・RM_HS300X_Read：(3) RM_HS300X_MeasurementStart 後の測定データ取得時、(9) データ取得応答待ちによる再試行

・RM_HS300X_DataCalculate：(4) RM_HS300X_Read 後の湿度・温度データ演算時

注意：
RM_HS300X_Open で I2C デバイスドライバの状態を確認しますので、RM_HS300X_Open 処理のまえに
必ず、I2C デバイスドライバをオープンする必要があります。
RA および、RX で I2C デバイスドライバをオープンする方法については、サンプルソフトウェアの
g_comms_i2c_bus0_quick_setup()関数を参照してください。RL78 は、startup 処理内でオープンされますので必要ありません。
RM_HS300X_MeasurementStart で測定を開始すると ADC データを出力したのち測定が停止するため、
RM_HS300X_Read 処理の前に必ず 1 度呼び出す必要があります。
OS 使用時、複数のスレッド/タスクで同時にセンサーを制御する場合はユーザーによるセマフォを用いた
bus 制御が必要となります。セマフォの生成タイミング、ブロッキングの制御は4.4 OS版サンプルソフトウェ
アフローを参考にしてください。

R01AN5897JJ0153
September 7.23

Rev.1.53

Page 13 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ

HS300xサンプルソフトウェアマニュアル

以下に programming モードによる測定の解像度を変更する処理の流れとタイミングを示します。

Programming mode

Power OnI2C OpenMust be within 10ms .
RM_HS300X_Open

RM_HS300X_
ProgrammingModeEnter

Callback wait

Delay wait 120us

RM_HS300X_
SensorIdGet
RM_HS300X_
ResolutionChange

Callback wait

Next Resolution Change

Delay wait 14ms

RM_HS300X_
ProgrammingModeExit

Callback wait

Measurement

図 4-3

R01AN5897JJ0153
September 7.23

Rev.1.53

プログラミングモード遷移図

Page 14 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ
4.3

HS300xサンプルソフトウェアマニュアル

Non-OS 版サンプルソフトウェアメイン処理フロー

サンプルソフトウェアはドライバの開始処理を行い、その後はセンサー測定開始、センサーデータ取得、測定結果演算の処理を繰り返します。

Start

I2C Open

HS300X OpenWhile(!sensor_change)

sensor_change = false

Switch(sequence)
Default
DEMO_SEQUENCE_1

DEMO_SEQUENCE_2

gs_demo_callback_status=
DEMO_CALLBACK_STATUS_WAIT

DEMO_SEQUENCE_3

DEMO_SEQUENCE_4

gs_demo_callback_status=
DEMO_CALLBACK_STATUS_WAIT

DEMO_SEQUENCE_5

Calculate data from ADC
data

A

B

Start Measurement

DEMO_SEQUENCE_7

DEMO_SEQUENCE_6

End delay period
YESNO

Read HS300X ADC Data

sequence = DEMO_SEQUENCE_1
C

Return ErrorE

set delay period 4s

sequence = DEMO_SEQUENCE_1

Return Error
YES

NO

YES

E

sequence = DEMO_SEQUENCE_2

sensor_change = trueNO

E
sequence = DEMO_SEQUENCE_4

R

A

Switch(gs_demo_
callback_status)
Default
DEMO_CALLBACK_ST
ATUS_WAIT

DEMO_CALLBACK_ST
ATUS_SUCCESS

sensor_change = true

DEMO_CALLBACK_ST
ATUS_REPEAT

sequence = DEMO_SEQUENCE_1

E

sequence = DEMO_SEQUENCE_3

R

B

Switch(gs_demo_
callback_status)
Default
DEMO_CALLBACK_ST
ATUS_WAIT

DEMO_CALLBACK_ST
ATUS_SUCCESS

sensor_change = true

DEMO_CALLBACK_ST
ATUS_REPEAT

sequence = DEMO_SEQUENCE_3

E

sequence = DEMO_SEQUENCE_5

R

図 4-4

R01AN5897JJ0153
September 7.23

Rev.1.53

サンプルソフトウェア Non-OS 版メイン処理フロー1

Page 15 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ

HS300xサンプルソフトウェアマニュアル

EC

demo_err

Switch(Retuen)
Default
FSP_ERR_SENSOR_INVALID_DATA

FSP_SUCCESS

sequence = DEMO_SEQUENCE_6

sequence = DEMO_SEQUENCE_3

While(1)E

Set data Humidity andTemperature

R

Callback

Args->event
other
RM_HS300X_EVENT_
SUCCESS

gs_demo_callback_status =DEMO_CALLBACK_STATUS_
SUCCESS

gs_demo_callback_status =DEMO_CALLBACK_STATUS_
REPEATEND

図 4-5

R01AN5897JJ0153
September 7.23

Rev.1.53

サンプルソフトウェア Non-OS 版メイン処理フロー2

Page 16 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ
4.4

HS300xサンプルソフトウェアマニュアル

OS 版サンプルソフトウェアフロー

OS 版ではセマフォによる制御を行い、センサー制御を行う 1 つのスレッドを並列で動作させます。
それぞれセンサーの制御はドライバの開始処理を行い、その後はセンサー測定開始、センサーデータ取得、測定結果演算の処理を繰り返します。

Start
ThreadI2C Open
Create semaphore & mutex

E

HS300X Opentx_thread_ delete()/ vTaskDalete()

While(1)

Switch(sequence)

Default

DEMO_SEQUENCE_1

DEMO_SEQUENCE_2

gs_demo_callback_status =DEMO_CALLBACK_STATUS_
WAIT

DEMO_SEQUENCE_4

DEMO_SEQUENCE_3

gs_demo_callback_status =DEMO_CALLBACK_STATUS_
WAIT

A

B

Calculate data from ADC data

C
Start Measurement

Read HS300X ADC Data

Return Error

E

tx_thread_sleep()/ vTaskDelay() : 4ssequence =DEMO_SEQUENCE_4

Return Error
YES

DEMO_SEQUENCE_6

DEMO_SEQUENCE_5

YES

NO

NO

E

E
sequence =DEMO_SEQUENCE_2

sequence =DEMO_SEQUENCE_4

R

A

Switch(gs_demo_
callback_status)

Default

DEMO_CALLBACK_STATUS_WAIT

DEMO_CALLBACK_STATUS_SUCCESS

sequence =DEMO_SEQUENCE_3

DEMO_CALLBACK_STATUS_REPEAT

sequence =DEMO_SEQUENCE_1

E

tx_thread_sleep()/ vTaskDelay() 1ms

R

図 4-6

R01AN5897JJ0153
September 7.23

Rev.1.53

サンプルソフトウェア OS 版メイン処理フロー1

Page 17 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ

HS300xサンプルソフトウェアマニュアル

B

Switch(gs_demo_
callback_status)

Default

DEMO_CALLBACK_STATUS_WAIT

DEMO_CALLBACK_STATUS_REPEAT

DEMO_CALLBACK_STATUS_SUCCESS

sequence =DEMO_SEQUENCE_5

sequence =DEMO_SEQUENCE_3

E

tx_thread_sleep()/ vTaskDelay() : 1ms

RC

Switch(Retuen)
Default
FSP_ERR_SENSOR_IN
VALID_DATAFSP_SUCCESS

sequence =DEMO_SEQUENCE_6

sequence =DEMO_SEQUENCE_3

E

R

Callback

Args->event
other
RM_HS300X_EVENT_
SUCCESS

gs_demo_callback_status =DEMO_CALLBACK_STATUS_
SUCCESS

gs_demo_callback_status =DEMO_CALLBACK_STATUS_
REPEATEND

図 4-7

R01AN5897JJ0153
September 7.23

Rev.1.53

サンプルソフトウェア OS 版メイン処理フロー2

Page 18 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ
4.5

HS300xサンプルソフトウェアマニュアル

Azure RTOS プロジェクト

RX プロジェクトの Azure RTOS 版では、以下のような変更を行っています。
1. src/hardware_setup.c
25 行目：100u → 1000u に変更
2. src/demo_thread.c
57 行目：extern void tx_application_define_user (void);を追加
179 行目：tx_application_define_user();を追加
3. src/rtos_skelton/hs300x_sensor_thread_entry.c
27 行目：#include "azurertos_object_init.h"を#include "tx_api.h"に変更

R01AN5897JJ0153
September 7.23

Rev.1.53

Page 19 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ

HS300xサンプルソフトウェアマニュアル

5. コンフィグ設定
5.1

HS300x 湿度・温度センサー設定

5.1.1

RA ファミリFSP Configurator の Stack タブで rm_hs300x の Stack を選択することにより、Properties タブに設定可能な項目が表示されます。
設定可能な項目と設定値は以下の通りです。

表 5-1 RA HS300x 設定一覧
設定項目

設定値

説明

Parameter Checking

Default (BSP)
EnabledDisabled

Data type

Both humidity and temperature
Humidity only

Programming Mode

OFF

パラメータチェック処理をコードに含めるか選択できます。
Disabled の場合、パラメータチェック処理をコードから省略します。
Enabled の場合、パラメータチェック処理をコードに含めます。
センサーから取得するデータの種別を設定します。
湿度と温度もしくは、湿度のみを選択できます。
Programming mode の使用を選択します。

CommonModule g_hs300x_sensor HS300X on rm_hs300x
Name

g_hs300x_sensor0

Callback

hs300x_callback

R01AN5897JJ0153
September 7.23

Rev.1.53

モジュール名を設定します。
設定可能なモジュール名は、C 言語規格に準拠します。
ユーザコールバック関数名を設定します。
設定可能なコールバック関数名は、C 言語規格に準拠します。
NULL を設定した場合は、コールバック関数は使用されません。

Page 20 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ
5.1.2

HS300xサンプルソフトウェアマニュアル

RX ファミリSmart Configurator の Component タブで r_hs300x_rx コンポーネントを選択することにより、Configure
領域に設定可能な項目が表示されます。
設定可能な項目と設定値は以下の通りです。

表 5-2 RX HS300x 設定一覧
設定項目

設定値

説明

Parameter Checking

System Default
EnabledDisabled

Number of HS300x
sensors1
2
Humidity and temperature
Humidity only

パラメータチェック処理をコードに含めるか選択できます。
Disabled の場合、パラメータチェック処理をコードから省略します。
Enabled の場合、パラメータチェック処理をコードに含めます。
接続する HS300x センサーの数を設定します。

Configurations

Data types from
HS300x sensors
Programming modefor HS300x sensor
I2C communication
device No. for
HS300x Sensor
Device x(x = 0 or 1)
Callback function for
HS300x sensor
device x(x = 0 or 1)

R01AN5897JJ0153
September 7.23

OFF
I2C Communication Device0
I2C Communication Device1
I2C Communication Device2
I2C Communication Device3
I2C Communication Device4
hs300x_user_callback(x)(x = 0 or 1)

Rev.1.53

センサーから取得するデータの種別を設定します。
湿度と温度もしくは、湿度のみを選択できます。
Programming mode の使用を選択します。
HS300x センサ制御用に使用する I2CCommunication デバイスの番号を設定します。

ユーザコールバック関数名を設定します。
設定可能なコールバック関数名は、C 言語規格に準拠します。

Page 21 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ
5.1.3

HS300xサンプルソフトウェアマニュアル

RL78 ファミリ

サンプルプロジェクトのプロジェクトツリー上の¥r_config¥r_hs300x_rl_config.h に定義されている定数の値を変更することにより、設定を変更することができます。
設定可能な項目と設定値は以下の通りです。

表 5-3 RL78 HS300x 設定一覧
定数名

設定値

説明

0

パラメータチェック処理をコードに含めるか選択できます。
“0”の場合、パラメータチェック処理をコードから省略します。
“1”の場合、パラメータチェック処理をコードに含めます。
接続する HS300x センサーの数を設定します。

Configurations
RM_HS300X_CFG_PARAM_CHECKING_ENABLE

1

RM_HS300X_CFG_DEVIC
E_NUM_MAX
RM_HS300X_CFG_DATA_BOTH_HUMIDITY_TEMPERATURERM_HS300X_CFG_PROG
RAMMING_MODE
RM_HS300X_CFG_DEVIC
Ex_COMMS_INSTANCE(x = 0 or 1)
RM_HS300X_CFG_DEVIC
Ex_CALLBACK(x = 0 or 1)

R01AN5897JJ0153
September 7.23

Rev.1.53

1
2
0
1

0

センサーから取得するデータの種別を選択します。
湿度のみ(0)もしくは、湿度と温度(1)を選択できます。
Programming mode の使用を選択します。

g_comms_i2c_device(x)(x = 0 or 1)

使用する communication line のインスタ
ンス名を設定します。

hs300x_user_callback1(x)(x = 0 or 1)

ユーザコールバック関数名を設定します。
設定可能なコールバック関数名は、C 言語
規格に準拠します。

Page 22 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ
5.1.4

HS300xサンプルソフトウェアマニュアル

RZ ファミリFSP Configurator の Stack タブで rm_hs300x の Stack を選択することにより、Properties タブに設定可能な項目が表示されます。
設定可能な項目と設定値は以下の通りです。

表 5-4 RZ HS300x 設定一覧
設定項目

設定値

説明

Parameter Checking

Default (BSP)
EnabledDisabled

Data type

Both humidity and temperature
Humidity only

Programming Mode

OFF

パラメータチェック処理をコードに含めるか選択できます。
Disabled の場合、パラメータチェック処理をコードから省略します。
Enabled の場合、パラメータチェック処理をコードに含めます。
センサーから取得するデータの種別を設定します。
湿度と温度もしくは、湿度のみを選択できます。
Programming mode の使用を選択します。

CommonModule g_hs300x_sensor HS300X on rm_hs300x
Name

g_hs300x_sensor0

Callback

hs300x_callback

R01AN5897JJ0153
September 7.23

Rev.1.53

モジュール名を設定します。
設定可能なモジュール名は、C 言語規格に準拠します。
ユーザコールバック関数名を設定します。
設定可能なコールバック関数名は、C 言語規格に準拠します。
NULL を設定した場合は、コールバック関数は使用されません。

Page 23 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ
5.2

HS300xサンプルソフトウェアマニュアル

通信ドライバミドルウェア設定

5.2.1 RA ファミリ
FSP Configurator の Stack タブで rm_comms_i2c の Stack を選択することにより、Properties タブに設定可能な項目が表示されます。
設定可能な項目と設定値は以下の通りです。

表 5-5 RA 通信ドライバ設定一覧
設定項目

設定値

説明

Default (BSP)
EnabledDisabled

パラメータチェック処理をコードに含めるか選択できます。
Disabled の場合、パラメータチェック処理をコードから省略します。
Enabled の場合、パラメータチェック処理をコードに含めます。

CommonParameter Checking

Module g_comms_i2c_device I2C Communication Device on
rm_comms_i2c
Name

g_comms_i2c_device0

Semaphore Timeout

0xFFFFFFFF

Slave Address

0x44

Address Mode

7-Bit

Callback

rm_hs300x_callback

モジュール名を設定します。
設定可能なモジュール名は、C 言語規格に準拠します。
RTOS プロジェクト時、semaphore のタイムア
ウト時間を設定します。
スレーブアドレスを設定します。
rm_hs300x を使用する場合は、自動的に設定され変更できません。
スレーブアドレスのビット幅を設定します。
rm_hs300x を使用する場合は、自動的に設定され変更できません。
ユーザコールバック関数名を設定します。
rm_hs300x を使用する場合は、自動的に設定され変更できません。

Module g_comms_i2c_bus0 I2C Shared Bus on rm_comms_i2c
Name
Bus Timeout
Semaphore forblocking
Recursive Mutex forBus

R01AN5897JJ0153
September 7.23

g_comms_i2c_bus0
0xFFFFFFFF
Unuse
Use
Unuse
Use

Rev.1.53

I2C モジュール名を設定します。
I2C バスのタイムアウト時間を設定します
RTOS プロジェクト時、Blocking 処理の有効/無効を設定します。
RTOS プロジェクトかつ、Blocking が有効の時、再帰動作の有効/無効を設定します。

Page 24 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ

HS300xサンプルソフトウェアマニュアル

5.2.2 RX ファミリ
Smart Configurator の Component タブで r_comms_i2c_rx コンポーネントを選択することにより、Configure 領域に設定可能な項目が表示されます。
設定可能な項目と設定値は以下の通りです。

表 5-6 RX 通信ドライバ設定一覧
設定項目

設定値

説明

Parameter Checking

System Default
EnabledDisabled

Number of I2C
Shared Buses

Unusedパラメータチェック処理をコードに含めるか選択できます。
Disabled の場合、パラメータチェック処理をコードから省略します。
Enabled の場合、パラメータチェック処理をコードに含めます。
接続可能とする I2C バス数を設定します。

Configurations

1
2
3
4
5

Number of I2C
Devices

Unused接続可能とする I2C デバイスを設定します。

1
2
3
4
5

Blocking operation
supporting withRTOS
Bus lock operation
supporting withRTOS
IIC Driver Type for
I2C Shared bus(x)(x = 0 - 4)

Disabled
EnabledRTOS プロジェクト時のブロッキング動作を設定します。

Disabled
EnabledRTOS プロジェクト時のバスロック動作を設定
します。

RIIC
SCI IICNot selected

Channel No. for I2C
Shared bus(x)(x = 0 - 4)
Timeout for the bus
lock of the I2C bus
for I2C SharedBus(x)(x = 0 - 4)
I2C Shared Bus No.
for I2C
Communication
Device(x)(x = 0 - 4)0

通信バスが使用する I2C バスの種別を設定します。
RIIC を使用する場合は、r_riic_rx, SCI IIC を使用する場合は、r_sci_iic_rx が必要となります。
使用しない FIT モジュールを削除すると、警告が表示されますが、動作に問題はありません。
通信バス使用する I2C バスのチャネル番号を設定します。

R01AN5897JJ0153
September 7.23

0xFFFFFFFF

I2C バス(x)の I2C バスロックタイムアウト時間を設定します。
(x = 0 - 4)

I2C Shared Bus(x)(x = 0 - 4)

通信バス使用する I2C バスのコンフィグレー
ションを設定します。

Rev.1.53

Page 25 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ
Slave address forcommunication
device(x)(x = 0 - 4)

0x44

Slave address modefor communication
device(x)(x = 0 - 4)
Callback function forCommunication
device(x)(x = 0 - 4)

7 bit address mode

R01AN5897JJ0153
September 7.23

comms_i2c_user_callback(x)(x = 0 - 4)

Rev.1.53

HS300xサンプルソフトウェアマニュアル
通信バスに接続されるデバイスのスレーブアドレスを設定します。
rm_hs300x を使用する場合は、0x44 に設定してください。
スレーブアドレスモードを設定します。
rm_hs300x を使用する場合は、7 bit addressmode に設定してください。
ユーザコールバック関数名を設定します。
“NULL”を設定した場合は、コールバック関数は使用されません。
rm_hs300x を使用する場合は、
rm_hs300x_callback(y) (y = 0-1)を設定します。。

Page 26 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ

HS300xサンプルソフトウェアマニュアル

5.2.3 RL78 ファミリ
サンプルプロジェクトのプロジェクトツリー上の¥r_config¥r_comms_i2c_rl_config.h に定義されている定数の値を変更することにより、設定を変更することができます。
設定可能な項目と設定値は以下の通りです。

表 5-7 RL78 通信ドライバ設定一覧
定数名

設定値

説明

0

パラメータチェック処理をコードに含めるか選択できます。
“0”の場合、パラメータチェック処理をコードから省略します。
“1”の場合、パラメータチェック処理をコードに含めます。
接続可能とする通信バス数を設定します。

Configurations
COMMS_I2C_CFG_PARAM_CHECKING_ENABLE

1COMMS_I2C_CFG_BUS_NU
M_MAX

1
2
3
4
5

COMMS_I2C_CFG_DEVICE_NUM_MAX

1
2

接続可能とする I2C デバイス数を設定
します。

3
4
5
COMMS_I2C_CFG_BUS(x)_DRIVER_TYPE(x = 0 - 4)
COMMS_I2C_CFG_DEVICE(x)_BUS_CH(x = 0 - 4)
COMMS_I2C_CFG_DEVICE(x)_SLAVE_ADDR(x = 0 - 4)

COMMS_DRIVER_I2CCOMMS_I2C_CFG_DEVICE(x)_CALLBACK(x = 0 - 4)comms_i2c_user_callback(x)(x = 0 - 4)

R01AN5897JJ0153
September 7.23

Rev.1.53

COMMS_DRIVER_SAU_I2C
g_comms_i2c_bus(x)_extended_cfg(x = 0 - 4)0x44

通信バスが使用する I2C バスの種別を設定します。
通信バス使用する I2C バスのコンフィ
グレーションを設定します。
通信バスに接続されるデバイスのス
レーブアドレスを設定します。
rm_hs300x を使用する場合は、0x44に設定してください。
ユーザコールバック関数名を設定します。
rm_hs300x_callback(y) (y = 0 - 1)を設定します。

Page 27 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ

HS300xサンプルソフトウェアマニュアル

5.2.4 RZ ファミリ
FSP Configurator の Stack タブで rm_comms_i2c の Stack を選択することにより、Properties タブに設定可能な項目が表示されます。
設定可能な項目と設定値は以下の通りです。

表 5-8 RZ 通信ドライバ設定一覧
設定項目

設定値

説明

Default (BSP)
EnabledDisabled

パラメータチェック処理をコードに含めるか選択できます。
Disabled の場合、パラメータチェック処理をコードから省略します。
Enabled の場合、パラメータチェック処理をコードに含めます。

CommonParameter Checking

Module g_comms_i2c_device I2C Communication Device on
rm_comms_i2c
Name

g_comms_i2c_device0

Semaphore Timeout

0xFFFFFFFF

Slave Address

0x44

Address Mode

7-Bit

Callback

rm_hs300x_callback

モジュール名を設定します。
設定可能なモジュール名は、C 言語規格に準拠します。
RTOS プロジェクト時、semaphore のタイムア
ウト時間を設定します。
スレーブアドレスを設定します。
rm_hs300x を使用する場合は、自動的に設定され変更できません。
スレーブアドレスのビット幅を設定します。
rm_hs300x を使用する場合は、自動的に設定され変更できません。
ユーザコールバック関数名を設定します。
rm_hs300x を使用する場合は、自動的に設定され変更できません。

Module g_comms_i2c_bus0 I2C Shared Bus on rm_comms_i2c
Name
Bus Timeout
Semaphore forblocking
Recursive Mutex forBus

R01AN5897JJ0153
September 7.23

g_comms_i2c_bus0
0xFFFFFFFF
Unuse
Use
Unuse
Use

Rev.1.53

I2C モジュール名を設定します。
I2C バスのタイムアウト時間を設定します
RTOS プロジェクト時、Blocking 処理の有効/無効を設定します。
RTOS プロジェクトかつ、Blocking が有効の時、再帰動作の有効/無効を設定します。

Page 28 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ
5.3

HS300xサンプルソフトウェアマニュアル

I2C ドライバ設定

5.3.1 RA ファミリ
FSP Configurator の Stack タブで r_iic_master もしくは、r_sci_i2c の Stack を選択することにより、Properties タブに設定可能な項目が表示されます。
設定可能な項目と設定値は以下の通りです。

表 5-9 RA r_iic_master 設定一覧
設定項目

設定値

説明

Default (BSP)

パラメータチェック処理をコードに含めるか選択できます。
Disabled の場合、パラメータチェック処理をコードから省略します。
Enabled の場合、パラメータチェック処理をコードに含めます。
送受信に DTC を使用するか設定する。

CommonParameter Checking

EnabledDisabled

DTC onTransmission and
Reception
10-bit slave
addressing

EnabledDisabled
EnabledDisabled

スレーブアドレスに 10-bit addressing をサポートするか設定する。
rm_hs300x を使用する場合は、Disabled に設定
してください。

Module g_i2c_master0 I2C Master Driver on r_iic_masterName

g_i2c_master0

モジュール名を設定します。

Channel0

使用するチャネル番号を設定します。

RateStandard

ボーレートを設定します。
rm_hs300x を使用する場合は、Standard もしくは、Fast-mode に設定してください。

Fast-mode
Fast-mode plus
Rise Time (ns)120

Fall Time (ns)120

Duty Cycle (%)

50

Slave Address

0x00

Address Mode

7-Bit
10-BitTimeout Mode

Short Mode

SCL の立ち上がり時間を設定します。使用するボードに合わせて設定してください。
SCL の立ち下がり時間を設定します。使用するボードに合わせて設定してください。
SCL のデューティ比を設定します。
接続するデバイスのスレーブアドレスを設定します。
rm_comms_i2c により上書きされますので、設定は必要ありません。
接続するデバイスのスレーブアドレスモードを設定します。
rm_comms_i2c により上書きされますので、設定は必要ありません。
I2C バスのタイムアウト時間を設定しますLong Mode
Callback

R01AN5897JJ0153
September 7.23

rm_comms_i2c_callback

Rev.1.53

ユーザコールバック関数名を設定します。
rm_comms_i2c により自動的に設定されます。

Page 29 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ

Interrupt Priority
Level

Priority 0 (highest)
Priority 1

HS300xサンプルソフトウェアマニュアル
I2C バスドライバの割り込み優先レベルを設定します。

Priority 2
Priority 3
Priority 4
Priority 5
Priority 6
Priority 7
Priority 8
Priority 9
Priority 10
Priority 11
Priority 12
Priority 13
Priority 14
Priority 15

Pins
SDA

Pxxx

SCL

Pxxx

ドライバが使用する端子番号が表示されます。
端子の設定は、Pins タブで行います。

Rev.1.53

Page 30 of 79

R01AN5897JJ0153
September 7.23

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ

HS300xサンプルソフトウェアマニュアル

表 5-10 RA r_sci_i2c 設定一覧
設定項目

設定値

説明

Default (BSP)

パラメータチェック処理をコードに含めるか選択できます。
Disabled の場合、パラメータチェック処理をコードから省略します。
Enabled の場合、パラメータチェック処理をコードに含めます。
送受信に DTC を使用するか設定する。

CommonParameter Checking

EnabledDisabled

DTC onTransmission and
Reception
10-bit slave
addressing

EnabledDisabled
EnabledDisabled

スレーブアドレスに 10-bit addressing をサポートするか設定する。
rm_hs300x を使用する場合は、Disabled に設定
してください。

Module g_i2c0 I2C Master Driver on r_sci_i2c
Name

g_i2c0モジュール名を設定します。

Channel0

Slave Address

0x00

Address Mode

7-Bit

RTOS プロジェクト時、semaphore のタイムア
ウト時間を設定します。
接続するデバイスのスレーブアドレスを設定します。
rm_comms_i2c により上書きされますので、設定は必要ありません。
接続するデバイスのスレーブアドレスモードを設定します。
rm_comms_i2c により上書きされますので、設定は必要ありません。
ボーレートを設定します。
Standard もしくは、Fast-mode に設定してくだ
さい。

10-bitRate

Standard
Fast-mode
Fast-mode plus
300

SDA Output Delay(nano seconds)
Noise filter setting

Bit Rate Modulation
Callback

R01AN5897JJ0153
September 7.23

Use clock signal divided by 1with noise filter
Use clock signal divided by 2with noise filter
Use clock signal divided by 4with noise filter
Use clock signal divided by 8with noise filter
EnableDisablerm_comms_i2c_callback

Rev.1.53

SDA 出力遅延時間を設定します。
入力信号のノイズフィルタ使用を設定します

Bit Rate Modulation 機能の使用を設定します
ユーザコールバック関数名を設定します。
rm_comms_i2c により自動的に設定されます。

Page 31 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ

HS300xサンプルソフトウェアマニュアル

Priority 0 (highest)
Priority 1
Priority 2
Priority 3
Priority 4
Priority 5
Priority 6
Priority 7
Priority 8
Priority 9
Priority 10
Priority 11
Priority 12
Priority 13
Priority 14
Priority 15
Priority 0 (highest)
Priority 1
Priority 2
Priority 3
Priority 4
Priority 5
Priority 6
Priority 7
Priority 8
Priority 9
Priority 10
Priority 11
Priority 12
Priority 13
Priority 14
Priority 15
Disabled

I2C 割り込みの割り込み優先レベルを設定しま
す。

SDA

Pxxx

SCL

Pxxx

ドライバが使用する端子番号が表示されます。
端子の設定は、Pins タブで行います。

Interrupt Priority
Level

RX Interrupt Priority
Level [Only used
when DTC is
enabled]DTC を使用した場合の受信割り込みの割り込み
優先レベルを設定します。

Pins

R01AN5897JJ0153
September 7.23

Rev.1.53

Page 32 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ
5.3.2

HS300xサンプルソフトウェアマニュアル

RX ファミリSmart Configurator の Component タブで r_riic_rx もしくは、r_sci_iic_rx コンポーネントを選択することにより、Configure 領域に設定可能な項目が表示されます。
設定可能な項目と設定値は以下の通りです。

表 5-11 RX r_riic_rx 設定一覧
設定項目

設定値

説明

Configurations
Set parameterchecking enable

System Default
Not
IncludeMCU supported
channels for CHx(x = 0 – 2)

Not supported

CHx RIIC bps(kbps)(x = 0 – 2)

400

Digital filter for CHx(x = 0 – 2)Not
One IIC phi
Two IIC phi
Three IIC phi
Four IIC phi
Not include port setting

Supported

Setting port setting
processing

Include port setting

Master arbitration lost
detection function forCHx(x = 0 – 2)

UnusedAddress y format forCHx(x = 0 – 2, y = 0 – 2)

Not

Slave Address y forCHx(x = 0 – 2, y = 0 – 2)

0x0025

R01AN5897JJ0153
September 7.23

Used

7 bit address format
10 bit address format

Rev.1.53

パラメータチェック処理をコードに含めるか選択できます。
Not の場合、パラメータチェック処理をコードから省略します。
Include の場合、パラメータチェック処理をコードに含めます。
該当チャネルを使用するかを選択できます。
該当チャネルを使用しない場合は Not suppportedに設定してください。
Not supported の場合、該当チャネルに関する処理をコードから省略します。
Supported の場合、該当チャネルに関する処理をコードに含めます。
通信速度を設定できます。
rm_hs300x を使用する場合は、400 以下に設定してください
指定したチャネルのノイズフィルタの段数を選択できます。
“Not”の場合、ノイズフィルタは無効となります。

ポートを SCL, SDA 端子として使用するための設定処理をコードに含めるかを選択します。
Not include port setting の場合、ポートの設定処理をコードから省略します。
Include port setting の場合、ポートの設定処理をコードに含めます。
指定したチャネル のマスタアービトレーションロ
スト検出機能の有効/無効を選択できます。
マルチマスタで使用する場合は、“Used”(有効)にしてください。
“Unused”の場合、マスタアービトレーションロス
ト検出を無効にします。
“Used”の場合、マスタアービトレーションロスト
検出を有効にします。
指定した RIIC のスレーブアドレスのフォーマット
を 7 ビット/10 ビットから選択できます。
rm_hs300x を使用する場合は、”7 bit addressformat”に設定してください
指定したチャネルのスレーブアドレスを設定します。
rm_comms_i2c により上書きされますので、設定は必要ありません。
Page 33 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ

General call address
for CHx

UnusedUsed

CHx RXI INT Priority
Level(x = 0 – 2)

Level 1
Level 2
Level 3
Level 4
Level 5
Level 6
Level 7
Level 8
Level 9Level 10
Level 11
Level 12
Level 13
Level 14
Level 15 (highest)
Level 1
Level 2
Level 3
Level 4
Level 5
Level 6
Level 7
Level 8
Level 9Level 10
Level 11
Level 12
Level 13
Level 14
Level 15 (highest)
Level 1
Level 2
Level 3
Level 4
Level 5
Level 6
Level 7
Level 8
Level 9Level 10
Level 11
Level 12
Level 13
Level 14
Level 15 (highest)

CHx RXI INT Priority
Level(x = 0 – 2)

CHx EEI INT Priority
Level(x = 0 – 2)

R01AN5897JJ0153
September 7.23

Rev.1.53

HS300xサンプルソフトウェアマニュアル

指定したチャネル のゼネラルコールアドレスの有効/無効が選択できます。
“Unused”の場合、ゼネラルコールアドレスを無効にします。
“Used”の場合、ゼネラルコールアドレスを有効にします。
指定したチャネルの受信データフル割り込み(RXI)の優先レベルを選択できます。
“Level 1”～”Level 15”の範囲で設定してください。

指定したチャネルの送信データエンプティ割り込み(TXI)の優先レベルを選択できます。
“Level 1”～”Level 15”の範囲で設定してください。

指定したチャネルの通信エラー/イベント発生割り込み(EEI)の優先レベルを選択できます。
“Level 1”～”Level 15”の範囲で設定してください。

Page 34 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ

CHx TEI INT Priority
Level(x = 0 – 2)

Timeout function for CHx(x = 0 – 2)

Level 1
Level 2
Level 3
Level 4
Level 5
Level 6
Level 7
Level 8
Level 9Level 10
Level 11
Level 12
Level 13
Level 14
Level 15 (highest)
UnusedUsed

Timeout detection time
for CHx(x = 0 – 2)Long mode
Short mode

Count up during low
period of timeout
detection for CHx(x = 0 – 2)

UnusedUsedCount up during highperiod of timeout
detection for CHx(x = 0 – 2)

UnusedUsed

Set Counter ofchecking bus busy

1000

HS300xサンプルソフトウェアマニュアル

指定したチャネルの送信終了割り込み(TEI)の優先
レベルを選択できます。
“Level 1”～”Level 15”の範囲で設定してください。

指定したチャネルのタイムアウト検出機能を有効にできます。
“Unused”の場合、タイムアウト検出機能無効“Used”の場合、タイムアウト検出機能有効
指定したチャネルのタイムアウト検出時間を選択できます。
“Long mode”の場合、ロングモードを選択。
“Short mode”の場合、ショートモードを選択。
指定したチャネルのタイムアウト検出機能有効
時、SCL ラインが Low 期間中にタイムアウト検出
機能の内部カウンタのカウントアップを有効にできます。
“Unused”の場合、SCL ラインが Low 期間中のカ
ウントアップ禁止。
“Used”の場合、SCL ラインが Low 期間中のカウ
ントアップ有効。
指定したチャネルのタイムアウト検出機能有効
時、SCL ラインが High 期間中にタイムアウト検出
機能の内部カウンタのカウントアップを有効にできます。
“Unused”の場合、SCL ラインが High 期間中のカ
ウントアップ禁止。
“Used”の場合、SCL ラインが High 期間中のカウ
ントアップ有効。
API 関数のバスチェック処理時に、ソフトウェアによりタイムアウトカウンタ(バス確認回数)を設定できます。

Resources
SDAx Pins

CheckedSCLx Pins

CheckedR01AN5897JJ0153
September 7.23

Rev.1.53

使用する端子を設定します。
使用する端子のチェックボックスにチェックしてください。

Page 35 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ

HS300xサンプルソフトウェアマニュアル

表 5-12 RX r_sci_iic_rx 設定一覧
設定項目

設定値

説明

Configurations
Set parameterchecking enable

System Default
Not
IncludeMCU supported
channels for CHx(x = 0 – 12)

Not supported
SupportedSCI IIC bitrate (bps)for CHx(x = 0 – 12)Interrupt Priority forCHx(x = 0 – 12)384000Digital noise filter(NFEN bit) for CHx(x = 0 – 12)

Level 1
Level 2
Level 3
Level 4
Level 5
Level 6
Level 7
Level 8
Level 9Level 10
Level 11
Level 12
Level 13
Level 14
Level 15 (highest)
DisableEnableNoise Filter Setting
Register (NFCS bit)for CHx(x = 0 – 12)

The clock divided by 1
The clock divided by 2
The clock divided by 4
The clock divided by 8

I2C Mode Registger
1 (IICDL bit) for CHx(x = 0 – 12)18

Software bus busy
ckeck counter

1000

R01AN5897JJ0153
September 7.23

Rev.1.53

パラメータチェック処理をコードに含めるか選択できます。
Not の場合、パラメータチェック処理をコードから省略します。
Include の場合、パラメータチェック処理をコードに含めます。
該当チャネルを使用するかを選択できます。
“Not supported”の場合、該当チャネルに関する処
理をコードから省略します。
“Supported”の場合、該当チャネルに関する処理をコードに含めます。
ビットレートを設定してください。
384000(384kbit/s)以下を設定してください。
コンディション割り込み、受信割り込み、送信空割
り込み、送信完了割り込みの優先レベルを設定してください。
“Level 1”～”Level 15”の範囲で設定してください。

SSCL、SSDA 入力信号のノイズ除去機能を使用するか選択できます。
“Disable”の場合、ノイズ除去機能を無効にします。
“Enable”の場合、ノイズ除去機能を有効にします。
デジタルノイズフィルタのサンプリングクロック
を選択します。
“The clock divided by 1”の場合、1 分周のクロックをノイズフィルタに使用します。
“The clock divided by 2”の場合、2 分周のクロックをノイズフィルタに使用します。
“The clock divided by 4”の場合、4 分周のクロックをノイズフィルタに使用します。
“The clock divided by 8”の場合、8 分周のクロックをノイズフィルタに使用します。
SSCL 端子出力の立ち下がりに対する SSDA 端子出力の遅延を選択します。
“1”～“31”の範囲で設定してください。
バスビジー判定のカウント数を設定します。
簡易 I2C の API 関数のバスチェック処理時の、タイムアウトカウンタ(バス確認回数)を設定できます。

Page 36 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ

Seting port setting
processing

HS300xサンプルソフトウェアマニュアル

Not include port setting
Include port setting

ポートを SSCL、SSDA 端子として使用するための設定処理をコードに含めるか選択できます。
“Not include port setting”の場合、ポートの設定処理をコードから省略します。
“Include port setting”の場合、ポートの設定処理をコードに含めます。

CheckedChecked

使用する端子を設定します。
使用する端子のチェックボックスにチェックしてください。

Resources
SSDAx Pins
SSCLx Pins

R01AN5897JJ0153
September 7.23

Rev.1.53

Page 37 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ
5.3.3

HS300xサンプルソフトウェアマニュアル

RL78 ファミリ

Code Generator の周辺機能にあるシリアルを選択することで、Peripheral Functions タブに設定可能な項目が表示されます。
設定可能な項目と設定値は以下の通りです。

表 5-13 RL78 シリアル設定一覧
設定項目
SAUx

設定値

説明

使用しない
UARTxx
CSIxx
IICxx

使用するチャネルの通信機能を設定します。
r_hs300x を使用する場合は、IICxx を選択してく
ださい。

転送レート

1000000

転送完了割り込み優
先順位 (INTIICxx)

マスタ送信完了

高
レベル 1
レベル 2
低
Checked

ボーレートを設定します。
rm_hs300x を使用する場合は、100000 に設定してください。
転送完了割り込みの割り込み優先順位を設定します。

マスタ受信完了

Checked

マスタエラー

Checkedチャネル
チャネル x

IICxx

マスタ送信完了によるコールバック機能を設定します。
マスタ受信完了によるコールバック機能を設定します。
通信エラーによるコールバック機能を設定しま
す。

IICAx
転送モード
転送モード

使用しない
シングルマスタスレーブ

使用するチャネルの通信機能を設定します。
シングルマスタを選択してください。

カウントク

fCLK
fCLK/2

カウント・クロックを設定します。

アドレス
動作モード

16
標準

自局アドレスを設定します。
動作モードを設定します。

転送クロック (fSCL)

ファスト・モード/
ファスト・モード・プラス
100000設定

通信完了割り込み優
先順位(INTIICAx)

マスタ送信完了

高
レベル 1
レベル 2
低
Checkedマスタ受信完了

CheckedR01AN5897JJ0153
September 7.23

Rev.1.53

ボーレートを設定します。
400000 以下に設定してください。
通信完了割り込みの割り込み優先順位を設定します。

マスタ送信完了によるコールバック機能を設定します。
マスタ受信完了によるコールバック機能を設定します。
Page 38 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ

HS300xサンプルソフトウェアマニュアル

マスタエラー

Checked

通信エラーによるコールバック機能を設定します。

マスタ送信完/受信完
了コールバック時にストップ・コンディ
ションを生成Checked

コールバック時のストップ・コンディション生成を設定します。
チェックを外してください。

R01AN5897JJ0153
September 7.23

Rev.1.53

Page 39 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ

HS300xサンプルソフトウェアマニュアル

5.3.4 RZ ファミリ
FSP Configurator の Stack タブで r_riic_master の Stack を選択することにより、Properties タブに設定可
能な項目が表示されます。
設定可能な項目と設定値は以下の通りです。

表 5-14 RZ r_riic_master 設定一覧
設定項目

設定値

説明

Default (BSP)

パラメータチェック処理をコードに含めるか選択できます。
Disabled の場合、パラメータチェック処理をコードから省略します。
Enabled の場合、パラメータチェック処理をコードに含めます。
スレーブアドレスに 10-bit addressing をサポートするか設定する。
rm_hs300x を使用する場合は、Disabled に設定
してください。

CommonParameter Checking

EnabledDisabled

10-bit slave
addressing

EnabledDisabled

Module g_i2c_master0 I2C Master Driver on r_iic_masterName

g_i2c_master3

モジュール名を設定します。

Channel3

使用するチャネル番号を設定します。

RateStandard

ボーレートを設定します。
rm_hs300x を使用する場合は、Standard もしくは、Fast-mode に設定してください。

Fast-mode
Fast-mode plus
Rise Time (ns)120

Fall Time (ns)120

Duty Cycle (%)

50

SCL の立ち上がり時間を設定します。使用するボードに合わせて設定してください。
SCL の立ち下がり時間を設定します。使用するボードに合わせて設定してください。
SCL のデューティ比を設定します。

Noise Filter Stages

1

1IICφ サイクル以下のノイズを除去します。

2

2IICφ サイクル以下のノイズを除去します。

3

3IICφ サイクル以下のノイズを除去します。

4

4IICφ サイクル以下のノイズを除去します。

Slave Address

0x00

Address Mode

7-Bit

接続するデバイスのスレーブアドレスを設定します。
rm_comms_i2c により上書きされますので、設定は必要ありません。
接続するデバイスのスレーブアドレスモードを設定します。
rm_comms_i2c により上書きされますので、設定は必要ありません。
I2C バスのタイムアウト時間を設定します

10-BitTimeout Mode

Short Mode
Long Mode

Callback

R01AN5897JJ0153
September 7.23

rm_comms_i2c_callback

Rev.1.53

ユーザコールバック関数名を設定します。
rm_comms_i2c により自動的に設定されます。

Page 40 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ

Interrupt Priority
Level

0 (highest)
1

HS300xサンプルソフトウェアマニュアル
I2C バスドライバの割り込み優先レベルを設定
します。

2
3
4
5
6
7
8
9
10
11
12
13
14
15

R01AN5897JJ0153
September 7.23

Rev.1.53

Page 41 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ

HS300xサンプルソフトウェアマニュアル

6. デバイス変更ガイド
サンプルプロジェクトを異なるデバイスで動作させるには、以下の手順に従ってください。
移行元デバイスのサンプルプロジェクトは、事前に Workspace にインポートしてください。

6.1

RA サンプルプロジェクト

サンプルプロジェクトを変更する場合の手順は以下の通りです。
本章解説では、例としてサンプルプロジェクト”HS300x_RA6M4_NonOS”から、EK-RA2E1 ボードで使用できるプロジェクトへの変更手順を記載します。
なお、PMOD1 の記述については”OptionType6A”を適用したボードを使用する場合の手順となります。

6.1.1

サンプルプロジェクトのインポート

メニューから、インポートを選択します。
表示されたインポートウィンドウで、”Rename & Import Existing C/C++ Project into Workspace”を選択し、[Next]ボタンを押下します。

R01AN5897JJ0153
September 7.23

Rev.1.53

Page 42 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ

HS300xサンプルソフトウェアマニュアル[Browse]ボタンを押下し、フォルダの選択ウィンドウを表示します。
インポート済みのサンプルプロジェクトから、移行元デバイスのプロジェクトのフォルダを選択し、[フォルダの選択]ボタンを押下します。

プロジェクト名の入力および、移行元デバイスのプロジェクトを選択し、[Finish]ボタンを押下します。

R01AN5897JJ0153
September 7.23

Rev.1.53

Page 43 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ
6.1.2

HS300xサンプルソフトウェアマニュアル

FSP Configurator の設定変更

プロジェクトツリーの Configuratorn.xml をダブルクリックし、FSP Configurator を開きます。
BSP タブで Board および Device を変更します。
ルネサス製ボードに変更する場合は、Board の設定のみ変更してください。
ルネサス製以外のボードに変更する場合は、Board を”Custom User Board (Any Device)”に変更後、Deviceを使用するデバイスに変更してください。

Clocks タブで、クロック設定を変更します。
Board を”Custom User Board (Any Device)”に変更した場合は、使用するボードに合わせてクロック設定を変更してください。
Board をルネサス製ボードに変更した場合は、自動的に設定が変更されます。

R01AN5897JJ0153
September 7.23

Rev.1.53

Page 44 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ

HS300xサンプルソフトウェアマニュアル

Pins タブで、使用するボードに合わせて、端子設定を変更します。
ルネサス製ボードを使用する場合は、Select Pin Configuration を”RA6M4 EK”から使用するボードに変更することで、自動的に割り当てが行われます。

Select Pin Configuration のドロップダウンリストに変更したいボードが表示されない場合は、[Manage
Configuration]をクリックし、表示された Manage Pin Configuration ウィンドウで、使用したいボードを選択
してください。

R01AN5897JJ0153
September 7.23

Rev.1.53

Page 45 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ

HS300xサンプルソフトウェアマニュアル

ただし、EK-RA2E1 ボードの場合、上記の割り当てでは PMOD Type 2A に対応した SPI 通信の端子設定が適用されます。
このサンプルソフトウェアでは、PMOD Type 6A を使用するため、PMOD Type 6A に対応した I2C 通信の端子設定への変更が必要です。
EK-RA2E1 ボードでは、PMOD1 に SCI2、PMOD2 に SCI1 が割り当てられています。
PMOD1(OptionType6A)を使用する場合は P301 と P302 が、PMOD2 を使用する場合は P401 と P402 が I2C通信を行う端子となるため、Select Pin Configuration の自動割り当て後、Pin Configuration にて再設定を行います。

R01AN5897JJ0153
September 7.23

Rev.1.53

Page 46 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ

HS300xサンプルソフトウェアマニュアル

端子設定の生成を有効にするには、[Generate data]にチェックを入れ、テキストボックスに任意の名称を入力してください。
入力された名称は設定した端子構成に紐付けられるため、他の端子構成と重複しないよう、固有の名称としてください。
例の場合、”g_bsp_pin_cfg_2e1”です。

R01AN5897JJ0153
September 7.23

Rev.1.53

Page 47 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ

HS300xサンプルソフトウェアマニュアル

Stacks タブで、各コンポーネント設定を変更します。
使用するボードに合わせて、r_iic_master もしくは r_sci_i2c の設定を変更してください。
IIC の端子を使用する場合は、I2C Master Driver on r_sci_i2c”の stack を削除してから、”I2C Master Driver
on r_iic_mster”の stack を追加してください。
EK-RA2E1 ボードでは、PMOD1 に SCI2、PMOD2 に SCI1 が割り当てられています。
PMOD1 を使用する場合は channel を 2 に、PMOD2 を使用する場合は channel を 1 に設定します。

R01AN5897JJ0153
September 7.23

Rev.1.53

Page 48 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ

HS300xサンプルソフトウェアマニュアル“g_ioport I/O Port”の Pin Configration Name に、使用する端子構成の名称を入力してください。
例の場合、”g_bsp_pin_cfg_2e1”です。

他 stack でエラーが表示されている場合は、表示されたエラーに従って指定の項目を変更してください。

[Generate Project Content]を押下して、ファイルを生成します。
プロジェクトをビルドします。
メニューから[Debug Configurations]を選択し、使用するボードに接続するエミュレータに合わせて、
Debugger の設定を変更してください。

6.1.3

ツールチェイン設定変更

GCC ARM Embedded ツールチェイン以外のツールチェインを使用する場合は、本プロジェクトから
RA_HS300X.c (Non-OS)または、hs300x_sensor_thread_entry.c 及び sensor_thread_common.c、
sensor_thread_common.h (FreeRTOS、Azure)をコピーしてプロジェクトを作成してください。

R01AN5897JJ0153
September 7.23

Rev.1.53

Page 49 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ
6.2

HS300xサンプルソフトウェアマニュアル

RX サンプルプロジェクト

サンプルプロジェクトを変更する場合の手順は以下の通りです。
本章解説では、例としてサンプルプロジェクト”HS300x_RX65N_NonOS”から、RSKRX231 ボードで使用できるプロジェクトへの変更手順を記載します。

6.2.1

サンプルプロジェクトのインポート

メニューから、インポートを選択します。
表示されたインポートウィンドウで、”Rename & Import Existing C/C++ Project into Workspace”を選択し、[Next]ボタンを押下します。

[Browse]ボタンを押下し、フォルダの選択ウィンドウを表示します。
インポート済みのサンプルプロジェクトから、移行元デバイスのプロジェクトのフォルダを選択し、[フォルダの選択]ボタンを押下します。

R01AN5897JJ0153
September 7.23

Rev.1.53

Page 50 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ

HS300xサンプルソフトウェアマニュアル

プロジェクト名の入力および、移行元デバイスのプロジェクトを選択し、[Finish]ボタンを押下します。

R01AN5897JJ0153
September 7.23

Rev.1.53

Page 51 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ
6.2.2

HS300xサンプルソフトウェアマニュアル

デバイスの変更

プロジェクトツリーでインポートしたプロジェクトを選択し、右クリックでコンテキストメニューを表示します。表示されたメニューから、”Change Device”を選択します。

Change Device ウィンドウで、変更したいボードもしくは、デバイスを選択し、[Next]ボタンを押下します。

R01AN5897JJ0153
September 7.23

Rev.1.53

Page 52 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ

HS300xサンプルソフトウェアマニュアル

Warning が表示された場合、内容を確認し問題無ければ、[Next]を押下します。

変更内容が表示されますので、[Finish]ボタンを押下して、変更を実行します。

R01AN5897JJ0153
September 7.23

Rev.1.53

Page 53 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ
6.2.3

HS300xサンプルソフトウェアマニュアル

Smart Configurator 設定の変更

プロジェクトツリーで、デバイス変更したインポートしたプロジェクトの.scfg ファイルをダブルクリック
し、Smart Configurator を表示します。

Board タブで、変更したボード、デバイスに変更されていることを確認します。

Clocks タブで、使用するボードに合わせてクロックを設定します。

R01AN5897JJ0153
September 7.23

Rev.1.53

Page 54 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ

HS300xサンプルソフトウェアマニュアル

Components タブで、使用するボードに合わせて、各 component の設定を変更します。
RSK RX231 では、PMOD に SCI8 が割り当てられていますので、r_sci_iic_rx の MCU supported channels
for CH2 を”Not supported”に、MCU supported channels for CH8 を”Supported”に変更します。
Resources の SCI8, SSCL8 Pin, SSDA8 pin をチェックします。

Pins タブの Pin function で、SCI8 端子に端子機能が割り当てられていることを確認します。

RSK RX231 のボード情報は、PMOD Type 2A(Extend SPI)で使用するように割り当てられていますので、I2C で使用する場合は、Warning が表示されますが問題ありません。
また、センサーボードを接続するには、PMOD Type 2A を PMOD Type 6A に変換するボードが必要となります。

R01AN5897JJ0153
September 7.23

Rev.1.53

Page 55 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ

HS300xサンプルソフトウェアマニュアル[Generate Code]アイコンを押下して、コード生成を行います。

プロジェクトをビルドします。
メニューから[Debug Configurations]を選択し、使用するボードに接続するエミュレータに合わせて、
Debugger の設定を変更してください。

6.2.4 ツールチェイン設定変更
CC-RX ツールチェイン以外のツールチェインを使用する場合は、本プロジェクトから RX_HS300X.c(Non-OS)または、main.c と hs300x_sensor_thread_entry.c (FreeRTOS)または、
hs300x_sensor_thread_entry.c 及び sensor_thread_common.c、sensor_thread_common.h (Azure)をコピーしてプロジェクトを作成してください。

R01AN5897JJ0153
September 7.23

Rev.1.53

Page 56 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ
6.3

HS300xサンプルソフトウェアマニュアル

RL78 サンプルプロジェクト

コード生成を使用する場合、新規にサンプルプロジェクトを作成する手順となります。
本章解説では、例として RSK RL78/G1G ボードで使用できる新規プロジェクトの作成手順を記載します。

6.3.1

新規プロジェクトの作成

メニューから、[File]-[New]-[Renesas C/C++ project] – [Renesas RL78]を選択します。
テンプレートから、"Renesas CC-RL C Executable Project”を選択し、[Next]ボタンを押下します。

プロジェクト名(例:”HS300x_RL78G1G_NonOS”)を入力し、[Next]ボタンを押下します。

R01AN5897JJ0153
September 7.23

Rev.1.53

Page 57 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ

HS300xサンプルソフトウェアマニュアル

Target Device を変更したいデバイス(例:R5F11EFA)に変更し、[Next]ボタンを押下します。

Use Peripheral Code Generator をチェックし、[Next]ボタンを押下します。

[Finish]ボタンを押下します。

R01AN5897JJ0153
September 7.23

Rev.1.53

Page 58 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ
6.3.2

HS300xサンプルソフトウェアマニュアル

Code Generator の設定

共通/クロック発生回路の端子割り当て設定タブで、使用するボードに合わせて端子割り当てを変更します。

共通/クロック発生回路のクロック設定タブで、使用するボードに合わせてクロック設定を変更します。

R01AN5897JJ0153
September 7.23

Rev.1.53

Page 59 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ

HS300xサンプルソフトウェアマニュアル

共通/クロック発生回路のオンチップ・デバッグ設定タブで、オンチップ・デバッグ動作設定を”使用する”に設定します。

シリアル・アレイ・ユニットを使用する場合は、シリアル・アレイ・ユニットもしくは、シリアルのチャ
ネルタブで、使用するボードの PMOD に割り当てられているチャネルを”IICxx”に設定します。
【注】該当端子はポート機能で N-ch が選択されている必要があります。

R01AN5897JJ0153
September 7.23

Rev.1.53

Page 60 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ

HS300xサンプルソフトウェアマニュアル有効にしたシリアル・アレイ・ユニットの IICxx タブで、転送レートを 400000 または、100000 に、転送完了割り込み優先順位を任意の値に、コールバック機能設定を全て有効に設定します。

シリアル・インタフェース IICA を使用する場合は、シリアル・インタフェース IICA もしくは、シリアルチャネルで、使用するボードの PMOD に割り当てられているチャネルの転送モードを、”シングルマスタ”に設定します。

R01AN5897JJ0153
September 7.23

Rev.1.53

Page 61 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ

HS300xサンプルソフトウェアマニュアル

シングルマスタに設定したチャネルの設定で、動作モード設定をファスト・モード、400000 または、標準100000 に、割り込み優先設定を任意の値に、コールバック機能設定を全て有効に、コールバック拡張機能設定を無効に設定します。

タイマ・アレイ・ユニットの任意のチャネルもしくは、タイマの任意の TAU の一般設定で、機能を”イン
ターバル・タイマ”に設定します。

R01AN5897JJ0153
September 7.23

Rev.1.53

Page 62 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ

HS300xサンプルソフトウェアマニュアル

インターバル・タイマに設定したチャネルのインターバル時間を”100µs”に、タイマ割り込みを有効に、割り込み優先レベルを任意の値に設定します。

[Code Generate]ボタンを押下し、コードを生成します。

6.3.3

生成コードの変更使用する MCU によりコード生成のバージョンが異なるため、コード生成の出力先がこのサンプルソフト
ウェアとは変更されている場合があります。

R01AN5897JJ0153
September 7.23

Rev.1.53

Page 63 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ

HS300xサンプルソフトウェアマニュアル

r_cg_sau_user.c、r_cg_iica_user.c もしくは、r_cg_serial_user.c を開き、以下のコードを追加します。
r_comms_i2c_if.h のインクルード定義/*************************************************************************
Includes**************************************************************************#include "r_cg_macrodriver.h"#include "r_cg_sau.h"/* Start user code for include. Do not edit comment generated here */#include “r_comms_i2c_if.h”/* End user code. Do not edit comment generated here */#include "r_cg_userdefine.h"

コールバック関数への、rm_comms_i2c_bus0_callback()関数の追加送受信完了コールバックは、引数を false に、エラーコールバックは、引数を true に設定してください。
/************************************************************************** Function Name: r_iic00_callback_master_error* Description : This function is a callback function when IIC00 master err* Arguments: flag *status flag
* Return Value : None**************************************************************************
static void r_iic00_callback_master_error(MD_STATUS flag){/* Start user code. Do not edit comment generated here */rm_comms_i2c_bus0_callback(true);/* End user code. Do not edit comment generated here */}/************************************************************************** Function Name: r_iic00_callback_master_receiveend* Description : This function is a callback function when IIC00 finishes* Arguments: None* Return Value : None**************************************************************************
static void r_iic00_callback_master_receiveend(void){/* Start user code. Do not edit comment generated here */rm_comms_i2c_bus0_callback(false);/* End user code. Do not edit comment generated here */}/************************************************************************** Function Name: r_iic00_callback_master_sendend* Description : This function is a callback function when IIC00 finishes* Arguments: None* Return Value : None**************************************************************************
static void r_iic00_callback_master_sendend(void){/* Start user code. Do not edit comment generated here */rm_comms_i2c_bus0_callback(false);/* End user code. Do not edit comment generated here */}R01AN5897JJ0153
September 7.23

Rev.1.53

Page 64 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ

HS300xサンプルソフトウェアマニュアル

t_cg_tau_user.c もしくは、r_cg_timer_user.c を開き、以下のコードを追加します。
(sensor_name)_delay_callback()関数の external 宣言/*************************************************************************
Global variables and functions**************************************************************************/* Start user code for global. Do not edit comment generated here */extern void hs300x_delay_callback(void);/* End user code. Do not edit comment generated here */タイマ割り込みのコールバック関数に、(sensor_name)_delay_callback()関数のコール処理/************************************************************************** Function Name: r_tau0_channel0_interrupt* Description : This function INTTM00 interrupt service routine.
* Arguments: None* Return Value : None**************************************************************************
static void __near r_tau0_channel0_interrupt(void){/* Start user code. Do not edit comment generated here */hs300x_delay_callback();/* End user code. Do not edit comment generated here */}r_cg_tau.c もしくは、r_cg_timer.c を開き、以下のコードを追加します。
上記ファイルのユーザコード記述部分に R_TAU0_Channel0_Reset()関数の定義
void R_TAU0_Channel0_Reset(void){/* function not supported by this module */}r_cg_tau.h もしくは、r_cg_timer.h を開き、以下のコードを追加します。
R_TAU0_Channel0_Reset()関数のプロトタイプ宣言/*************************************************************************
Global functions**************************************************************************
void R_TAU0_Create(void);void R_TAU0_Channel0_Start(void);void R_TAU0_Channel0_Stop(void);/* Start user code for function. Do not edit comment generated here */void R_TAU0_Channel0_Reset(void);/* End user code. Do not edit comment generated here */R01AN5897JJ0153
September 7.23

Rev.1.53

Page 65 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ

HS300xサンプルソフトウェアマニュアル

r_cg_main.c もしくは、r_main.c を開き、以下のコードを追加します。
各関数のプロトタイプ宣言/*************************************************************************
Global variables and functions**************************************************************************/* Start user code for global. Do not edit comment generated here */void g_comms_i2c_bus0_quick_setup(void);void demo_err(void);void g_hs300x_sensor0_quick_setup(void);void start_hs300x_demo(void);/* End user code. Do not edit comment generated here */main()関数へのコード追加/* Open the Bus */g_comms_i2c_bus0_quick_setup();/* Open HS300x */g_hs300x_sensor0_quick_setup();while (1U){start_hs300x_demo();}g_comms_i2c_bus0_quick_setup()関数、demo_err()関数の定義
void g_comms_i2c_bus0_quick_setup(void){/* bus has been opened by startup process */}void demo_err(void){
while(1){// nothing}}

R01AN5897JJ0153
September 7.23

Rev.1.53

Page 66 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ
6.3.4

HS300xサンプルソフトウェアマニュアル

サンプルソースの変更

サンプルプロジェクト”HS300x_RL78G14_NonOS”のプロジェクトツリーから、"application" "general""r_bsp" "r_comms_i2c_rl" "r_config" "r_hs300x"フォルダを選択し、右クリックで表示されるコンテキストメ
ニューから”Copy”を選択してください。
その後、新しく作成したプロジェクトの”src”フォルダを選択し、右クリックで表示されるコンテキストメ
ニューから”paste”を選択し、ファイルをコピーしてください。

Copy

R01AN5897JJ0153
September 7.23

Rev.1.53

Page 67 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ

HS300xサンプルソフトウェアマニュアル

r_config フォルダにある r_comms_i2c_rl_config.h を開き、以下の定義の値を変更します。
・COMMS_I2C_CFG_BUSx_DRIVER_TYPE
・COMMS_I2C_CFG_BUSx_DRIVER_CH
シリアル・アレイ・ユニット チャネル 0 を使用する場合/* SPECIFY DRIVER TYPE, CHANNEL NO. *//* For Bus No.0 */#define COMMS_I2C_CFG_BUS0_DRIVER_TYPE
Driver type of I2C Bus */#define COMMS_I2C_CFG_BUS0_DRIVER_CH(COMMS_DRIVER_SAU_I2C) /*(0) /* Channel No. */シリアル・インタフェース IICA チャネル 0 を使用する場合/* SPECIFY DRIVER TYPE, CHANNEL NO. *//* For Bus No.0 */#define COMMS_I2C_CFG_BUS0_DRIVER_TYPE
type of I2C Bus */#define COMMS_I2C_CFG_BUS0_DRIVER_CH(COMMS_DRIVER_I2C) /* Driver(0) /* Channel No. */その他の定義については、5.コンフィグ設定を参照してください。

コード生成の周辺機能名が、シリアル・アレイ・ユニット、シリアル・インタフェース IICA および、タイ
マ・アレイ・ユニットとなっている場合は、以下の箇所についてもサンプルソースを修正してください。
src/general/r_smc_entry.h“r_cg_serial.h”を”r_cg_sau.h”もしくは、”r_cg_iica.h”に変更“r_cg_timer.h”を”r_cg_tau.h”に変更/*************************************************************************
Includes**************************************************************************#include "r_cg_macrodriver.h"#include "r_cg_sau.h"#include "r_cg_tau.h"#include "r_cg_port.h"#include "r_cg_cgc.h"#include "r_cg_userdefine.h"R01AN5897JJ0153
September 7.23

Rev.1.53

Page 68 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ

HS300xサンプルソフトウェアマニュアル

プロジェクトのプロパティを開きます。
プロパティの[C/C++ Build]-[Settings]を選択し、settings を開きます。

R01AN5897JJ0153
September 7.23

Rev.1.53

Page 69 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ

HS300xサンプルソフトウェアマニュアル

Tool Settings タブの[Compiler]-[Source]を選択し、[Add]アイコンを押下します。
[Add directory path]ダイアログで、[Workspace]ボタンを押下し、表示されたプロジェクトの一覧から、新しく作成したプロジェクトの”src”フォルダを選択し、[OK]ボタンを押下します。
”Add subdirectroies”にチェックを入れて、[OK]ボタンを押下します。

R01AN5897JJ0153
September 7.23

Rev.1.53

Page 70 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ

HS300xサンプルソフトウェアマニュアル

Tool settings タブの[Compiler]-[Source]-[Language]を選択し、Language standard of C language を”C99
language standard”に変更します。
[Apply and Close]ボタンを押下して、プロパティを閉じます。

プロジェクトをビルドします。
メニューから[Debug Configurations]を選択し、使用するボードに接続するエミュレータに合わせて、
Debugger の設定を変更してください。

R01AN5897JJ0153
September 7.23

Rev.1.53

Page 71 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ
6.4

HS300xサンプルソフトウェアマニュアル

RZ サンプルプロジェクト

サンプルプロジェクトを変更する場合の手順は以下の通りです。
本章解説では、例としてサンプルプロジェクト”HS300x_RZG2L_NonOS”から、SMARC ボードで使用できるプロジェクトへの変更手順を記載します。

6.4.1

サンプルプロジェクトのインポート

メニューから、インポートを選択します。
表示されたインポートウィンドウで、”Rename & Import Existing C/C++ Project into Workspace”を選択し、[Next]ボタンを押下します。

[Browse]ボタンを押下し、フォルダの選択ウィンドウを表示します。
インポート済みのサンプルプロジェクトから、移行元デバイスのプロジェクトのフォルダを選択し、[SelectFolder]ボタンを押下します。

R01AN5897JJ0153
September 7.23

Rev.1.53

Page 72 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ

HS300xサンプルソフトウェアマニュアル

プロジェクト名の入力および、移行元デバイスのプロジェクトを選択し、[Finish]ボタンを押下します。

R01AN5897JJ0153
September 7.23

Rev.1.53

Page 73 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ
6.4.2

HS300xサンプルソフトウェアマニュアル

FSP Configurator の設定変更

プロジェクトツリーの Configuratorn.xml をダブルクリックし、FSP Configurator を開きます。
BSP タブで Board および Device を変更します。
ルネサス製ボードに変更する場合は、Board の設定のみ変更してください。
ルネサス製以外のボードに変更する場合は、Board を”Custom User Board (Any Device)”に変更後、Deviceを使用するデバイスに変更してください。

Clocks タブで、クロック設定を変更します。
Board を”Custom User Board (Any Device)”に変更した場合は、使用するボードに合わせてクロック設定を変更してください。
Board をルネサス製ボードに変更した場合は、自動的に設定が変更されます。

R01AN5897JJ0153
September 7.23

Rev.1.53

Page 74 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ

HS300xサンプルソフトウェアマニュアル

Stacks タブで、各コンポーネント設定を変更します。
使用するボードに合わせて、r_riic_master の設定を変更してください。
RZ/G2L Evaluation Kit (SMARC)ボードでは、PMOD1 に RIIC3 が割り当てられています。
PMOD1 を使用する場合は、channel を 3 に設定します。

[Generate Project Content]を押下して、ファイルを生成します。
プロジェクトをビルドします。
メニューから[デバッグの構成]を選択し、使用するボードに接続するエミュレータに合わせて、Debuggerの設定を変更してください。

R01AN5897JJ0153
September 7.23

Rev.1.53

Page 75 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ
6.4.3

HS300xサンプルソフトウェアマニュアル

サンプルソースの変更

src フォルダにある pin_data.c を開き、使用するボードに合わせて、g_bsp_pin_cfg_data の設定を変更してください。
RZ/G2L Evaluation Kit (SMARC)ボードでは、PMOD1 に RIIC3 が割り当てられています。
PMOD1 を使用する場合は、P18_0 を RIIC3_SDA (Function 3)に、P18_1 を RIIC3_SCL (Function 3)に設定します。
const ioport_pin_cfg_t g_bsp_pin_cfg_data[] ={{.pin= BSP_IO_PORT_18_PIN_00,.pin_cfg = ((uint32_t) IOPORT_CFG_PERIPHERAL_PIN |(uint32_t) IOPORT_PERIPHERAL_MODE3)},{.pin= BSP_IO_PORT_18_PIN_01,.pin_cfg = ((uint32_t) IOPORT_CFG_PERIPHERAL_PIN |(uint32_t) IOPORT_PERIPHERAL_MODE3)},};

R01AN5897JJ0153
September 7.23

Rev.1.53

Page 76 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ

HS300xサンプルソフトウェアマニュアル

7. 温湿度データの確認方法
リアルタイムの温湿度データは、以下の手順に従って確認することができます。
Debug を実行後、Expressions ウィンドウを開いてください。
Expressions ウィンドウは[Window]→[Show View]→[Expressions]から開くことができます。

Expressions 内の Add new expression をクリックして、gs_hs300x_data を追加してください。

R01AN5897JJ0153
September 7.23

Rev.1.53

Page 77 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ

HS300xサンプルソフトウェアマニュアル

追加した変数を右クリックすると、Enable Real-time Refresh を選択することができます。

Debug をスタートすると、リアルタイムの値を確認することができます。

R01AN5897JJ0153
September 7.23

Rev.1.53

Page 78 of 79

RAファミリ、RXファミリ、RL78ファミリ、RZファミリ

HS300xサンプルソフトウェアマニュアル

改訂記録
Rev.
Rev.1.00
Rev.1.10

発行日
June 30, 2021
September 30,
2021

Rev.1.20

December 20,
2021

Rev.1.30
Rev.1.40

March 1, 2022
May 12, 2022

P30
P4,P5,
P7,P8

Rev.1.50
Rev.1.51
Rev.1.52

August 30, 2022
March 3, 2023
March 29, 2023-

Rev.1.53

September 7,
2023‐

R01AN5897JJ0153
September 7.23

Rev.1.53

ページ
P10,P13
P7, P14,
P36, P41,
P45, P58
-

改訂内容
ポイント
初版リリース
追加機能“Programming モード”の追加
RE01 256KB サンプルプロジェクトによる項目追加

追加：複数 ZMOD センサ応用
追加：RX Azure サポート
他小改訂
追加：RL78 の複数 I2C デバイス対応
RA 動作環境修正
RX 動作環境修正
Programming モードの修正
RE01 256KB/1500KB 動作環境修正
RZ ファミリの追加
更新：RL78 の動作環境
更新：RA、RX、RL78、RZ の動作環境
更新：サンプルソフトウェアメインフロー
更新：デバイス変更ガイド
更新：デバイス変更ガイド
削除：RE01 の項目

Page 79 of 79

製品ご使用上の注意事項
ここでは、マイコン製品全体に適用する「使用上の注意事項」について説明します。個別の使用上の注意事項については、本ドキュメントおよびテク
ニカルアップデートを参照してください。
1.

静電気対策
CMOS 製品の取り扱いの際は静電気防止を心がけてください。CMOS 製品は強い静電気によってゲート絶縁破壊を生じることがあります。運搬や保存の際には、当社が出荷梱包に使用している導電性のトレーやマガジンケース、導電性の緩衝材、金属ケースなどを利用し、組み立て工程にはアースを施してください。プラスチック板上に放置したり、端子を触ったりしないでください。また、CMOS 製品を実装したボードについても同様の扱いをしてください。

2.

電源投入時の処置
電源投入時は、製品の状態は不定です。電源投入時には、LSI の内部回路の状態は不確定であり、レジスタの設定や各端子の状態は不定です。外部リ
セット端子でリセットする製品の場合、電源投入からリセットが有効になるまでの期間、端子の状態は保証できません。同様に、内蔵パワーオンリセッ
ト機能を使用してリセットする製品の場合、電源投入からリセットのかかる一定電圧に達するまでの期間、端子の状態は保証できません。

3.

電源オフ時における入力信号
当該製品の電源がオフ状態のときに、入力信号や入出力プルアップ電源を入れないでください。入力信号や入出力プルアップ電源からの電流注入により、誤動作を引き起こしたり、異常電流が流れ内部素子を劣化させたりする場合があります。資料中に「電源オフ時における入力信号」についての記載のある製品は、その内容を守ってください。

4.

未使用端子の処理
未使用端子は、「未使用端子の処理」に従って処理してください。CMOS 製品の入力端子のインピーダンスは、一般に、ハイインピーダンスとなっています。未使用端子を開放状態で動作させると、誘導現象により、LSI 周辺のノイズが印加され、LSI 内部で貫通電流が流れたり、入力信号と認識されて誤動作を起こす恐れがあります。

5.

クロックについてリセット時は、クロックが安定した後、リセットを解除してください。プログラム実行中のクロック切り替え時は、切り替え先クロックが安定した後に切り替えてください。リセット時、外部発振子（または外部発振回路）を用いたクロックで動作を開始するシステムでは、クロックが十分安定した
後、リセットを解除してください。また、プログラムの途中で外部発振子（または外部発振回路）を用いたクロックに切り替える場合は、切り替え先のクロックが十分安定してから切り替えてください。

6.

入力端子の印加波形
入力ノイズや反射波による波形歪みは誤動作の原因になりますので注意してください。CMOS 製品の入力がノイズなどに起因して、VIL（Max.）から
VIH（Min.）までの領域にとどまるような場合は、誤動作を引き起こす恐れがあります。入力レベルが固定の場合はもちろん、VIL（Max.）から VIH（Min.）までの領域を通過する遷移期間中にチャタリングノイズなどが入らないように使用してください。

7.

リザーブアドレス（予約領域）のアクセス禁止
リザーブアドレス（予約領域）のアクセスを禁止します。アドレス領域には、将来の拡張機能用に割り付けられている リザーブアドレス（予約領域）があります。これらのアドレスをアクセスしたときの動作については、保証できませんので、アクセスしないようにしてください。

8.

製品間の相違について
型名の異なる製品に変更する場合は、製品型名ごとにシステム評価試験を実施してください。同じグループのマイコンでも型名が違うと、フラッシュ
メモリ、レイアウトパターンの相違などにより、電気的特性の範囲で、特性値、動作マージン、ノイズ耐量、ノイズ幅射量などが異なる場合があります。型名が違う製品に変更する場合は、個々の製品ごとにシステム評価試験を実施してください。

ご注意書き1.

本資料に記載された回路、ソフトウェアおよびこれらに関連する情報は、半導体製品の動作例、応用例を説明するものです。回路、ソフトウェアおよ
びこれらに関連する情報を使用する場合、お客様の責任において、お客様の機器・システムを設計ください。これらの使用に起因して生じた損害（お客様または第三者いずれに生じた損害も含みます。以下同じです。）に関し、当社は、一切その責任を負いません。

2.

当社製品または本資料に記載された製品デ－タ、図、表、プログラム、アルゴリズム、応用回路例等の情報の使用に起因して発生した第三者の特許権、著作権その他の知的財産権に対する侵害またはこれらに関する紛争について、当社は、何らの保証を行うものではなく、また責任を負うものではあり
ません。

3.

当社は、本資料に基づき当社または第三者の特許権、著作権その他の知的財産権を何ら許諾するものではありません。

4.

当社製品を組み込んだ製品の輸出入、製造、販売、利用、配布その他の行為を行うにあたり、第三者保有の技術の利用に関するライセンスが必要となる場合、当該ライセンス取得の判断および取得はお客様の責任において行ってください。

5.

当社製品を、全部または一部を問わず、改造、改変、複製、リバースエンジニアリング、その他、不適切に使用しないでください。かかる改造、改変、複製、リバースエンジニアリング等により生じた損害に関し、当社は、一切その責任を負いません。

6.

当社は、当社製品の品質水準を「標準水準」および「高品質水準」に分類しており、各品質水準は、以下に示す用途に製品が使用されることを意図しております。
標準水準：

コンピュータ、OA 機器、通信機器、計測機器、AV 機器、家電、工作機械、パーソナル機器、産業用ロボット等

高品質水準： 輸送機器（自動車、電車、船舶等）、交通制御（信号）、大規模通信機器、金融端末基幹システム、各種安全制御装置等
当社製品は、データシート等により高信頼性、Harsh environment 向け製品と定義しているものを除き、直接生命・身体に危害を及ぼす可能性のある機器・システム（生命維持装置、人体に埋め込み使用するもの等）、もしくは多大な物的損害を発生させるおそれのある機器・システム（宇宙機器と、海底中継器、原子力制御システム、航空機制御システム、プラント基幹システム、軍事機器等）に使用されることを意図しておらず、これらの用途に使用することは想定していません。たとえ、当社が想定していない用途に当社製品を使用したことにより損害が生じても、当社は一切その責任を負いません。
7.

あらゆる半導体製品は、外部攻撃からの安全性を 100％保証されているわけではありません。当社ハードウェア／ソフトウェア製品にはセキュリティ対策が組み込まれているものもありますが、これによって、当社は、セキュリティ脆弱性または侵害（当社製品または当社製品が使用されているシス
テムに対する不正アクセス・不正使用を含みますが、これに限りません。）から生じる責任を負うものではありません。当社は、当社製品または当社製品が使用されたあらゆるシステムが、不正な改変、攻撃、ウイルス、干渉、ハッキング、データの破壊または窃盗その他の不正な侵入行為（「脆弱性問題」といいます。）によって影響を受けないことを保証しません。当社は、脆弱性問題に起因しまたはこれに関連して生じた損害について、一切責任を負いません。また、法令において認められる限りにおいて、本資料および当社ハードウェア／ソフトウェア製品について、商品性および特定目
的との合致に関する保証ならびに第三者の権利を侵害しないことの保証を含め、明示または黙示のいかなる保証も行いません。

8.

当社製品をご使用の際は、最新の製品情報（データシート、ユーザーズマニュアル、アプリケーションノート、信頼性ハンドブックに記載の「半導体デバイスの使用上の一般的な注意事項」等）をご確認の上、当社が指定する最大定格、動作電源電圧範囲、放熱特性、実装条件その他指定条件の範囲内でご使用ください。指定条件の範囲を超えて当社製品をご使用された場合の故障、誤動作の不具合および事故につきましては、当社は、一切その責任を負いません。

9.

当社は、当社製品の品質および信頼性の向上に努めていますが、半導体製品はある確率で故障が発生したり、使用条件によっては誤動作したりする場
合があります。また、当社製品は、データシート等において高信頼性、Harsh environment 向け製品と定義しているものを除き、耐放射線設計を行っておりません。仮に当社製品の故障または誤動作が生じた場合であっても、人身事故、火災事故その他社会的損害等を生じさせないよう、お客様の責任において、冗長設計、延焼対策設計、誤動作防止設計等の安全設計およびエージング処理等、お客様の機器・システムとしての出荷保証を行ってください。特に、マイコンソフトウェアは、単独での検証は困難なため、お客様の機器・システムとしての安全検証をお客様の責任で行ってください。

10. 当社製品の環境適合性等の詳細につきましては、製品個別に必ず当社営業窓口までお問合せください。ご使用に際しては、特定の物質の含有・使用を規制する RoHS 指令等、適用される環境関連法令を十分調査のうえ、かかる法令に適合するようご使用ください。かかる法令を遵守しないことにより生じた損害に関して、当社は、一切その責任を負いません。
11. 当社製品および技術を国内外の法令および規則により製造・使用・販売を禁止されている機器・システムに使用することはできません。当社製品および技術を輸出、販売または移転等する場合は、「外国為替及び外国貿易法」その他日本国および適用される外国の輸出管理関連法規を遵守し、それらの定めるところに従い必要な手続きを行ってください。
12. お客様が当社製品を第三者に転売等される場合には、事前に当該第三者に対して、本ご注意書き記載の諸条件を通知する責任を負うものといたします。
13. 本資料の全部または一部を当社の文書による事前の承諾を得ることなく転載または複製することを禁じます。
14. 本資料に記載されている内容または当社製品についてご不明な点がございましたら、当社の営業担当者までお問合せください。
注 1. 本資料において使用されている「当社」とは、ルネサス エレクトロニクス株式会社およびルネサス エレクトロニクス株式会社が直接的、間接的に支配する会社をいいます。
注 2. 本資料において使用されている「当社製品」とは、注１において定義された当社の開発、製造製品をいいます。
(Rev.5.0-1

2020.10)

本社所在地

お問合せ窓口〒135-0061 東京都江東区豊洲 3-2-24（豊洲フォレシア）弊社の製品や技術、ドキュメントの最新情報、最寄の営業お問合せ窓口

www.renesas.com

に関する情報などは、弊社ウェブサイトをご覧ください。
www.renesas.com/contact/

商標についてルネサスおよびルネサスロゴはルネサス エレクトロニクス株式会社の商標です。すべての商標および登録商標は、それぞれの所有者に帰属します。

© 2023 Renesas Electronics Corporation. All rights reserved.