User’ s Manual

スマート・コンフィグレータ
ユーザーズマニュアル RL78 API リファレンス編
ルネサスマイクロコンピュータ
RL78 ファミリ

本資料に記載の全ての情報は本資料発行時点のものであり、ルネサス エレクトロニクスは、
予告なしに、本資料に記載した製品または仕様を変更することがあります。
ルネサス エレクトロニクスのホームページなどにより公開される最新情報をご確認ください。

www.renesas.com

Rev.1.05 2024.07

ご注意書き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/

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

© 2024 Renesas Electronics Corporation. All rights reserved.

製品ご使用上の注意事項
ここでは、マイコン製品全体に適用する「使用上の注意事項」について説明します。個別の使用上の注意事項については、本ドキュメントおよびテクニカ
ルアップデートを参照してください。
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. API関数
読み方このマニュアルを読むにあたっては、電気，論理回路，マイクロコンピュータに関する一般知識が必要となります。
凡例

データ表記の重み：

左が上位桁，右が下位桁

アクティブ・ロウの表記 ：XXX （端子，信号名称に上線）

注：

本文中につけた注の説明

注意：

気をつけて読んでいただきたい内容

備考：

本文中の補足説明

数の表記：

10 進数 ... XXXX
16 進数 ... 0xXXXX

す べ て の 商 標 お よ び 登 録 商 標 は 、 そ れ ぞ れ の 所 有 者 に 帰 属 し ま す 。

目次
1.

2.

概

説 ........................................................................................................................................................ 7

1.1

概

要 ............................................................................................................................................... 7

1.2

特長 ............................................................................................................................................... 7

出力ファイル ................................................................................................................................................. 8
2.1

説明 ............................................................................................................................................... 83.

初期化 .......................................................................................................................................................... 30

4.

API 関数 ....................................................................................................................................................... 31
4.1

概

要 ............................................................................................................................................. 31

4.2

関数リファレンス............................................................................................................................... 32

4.2.1

共通 ............................................................................................................................................ 33

4.2.2

ポート機能 ............................................................................................................................... 133

4.2.3

ディレイ・カウンタ ................................................................................................................. 139

4.2.4

分周機能 ................................................................................................................................... 149

4.2.5

外部イベント・カウンタ（タイマ・アレイ・ユニット） ....................................................... 156

4.2.6

外部イベント・カウンタ（タイマ RJ） .................................................................................. 165

4.2.7

入力信号のハイ／ロウ・レベル幅測定（タイマ・アレイ・ユニット） ................................. 172

4.2.8

入力信号のハイ／ロウ・レベル幅測定（タイマ RJ） ............................................................ 180

4.2.9

PWM 出力（タイマ・アレイ・ユニット） .............................................................................. 188

4.2.10PWM 出力（PWM モードを使用したタイマ RD／拡張 PWM モード） ................................. 196

4.2.11PWM 出力（PWM モードを使用したタイマ RD0 と RD1／PWM3 モード／拡張 PWM モード／タイマ KB3 PWM 出力ゲートモード） ................................................................................ 204

4.2.12

PWM 出力（PWM モードを使用したタイマ RG／PWM2 モード） ....................................... 214

4.2.13

PWM 出力（タイマ KB を使用した単体動作モード（TKBCRn0 レジスタによる周期制御）／
単体動作モード（外部トリガ入力による周期制御）／インターリーブ PFC 出力モード） .. 221

4.2.14

PWM 出力（タイマ KB を使用した同時スタート／ストップ・モード（TKBCRn0 レジスタによる周期制御）／同時スタート／ストップ・モード（外部トリガ入力による周期制御）／同
時スタート／ストップ・モード（マスタによる周期制御））（1 つスレーブ） ................... 242

4.2.15PWM 出力（タイマ KB を使用した同時スタート／ストップ・モード（TKBCRn0 レジスタによる周期制御）／同時スタート／ストップ・モード（外部トリガ入力による周期制御）／同
時スタート／ストップ・モード（マスタによる周期制御））（2 つスレーブ） ................... 263

4.2.16

入力パルス間隔／周期測定（タイマ・アレイ・ユニット） ................................................... 284

4.2.17

入力パルス間隔／周期測定（タイマ RJ） .............................................................................. 292

4.2.18

インターバル・タイマ（タイマ・アレイ・ユニット） .......................................................... 300

4.2.19インターバル・タイマ（タイマ RJ） ...................................................................................... 313

4.2.20

インターバル・タイマ（12 ビット・インターバル・タイマ） .............................................. 320

4.2.21

ワンショット・パルス出力 ...................................................................................................... 327

4.2.22方形波出力（タイマ・アレイ・ユニット）............................................................................. 337

4.2.23方形波出力（タイマ RJ） ........................................................................................................ 346

4.2.24

インターバル・タイマ（8 ビット・カウント・モード） ........................................................ 353

4.2.25

インターバル・タイマ（16 ビット・カウント・モード） ...................................................... 361

4.2.26

インターバル・タイマ（32 ビット・カウント・モード） ...................................................... 371

4.2.27

インプットキャプチャ機能（タイマ RD） .............................................................................. 379

4.2.28

インプットキャプチャ機能（タイマ RG） ............................................................................. 387

4.2.29インプットキャプチャ機能（タイマ RX） .............................................................................. 396

4.2.30

アウトプットコンペア機能（タイマ RD） .............................................................................. 404

4.2.31

アウトプットコンペア機能（タイマ RG） ............................................................................. 411

4.2.32

三相 PWM 出力（タイマ RD） ................................................................................................ 418

4.2.33

PWM オプション・ユニット A（タイマ RD） ........................................................................ 427

4.2.34位相計数モード ........................................................................................................................ 432

4.2.35クロック出力／ブザー出力制御回路 ....................................................................................... 442

4.2.36

リアルタイム・クロック ......................................................................................................... 448

4.2.37

A/D コンバータ ........................................................................................................................ 469

4.2.3812 ビット A/D シングル・スキャン ......................................................................................... 490

4.2.3912 ビット A/D 連続スキャン .................................................................................................... 498

4.2.40

12 ビット A/D グループ・スキャン ......................................................................................... 506

4.2.41

D/A コンバータ ........................................................................................................................ 517

4.2.42

データ・トランスファ・コントローラ .................................................................................... 524

4.2.43

コンパレータ ............................................................................................................................ 530

4.2.44

プログラマブル・ゲイン・アンプ ........................................................................................... 537

4.2.45SPI(CSI)通信 ............................................................................................................................ 543

4.2.46

UART 通信（シリアル・アレイ・ユニット） ......................................................................... 556

4.2.47

UART 通信（シリアル・インタフェース UARTA）................................................................ 573

4.2.48UART 通信（LIN/UART モジュール） ..................................................................................... 591

4.2.49DALI 通信（コントロールデバイス） ...................................................................................... 605

4.2.50DALI 通信（コントロールギア） ............................................................................................. 629

4.2.51

IIC 通信(マスタ・モード)（シリアル・アレイ・ユニット）................................................... 650

4.2.52

IIC 通信(マスタ・モード)（シリアル・インタフェース IICA） .............................................. 663

4.2.53

IIC 通信(スレーブ・モード)（シリアル・インタフェース IICA）........................................... 676

4.2.54

割り込みコントローラ ............................................................................................................. 691

4.2.55電圧検出回路 ............................................................................................................................ 698

4.2.56

SNOOZE モード・シーケンサ ................................................................................................. 704

4.2.57

キー割り込み ............................................................................................................................ 719

4.2.58

リモコン信号受信機能 ............................................................................................................. 726

4.2.59ウォッチドッグ・タイマ ......................................................................................................... 742

4.2.60

ロジック＆イベント・リンク・コントローラ (ELCL) ............................................................ 748

4.2.61

イベント・リンク・コントローラ ........................................................................................... 755

Appedix A: API 関数の比較 .............................................................................................................................. 760
改訂記録............................................................................................................................................................ 765

スマート・コンフィグレータ

概

1.

1. 概

説

説

本章では、スマート・コンフィグレータのドライバコード生成機能（以下、コード生成機能と略します）の概要を示します。

1.1 概

要

スマート・コンフィグレータは、GUI ベースでプロジェクトに必要な各種情報を設定することにより、デバイスが提供している周辺モジュール（クロック発生回路，電圧検出回路など）を制御するソースコード（デバイス・ドライバ・プログラム：C ソース・ファイル、ヘッダ・ファイル）を出力することが
できます。

1.2 特

長

以下に、スマート・コンフィグレータの特長を示します。
- コード生成GUI ベースで設定した情報に応じたデバイス・ドライバ・ファイルを出力するだけでなく、main
関数呼び出しを含んだサンプル・プログラムなど、ビルド環境のプログラム一式を出力することもできます。
- レポート機能
設定した情報を各種形式のファイルで出力し、設計資料として利用することができます。
- リネーム機能
出力するフォルダ名、ファイル名、およびソースコードに含まれている API 関数の関数名について
は、デフォルトの名前が付与されますが、ユーザ独自の名前に変更することもできます。
- ユーザコード保護機能
各 API 関数には、ユーザが独自にコードを追加できるように、ユーザコード記述用のコメントが設けられています。
[ユーザコード記述用のコメント]/* Start user code for xxxx. Do not edit comment generated here *//* End user code. Do not edit comment generated here */“xxxx” は追加できるユーザコードによって次のように異なります。
⚫ “global” ⎯ グローバル変数とグローバル関数を追加可能⚫ “function” ⎯ 関数宣言を.h ファイルに追加可能⚫ “user init” ⎯ 初期化コードを追加可能⚫ 割り込み関数名 ⎯ サービス・ルーチン・コードを追加可能⚫ “adding” ⎯ 関数を.c ファイルに追加可能⚫ “include” ⎯ インクルードファイルを.c ファイルに追加可能⚫ “pragma” ⎯ pragma 宣言を.c ファイルに追加可能
このコメント内にコードを記述すると、再度コード生成した場合でもユーザが記述したコードは保護されます。
R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 7 of 771

スマート・コンフィグレータ

2.出力ファイル

出力ファイル

2.

本章では、スマート・コンフィグレータが出力するファイルについて説明します。

2.1 説

明

以下に、スマート・コンフィグレータが出力するファイルの一覧を示します。
表 2.1

出力ファイル（1/22）

コンポーネント共通

ファイル名

API 関数名{project name}.cmainr_smc_entry.h－r_cg_systeminit.c

R_Systeminit

r_cg_macrodriver.h－r_cg_userdefine.h－r_cg_interrupt_handlers.h－r_cg_inthandler.c－r_cg_vect_table.c－r_cg_linker_script.ld－

r_cg_port.h－

r_cg_pclbuz.h－r_cg_kr.h－r_cg_wdt.h－

r_cg_intc.h－

r_cg_sms.h－

r_cg_elc.h－r_cg_dtc_common.c

R_DTC_Set_PowerOn
R_DTC_Set_PowerOff

r_cg_dtc_common.h－r_cg_dtc.h－r_cg_tau_common.c

R_TAUm_Create
R_TAUm_Set_PowerOn
R_TAUm_Set_PowerOff
R_TAUm_Set_Reset
R_TAUm_Release_Resetr_cg_tau_common.h－r_cg_tau.h－r_cg_itl_common.c

R_ITL_Create
R_ITL_Start_Interrupt
R_ITL_Stop Interrupt
R_ITL_Set_PowerOn
R_ITL_Set_PowerOff
R_ITL_Set_Reset
R_ITL_Release_Reset

R20UT4852JJ0105
2024.07.22

r_cg_itl_common_user.cr_itl_interrupt

r_cg_itl_common.h－r_cg_itl.h－Rev.1.05

Page 8 of 771

スマート・コンフィグレータ
表 2.2

2.出力ファイル

出力ファイル（2/22）

コンポーネント共通

ファイル名
r_cg_trd_common.c

API 関数名
R_TRD_Create
R_TRD_Set_PowerOn
R_TRD_Set_PowerOff
R_TRD_Set_Reset
R_TRD_Release_Reset
R_PWMOPA_Set_PowerOn
R_PWMOPA_Set_PowerOff
R_PWMOPA_Set_Reset
R_PWMOPA_Release_Reset
R_TRD_ForcedOutput_Enable
R_TRD_ForcedOutput_Disable

r_cg_trd_common.h－r_cg_trd.h－r_cg_trj_common.c

R_TRJ_Set_PowerOn
R_TRJ_Set_PowerOff
R_TRJ_Set_Reset
R_TRJ_Release_Resetr_cg_trj.h－－r_cg_trg_common.c

R_TRG_Set_PowerOn

r_cg_trj_common.h

R_TRG_Set_PowerOff
R_TRG_Set_Reset
R_TRG_Release_Resetr_cg_trg.h－－r_cg_trx_common.c

R_TRX_Set_PowerOn

r_cg_trg_common.h

R_TRX_Set_PowerOff
R_TRX_Set_Reset
R_TRX_Release_Resetr_cg_trx.h－－r_cg_tkb_common.c

R_TKB_Create

r_cg_trx_common.h

R_TKB_Set_PowerOn
R_TKB_Set_PowerOff
R_TKB_Set_Reset
R_TKB_Release_Resetr_cg_tkb_common.h－r_cg_tkb－

r_cg_rtc_common.c

R_RTC_Set_PowerOn
R_RTC_Set_PowerOff

R20UT4852JJ0105
2024.07.22

r_cg_rtc_common.h－r_cg_rtc.h－

Rev.1.05

Page 9 of 771

スマート・コンフィグレータ
表 2.3

2.出力ファイル

出力ファイル（3/22）

コンポーネント共通

ファイル名
r_cg_it_common.c

API 関数名
R_IT_Set_PowerOn
R_IT_Set_PowerOff

r_cg_it_common.h－r_cg_it.h－r_cg_ad_common.c

R_ADC_Set_PowerOn
R_ADC_Set_PowerOff
R_ADC_Set_Reset
R_ADC_Release_Resetr_cg_ad_common.h－r_cg_ad.h－r_cg_da_common.c

R_DAC_Create
R_DAC_Set_PowerOn
R_DAC_Set_PowerOff
R_DAC_Set_Reset
R_DAC_Release_Resetr_cg_da_common.h－r_cg_da.h－r_cg_comp_common.c

R_COMP_Create
R_COMP_Set_PowerOn
R_COMP_Set_PowerOff
R_COMP_Set_Reset
R_COMP_Release_Resetr_cg_comp_common.h－r_cg_comp.h－

r_cg_pgacomp_common.c

R_PGACOMP_Create
R_PGACOMP_Set_PowerOn
R_PGACOMP_Set_PowerOff
R_PGACOMP_Set_Reset
R_PGACOMP_Release_Reset

R20UT4852JJ0105
2024.07.22

r_cg_pgacomp_common.h－r_cg_pgacomp.h－

Rev.1.05

Page 10 of 771

スマート・コンフィグレータ
表 2.4

2.出力ファイル

出力ファイル（4/22）

コンポーネント共通

ファイル名
r_cg_sau_common.c

API 関数名
R_SAUm_Create
R_SAUm_Set_PowerOn
R_SAUm_Set_PowerOff
R_SAUm_Set_Reset
R_SAUm_Release_Reset
R_SAUm_Set_SnoozeOn
R_SAUm_Set_SnoozeOff

r_cg_sau_common.h－r_cg_sau.h－r_cg_uarta_common.c

R_UARTA_Create
R_UARTA_Set_PowerOn
R_UARTA_Set_PowerOff

r_cg_uarta_common.h－r_cg_uarta.h－r_cg_iica_common.c

R_IICAn_Set_PowerOn
R_IICAn_Set_PowerOff
R_IICAn_Set_Reset
R_IICAn_Release_Resetr_cg_iica_common.h－r_cg_iica.h－r_cg_rlin3_common.c

R_RLIN3n_Set_PowerOn
R_RLIN3n_Set_PowerOff

r_cg_rlin3_common.hr_cg_rlin3.hr_cg_dali_common.c

R_DALI_Set_PowerOn
R_DALI_Set_PowerOff
R_DALI_Set_Reset
R_DALI_Release_Resetr_cg_dali_common.hr_cg_dali.hr_cg_lvd_common.c

R_LVD_Start_Interrupt
R_LVD_Stop_Interrupt

r_cg_lvd_common_user.c

r_lvd_interrupt

r_cg_lvd_common.h－r_cg_lvd.h－r_cg_remc_common.c

R_REMC_Set_PowerOn
R_REMC_Set_PowerOff
R_REMC_Set_Reset
R_REMC_Release_Reset

ポート機能

r_cg_remc_common.h－r_cg_remc.h－{Config_PORT}.c

R_{Config_PORT}_Create
R_{Config_PORT}_ReadPmnValues
R_{Config_PORT}_ReadDigitalOutputLevel

R20UT4852JJ0105
2024.07.22{Config_PORT}_user.c

R_{Config_PORT}_Create_UserInit{Config_PORT}.h－

Rev.1.05

Page 11 of 771

スマート・コンフィグレータ
表 2.5

2.出力ファイル

出力ファイル（5/22）

コンポーネント
ディレイ・カウンタ

ファイル名{Config_TAUm_n}.c

API 関数名
R_{Config_TAUm_n}_Create
R_{Config_TAUm_n}_Start
R_{Config_TAUm_n}_Stop
R_{Config_TAUm_n}_Lower8bits_Start
R_{Config_TAUm_n}_Lower8bits_Stop
R_{Config_TAUm_n}_Set_SoftwareTriggerOn{Config_TAUm_n}_user.c

R_{Config_TAUm_n}_Create_UserInit
r_{Config_TAUm_n}_ interrupt

分周機能{Config_TAUm_n}.h－{Config_TAUm_n}.c

R_{Config_TAUm_n}_Create
R_{Config_TAUm_n}_Start
R_{Config_TAUm_n}_Stop{Config_TAUm_n}_user.c

R_{Config_TAUm_n}_Create_UserInit
r_{Config_TAUm_n}_ interrupt{Config_TAUm_n}.h－

外部イベント・カウン {Config_TAUm_n}.c

R_{Config_TAUm_n}_Createタ（タイマ・アレイ・

R_{Config_TAUm_n}_Start

ユニット）

R_{Config_TAUm_n}_Stop
R_{Config_TAUm_n}_Lower8bits_Start
R_{Config_TAUm_n}_Lower8bits_Stop{Config_TAUm_n}_user.c

R_{Config_TAUm_n}_Create_UserInit
r_{Config_TAUm_n}_ interrupt{Config_TAUm_n}.h－

外部イベント・カウン {Config_TRJn}.c

R_{Config_TRJn}_Createタ（タイマ RJ）

R_{Config_TRJn}_Start
R_{Config_TRJn}_Stop{Config_TRJn}_user.c

R_{Config_TRJn}_Create_UserInit
r_{Config_TRJn}_interrupt{Config_TRJn}.h－

入 力 信 号 の ハ イ ／ ロ {Config_TAUm_n}.c

R_{Config_TAUm_n}_Create

ウ・レベル幅測定（タR_{Config_TAUm_n}_Start

イマ・アレイ・ユニッ

R_{Config_TAUm_n}_Stop

ト）

R_{Config_TAUm_n}_Get_PulseWidth{Config_TAUm_n}_user.c

R_{Config_TAUm_n}_Create_UserInit
r_{Config_TAUm_n}_ interrupt{Config_TAUm_n}.h

R20UT4852JJ0105
2024.07.22

Rev.1.05－

Page 12 of 771

スマート・コンフィグレータ
表 2.6

2.出力ファイル

出力ファイル（6/22）

コンポーネント

ファイル名

API 関数名

入 力 信 号 の ハ イ ／ ロ {Config_TRJn}.c

R_{Config_TRJn}_Create

ウ・レベル幅測定（タR_{Config_TRJn}_Start

イマ RJ）

R_{Config_TRJn}_Stop
R_{Config_TRJn}_Get_PulseWidth{Config_TRJn}_user.c

R_{Config_TRJn}_Create_UserInit
r_{Config_TRJn}_interrupt{Config_TRJn}.h－

PWM 出力（タイマ・ {Config_TAUm_n}.c

R_{Config_TAUm_n}_Create

アレイ・ユニット）

R_{Config_TAUm_n}_Start
R_{Config_TAUm_n}_Stop{Config_TAUm_n}_user.c

R_{Config_TAUm_n}_Create_UserInit
r_{Config_TAUm_n}_channeln_interrupt
r_{Config_TAUm_n}_channelp_interrupt{Config_TAUm_n}.h－

PWM 出力（PWM モ {Config_TRDn}.c

R_{Config_TRDn}_Createードを使用したタイマ

R_{Config_TRDn}_Start

RD／拡張 PWM モー

R_{Config_TRDn}_Stop

ド）

R_{Config_TRDn}_Set_TRDn_ReloadTrigger{Config_TRDn}_user.c

R_{Config_TRDn}_Create_UserInit
r_{Config_TRDn}_trdn_interrupt{Config_TRDn}.h－

PWM 出力（PWM モー {Config_TRD0_TRD1}.c

R_{Config_TRD0_TRD1}_Create

ドを使用したタイマ

R_{Config_TRD0_TRD1}_Start

RD0 と RD1 ／ PWM3

R_{Config_TRD0_TRD1}_Stop

モード／拡張 PWM モ

R_{Config_TRD0_TRD1}_Set_TRDn_ReloadTrigger

ー ド ／ タ イ マ KB3

R_{Config_TRD0_TRD1}_Set_TRD0_ReloadTrigger

PWM 出力ゲート モー

R_{Config_TRD0_TRD1}_Set_TRD1_ReloadTrigger

ド）{Config_TRD0_TRD1}_user.c

R_{Config_TRD0_TRD1}_Create_UserInit
r_{Config_TRD0_TRD1}_trdn_interruptr{Config_TRD0_TRD1}.h－

PWM 出力（PWM モ {Config_TRG}.c

R_{Config_TRG}_Createードを使用したタイマ

R_{Config_TRG}_Start

RG／PWM2 モード）

R_{Config_TRG}_Stop{Config_TRG}_user.c

R_{Config_TRG}_Create_UserInit
r_{Config_TRG}_interrupt{Config_TRG}.h

R20UT4852JJ0105
2024.07.22

Rev.1.05－

Page 13 of 771

スマート・コンフィグレータ
表 2.7

2.出力ファイル

出力ファイル（7/22）

コンポーネント

ファイル名

API 関数名

PWM 出力（タイマ KB {Config_TKBn}.c

R_{Config_TKBn}_Createを使用した単体動作モ

R_{Config_TKBn}_Startード（TKBCRn0 レジ

R_{Config_TKBn}_Stop

スタによる周期制御）

R_{Config_TKBn}_Set_BatchOverwriteRequestOn／単体動作モード（外R_{Config_TKBn}_TKBOn0_Forced_Output_Stop_Funct

部トリガ入力による周

ion1_Start期制御）／インターリ

R_{Config_TKBn}_TKBOn0_Forced_Output_Stop_Functー ブ PFC 出 力 モ ー

ion1_Stop

ド）

R_{Config_TKBn}_TKBOn1_Forced_Output_Stop_Function1_Start
R_{Config_TKBn}_TKBOn1_Forced_Output_Stop_Function1_Stop
R_{Config_TKBn}_TKBOn0_SmoothStartFunction_Start
R_{Config_TKBn}_TKBOn0_SmoothStartFunction_Stop
R_{Config_TKBn}_TKBOn1_SmoothStartFunction_Start
R_{Config_TKBn}_TKBOn1_SmoothStartFunction_Stop{Config_TKBn}_user.c

R_{Config_TKBn}_Create_UserInit
r_{Config_TKBn}_ terminated0_interrupt
r_{Config_TKBn}_ terminated1_interrupt
r_{Config_TKBn}_ activated0_interrupt
r_{Config_TKBn}_ activated1_interrupt
r_{Config_TKBn}_end_count_interrupt{Config_TKBn}.h

R20UT4852JJ0105
2024.07.22

Rev.1.05－

Page 14 of 771

スマート・コンフィグレータ
表 2.8

2.出力ファイル

出力ファイル（8/22）

コンポーネント

ファイル名

API 関数名

PWM 出力（タイマ KB {Config_TKB0_TKBn}.c

R_{Config_TKB0_TKBn}_Createを使用した同時スター

R_{Config_TKB0_TKBn}_Start

ト／ストップ・モード

R_{Config_TKB0_TKBn}_Stop（TKBCRn0 レジスタ

R_{Config_TKB0_TKBn}_TKBm_Set_BatchOverwriteReq

による周期制御）／同

uestOn時スタート／ストッ

R_{Config_TKB0_TKBn}_TKBOm0_Forced_Output_Stop

プ・モード（外部トリ_Function1_Start

ガ入力による周期制

R_{Config_TKB0_TKBn}_TKBOm0_Forced_Output_Stop御）／同時スタート／_Function1_Stop

ストップ・モード（マR_{Config_TKB0_TKBn}_TKBOm1_Forced_Output_Stop

スタによる周期制_Function1_Start

御））R_{Config_TKB0_TKBn}_TKBOm1_Forced_Output_Stop_Function1_Stop
R_{Config_TKB0_TKBn}_TKBOm0_SmoothStartFunction_StartR_{Config_TKB0_TKBn}_TKBOm0_SmoothStartFunction_Stop
R_{Config_TKB0_TKBn}_TKBOm1_SmoothStartFunction_StartR_{Config_TKB0_TKBn}_TKBOm1_SmoothStartFunction_Stop{Config_TKB0_TKBn}_user.c

R_{Config_TKB0_TKBn}_Create_UserInit
r_{Config_TKB0_TKBn}_tkbm_terminated0_interrupt
r_{Config_TKB0_TKBn}_tkbm_ terminated1_interrupt
r_{Config_TKB0_TKBn}_tkbm_ activated0_interrupt
r_{Config_TKB0_TKBn}_tkbm_ activated1_interrupt
r_{Config_TKB0_TKBn}_tkbm_end_count_interrupt{Config_TKB0_TKBn}.h

R20UT4852JJ0105
2024.07.22

Rev.1.05－

Page 15 of 771

スマート・コンフィグレータ
表 2.9

2.出力ファイル

出力ファイル（9/22）

コンポーネント

ファイル名

API 関数名

PWM 出力（タイマ KB {Config_TKB0_TKB1_TKB2}.c

R_{Config_TKB0_TKB1_TKB2}_Createを使用した同時スター

R_{Config_TKB0_TKB1_TKB2}_Start

ト／ストップ・モード

R_{Config_TKB0_TKB1_TKB2}_Stop（TKBCRn0 レジスタ

R_{Config_TKB0_TKB1_TKB2}_TKBn_Set_BatchOverwri

による周期制御）／同

teRequestOn

時スタート／ストッ

R_{Config_TKB0_TKB1_TKB2}_TKBOn0_Forced_Output

プ・モード（外部トリ_Stop_Function1_Start

ガ入力による周期制

R_{Config_TKB0_TKB1_TKB2}_TKBOn0_Forced_Output御）／同時スタート／_Stop_Function1_Stop

ストップ・モード（マR_{Config_TKB0_TKB1_TKB2}_TKBOn1_Forced_Output

スタによる周期制御））_Stop_Function1_Start（2 つスレーブ）

R_{Config_TKB0_TKB1_TKB2}_TKBOn1_Forced_Output_Stop_Function1_Stop
R_{Config_TKB0_TKB1_TKB2}_TKBOn0_SmoothStartFu
nction_Start
R_{Config_TKB0_TKB1_TKB2}_TKBOn0_SmoothStartFu
nction_Stop
R_{Config_TKB0_TKB1_TKB2}_TKBOn1_SmoothStartFu
nction_Start
R_{Config_TKB0_TKB1_TKB2}_TKBOn1_SmoothStartFu
nction_Stop{Config_TKB0_TKB1_TKB2}_user. R_{Config_TKB0_TKB1_TKB2}_Create_UserInitc

r_{Config_TKB0_TKB1_TKB2}_tkbn_terminated0_interruptr_{Config_TKB0_TKB1_TKB2}_tkbn_terminated1_interruptr_{Config_TKB0_TKB1_TKB2}_tkbn_ activated0_interrupt
r_{Config_TKB0_TKB1_TKB2}_tkbn_ activated1_interrupt
r_{Config_TKB0_TKB1_TKB2}_tkbn_end_count_interrupt{Config_TKB0_TKB1_TKB2}.h

R20UT4852JJ0105
2024.07.22

Rev.1.05－

Page 16 of 771

スマート・コンフィグレータ
表 2.102.出力ファイル

出力ファイル（10/22）

コンポーネント

ファイル名

API 関数名

入力パルス間隔／周期 {Config_TAUm_n}.c

R_{Config_TAUm_n}_Create

測定（タイマ・アレ

R_{Config_TAUm_n}_Start

イ・ユニット）R_{Config_TAUm_n}_Stop
R_{Config_TRJn}_Get_PulseWidth{Config_TAUm_n}_user.c

R_{Config_TAUm_n}_Create_UserInit
r_{Config_TAUm_n}_interrupt{Config_TAUm_n}.h-

入力パルス間隔／周期 {Config_TRJn}.c

R_{Config_TRJn}_Create

測定（タイマ RJ）

R_{Config_TRJn}_Start
R_{Config_TRJn}_Stop
R_{Config_TAUm_n}_Get_PulseWidth{Config_TRJn}_user.c

R_{Config_TRJn}_Create_UserInit
r_{Config_TRJn}_interrupt{Config_TRJn}.h
インターバル・タイマ {Config_TAUm_n}.c

R_{Config_TAUm_n}_Create( タ イ マ ・ アレ イ ・ ユ

R_{Config_TAUm_n}_Start

ニット)

R_{Config_TAUm_n}_Stop
R_{Config_TAUm_n}_Higher8bits_Start
R_{Config_TAUm_n}_Higher8bits_Stop
R_{Config_TAUm_n}_Lower8bits_Start
R_{Config_TAUm_n}_Lower8bits_Stop{Config_TAUm_n}_user.c

R_{Config_TAUm_n}_Create_UserInit
r_{Config_TAUm_n}_interrupt
r_{Config_TAUm_n}_higher8bits_interrupt{Config_TAUm_n}.h－

インターバル・タイマ {Config_TRJn}.c

R_{Config_TRJn}_Create(タイマ RJ)

R_{Config_TRJn}_Start
R_{Config_TRJn}_Stop{Config_TRJn}_user.c

R_{Config_TRJn}_Create_UserInit
r_{Config_TRJn}_interrupt{Config_TRJn}.h－

インターバル・タイマ {Config_IT}.c

R_{Config_IT}_Create(12 ビット・インター

R_{Config_IT}_Start

バル・タイマ)R_{Config_IT}_Stop{Config_IT}_user.c

R_{Config_IT}_Create_UserInit
r_{Config_IT}_interrupt{Config_IT}.h

R20UT4852JJ0105
2024.07.22

Rev.1.05－

Page 17 of 771

スマート・コンフィグレータ
表 2.112.出力ファイル

出力ファイル（11/22）

ワンショット・パルス {Config_TAUm_n}.c

R_{Config_TAUm_n}_Create

出力

R_{Config_TAUm_n}_Start
R_{Config_TAUm_n}_Stop
R_{Config_TAUm_n}_Set_SoftwareTriggerOn
R_{Config_TAUm_n}_Set_Get_PulseWidth{Config_TAUm_n}_user.c

R_{Config_TAUm_n}_Create_UserInit
r_{Config_TAUm_n}_channeln_interrupt
r_{Config_TAUm_n}_channelp_interrupt{Config_TAUm_n}.h－

方形波出力 (タイマ・ {Config_TAUm_n}.c

R_{Config_TAUm_n}_Create

アレイ・ユニット)

R_{Config_TAUm_n}_Start
R_{Config_TAUm_n}_Stop
R_{Config_TAUm_n}_Lower8bits_Start
R_{Config_TAUm_n}_Lower8bits_Stop{Config_TAUm_n}_user.c

R_{Config_TAUm_n}_Create_UserInit
r_{Config_TAUm_n}_interrupt{Config_TAUm_n}.h

R20UT4852JJ0105
2024.07.22

Rev.1.05－

Page 18 of 771

スマート・コンフィグレータ
表 2.122.出力ファイル

出力ファイル（12/22）

コンポーネント

ファイル名

方形波出力 （タイマ {Config_TRJn}.c
RJ）

API 関数名
R_{Config_TRJn}_Create
R_{Config_TRJn}_Start
R_{Config_TRJn}_Stop{Config_TRJn}_user.c

R_{Config_TRJn}_Create_UserInit
r_{Config_TRJn}_interrupt{Config_TRJn}.h－32 ビット・インター {Config_ITLn}.c

R_{Config_ITLn}_Create

バル・タイマ（8 ビッ

R_{Config_ITLn}_Start

ト・カウント・モー

R_{Config_ITLn}_Stop

ド）

R_{Config_ITLn}_Set_SoftwareTriggerOn
R_{Config_ITLn}_Set_OperationMode
R_{Config_ITLn}_Get_CaptureValue{Config_ITLn}_user.c

R_{Config_ITLn}_Create_UserInit
r_{Config_ITLn}_Callback_Shared_Interrupt{Config_ITLn}.h－32 ビット・インター {Config_ITLn_ITLm}.c

R_{Config_ITLn_ITLm}_Create

バル・タイマ（ 16 ビ

R_{Config_ITLn_ITLm}_Start

ット・カウント・モー

R_{Config_ITLn_ITLm}_Stop

ド）

R_{Config_ITLn_ITLm}_Set_SoftwareTriggerOn
R_{Config_ITLn_ITLm}_Set_OperationMode
R_{Config_ITLn_ITLm}_Get_CaptureValue{Config_ITLn_ITLm}_user.c

R_{Config_ITLn_ITLm}_Create_UserInit
r_{Config_ITLn_ITLm}_Callback_Shared_Interrupt{Config_ITLn_ITLm}.h－

32 ビット・インター {Config_ITL000_ITL001_ITL012_I

R_{Config_ITL000_ITL001_ITL012_ITL013}_Create

バル・タイマ（ 32 ビ TL013}.c

R_{Config_ITL000_ITL001_ITL012_ITL013}_Start

ット・カウント・モー

R_{Config_ITL000_ITL001_ITL012_ITL013}_Stop

ド）

R_{Config_ITL000_ITL001_ITL012_ITL013}_Set_Operat
ionMode{Config_ITL000_ITL001_ITL012_I

R_{Config_ITL000_ITL001_ITL012_ITL013}_Create_Us

TL013}_user.c

erInitr_{Config_ITL000_ITL001_ITL012_ITL013}_Callback_S
hared_Interrupt{Config_ITL000_ITL001_ITL012_I－

TL013}.h
インプットキャプチャ {Config_TRDn}.c

R_{Config_TRDn}_Create

機能（タイマ RD）

R_{Config_TRDn}_Start
R_{Config_TRDn}_Stop
R_{Config_TRDn}_Get_PulseWidth{Config_TRDn}_user.c

R_{Config_TRDn}_Create_UserInit
r_{Config_TRDn}_trdn_interrupt{Config_TRDn}.h

R20UT4852JJ0105
2024.07.22

Rev.1.05－

Page 19 of 771

スマート・コンフィグレータ
表 2.132.出力ファイル

出力ファイル（13/22）

コンポーネント

ファイル名

API 関数名

インプットキャプ チャ機 {Config_TRG}.c

R_{Config_TRG}_Create

能（タイマ RG）

R_{Config_TRG}_Start
R_{Config_TRG}_Stop
R_{Config_TRG}_Get_PulseWidth{Config_TRG}_user.c

R_{Config_TRG}_Create_UserInit
r_{Config_TRG}_interrupt{Config_TRG}.h
インプットキャプ チャ機 {Config_TRX}.c

R_{Config_TRX}_Create

能（タイマ RX）

R_{Config_TRX}_Start
R_{Config_TRX}_Stop
R_{Config_TRX}_Get_BufferValue{Config_TRX}_user.c

R_{Config_TRX}_Create_UserInit
r_{Config_TRX}_interrupt{Config_TRX}.h
アウトプットコンペア {Config_TRDn}.c

R_{Config_TRDn}_Create

機能（タイマ RD）

R_{Config_TRDn}_Start
R_{Config_TRDn}_Stop{Config_TRDn}_user.c

R_{Config_TRDn}_Create_UserInit
R_{Config_TRDn}_trdn_interrupt{Config_TRDn}.h－

アウトプットコンペア機能 {Config_TRG}.c

R_{Config_TRG}_Create（タイマ RG）

R_{Config_TRG}_Start
R_{Config_TRG}_Stop{Config_TRG}_user.c

R_{Config_TRG}_Create_UserInit
r_{Config_TRG}_interrupt{Config_TRG}.h
三相 PWM 出力（タイ {Config_TRD0_TRD1}.c

R_{Config_TRD0_TRD1}_Createマ RD）

R_{Config_TRD0_TRD1}_Start
R_{Config_TRD0_TRD1}_Stop
R_{Config_TRD0_TRD1}_Set_TRD_ReloadTrigger{Config_TRD0_TRD1}_user.c

R_{Config_TRD0_TRD1}_Create_UserInit
r_{Config_TRD0_TRD1}_trd0_interrupt
r_{Config_TRD0_TRD1}_trd1_interrupt{Config_TRD0_TRD1}.h－

PWM オプション・ユ {Config_PWMOPA}.c

R_{Config_PWMOPA }_Create

ニット A（タイマ

R_{Config_PWMOPA }_Software_ReleaseRD）

R20UT4852JJ0105
2024.07.22{Config_ PWMOPA }_user.c

R_{Config_PWMOPA }_Create_UserInit{Config_PWMOPA}.h－

Rev.1.05

Page 20 of 771

スマート・コンフィグレータ
表 2.142.出力ファイル

出力ファイル（14/22）

位相計数モード{Config_TRG}.c

R_{Config_TRG}_Create
R_{Config_TRG}_Start
R_{Config_TRG}_Stop
R_{Config_TRG}_Get_MeasurementCapture{Config_TRG}_user.c

R_{Config_TRG}_Create_UserInit
r_{Config_TRG}_interrupt
r_{Config_TRG}_clear_interrupt
r_{Config_TRG}_capture_interrupt{Config_TRG}.h
クロック出力／ブザー {Config_PCLBUZn}.c

R_{Config_PCLBUZn}_Create

出力制御回路R_{Config_PCLBUZn}_Start
R_{Config_PCLBUZn}_Stop{Config_PCLBUZn}_user.c

R_{Config_PCLBUZn}_Create_UserInit{Config_PCLBUZn}.h－

リアルタイム・クロッ {Config_RTC}.c

R_{Config_RTC}_Createク

R_{Config_RTC}_Start
R_{Config_RTC}_Stop
R_{Config_RTC}_Set_HourSystem
R_{Config_RTC}_Set_CounterValue
R_{Config_RTC}_Get_CounterValue
R_{Config_RTC}_Set_ConstPeriodInterruptOn
R_{Config_RTC}_Set_ConstPeriodInterruptOff
R_{Config_RTC}_Set_AlarmOn
R_{Config_RTC}_Set_AlarmOff
R_{Config_RTC}_Set_AlarmValue
R_{Config_RTC}_Get_AlarmValue
R_{Config_RTC}_Set_RTC1HZOn
R_{Config_RTC}_Set_RTC1HZOff{Config_RTC}_user.c

R_{Config_RTC}_Create_UserInit
r_{Config_RTC}_interrupt
r_{Config_RTC}_callback_constperiod
r_{Config_RTC}_callback_alarm{Config_RTC}.h

R20UT4852JJ0105
2024.07.22

Rev.1.05－

Page 21 of 771

スマート・コンフィグレータ
表 2.152.出力ファイル

出力ファイル（15/22）

コンポーネントA/D コンバータ

ファイル名{Config_ADC}.c

API 関数名
R_{Config_ADC}_Create
R_{Config_ADC}_Start
R_{Config_ADC}_Stop
R_{Config_ADC}_Set_OperationOn
R_{Config_ADC}_Set_OperationOff
R_{Config_ADC}_Set_ADChannel
R_{Config_ADC}_ADSn_Set_ADChannel
R_{Config_ADC}_Set_SnoozeOn
R_{Config_ADC}_Set_SnoozeOff
R_{Config_ADC}_Set_TestChannel
R_{Config_ADC}_Get_Result_10bit
R_{Config_ADC}_Get_Result_8bit
R_{Config_ADC}_Get_Result_12bit
R_{Config_ADC}_ADSn_Get_Result_10bit
R_{Config_ADC}_ADSn_Get_Result_8bit
R_{Config_ADC}_ADSn_Get_Result_12bit{Config_ADC}_user.c

R_{Config_ADC}_Create_UserInit
r_{Config_ADC}_interrupt
r_{Config_ADC}_adn_interrupt{Config_ADC}.h－12 ビット A/D シング {Config_S12ADn}.c

R_{Config_S12ADn}_Create

ル・スキャン

R_{Config_S12ADn}_Start
R_{Config_S12ADn}_Stop
R_{Config_S12ADn}_Get_ValueResult{Config_S12ADn}_user.c

R_{Config_S12ADn}_Create_UserInit
r_{Config_S12ADn}_interrupt{Config_S12ADn }.h－

12 ビット A/D 連続ス {Config_S12ADn}.c

R_{Config_S12ADn}_Create

キャン

R_{Config_S12ADn}_Start
R_{Config_S12ADn}_Stop
R_{Config_S12ADn}_Get_ValueResult{Config_S12ADn}_user.c

R_{Config_S12ADn}_Create_UserInit
r_{Config_S12ADn}_interrupt{Config_S12ADn }.h

R20UT4852JJ0105
2024.07.22

Rev.1.05－

Page 22 of 771

スマート・コンフィグレータ
表 2.162.出力ファイル

出力ファイル（16/22）

12 ビット A/D グルー {Config_S12ADn}.c

R_{Config_S12ADn}_Create

プ・スキャン

R_{Config_S12ADn}_Start
R_{Config_S12ADn}_Stop
R_{Config_S12ADn}_Get_ValueResult{Config_S12ADn}_user.c

R_{Config_S12ADn}_Create_UserInit
r_{Config_S12ADn}_interrupt
r_{Config_S12ADn}_groupb_interrupt

D/A コンバータ{Config_S12ADn }.h－{Config_DACn}.c

R_{Config_DACn}_Create
R_{Config_DACn}_Start
R_{Config_DACn}_Stop
R_{Config_DACn}_Set_ConversionValueR20UT4852JJ0105
2024.07.22{Config_DACn}_user.c

R_{Config_DACn}_Create_UserInit{Config_DACn}.h－

Rev.1.05

Page 23 of 771

スマート・コンフィグレータ
表 2.172.出力ファイル

出力ファイル（17/22）

コンポーネント

ファイル名

API 関数名

デ ー タ ・ ト ラ ン ス フ {Config_DTC}.c

R_{Config_DTC}_Create

ァ・コントローラ

R_{Config_DTCDn}_Start
R_{Config_DTCDn}_Stop{Config_DTC}_user.c

R_{Config_DTC}_Create_UserInit{Config_DTC}.h－

プログラマブル・ゲイ {Config_PGA}.c
ン・アンプ

R_{Config_PGA}_Create
R_{Config_PAG}_Start
R_{Config_PAG}_Stop{Config_PGA}_user.c

R_{Config_PGA}_Create_UserInit{Config_PGA}.h
コンパレータ{Config_COMPn}.c

R_{Config_COMPn}_Create
R_{Config_COMPn}_Start
R_{Config_COMPn}_Stop{Config_COMPn}_user.c

R_{Config_COMPn}_Create_UserInit
r_{Config_COMPn}_interrupt

SPI(CSI)通信{Config_COMPn}.h－{Config_CSIp}.c

R_{Config_CSIp}_Create
R_{Config_CSIp}_Start
R_{Config_CSIp}_Stop
R_{Config_CSIp}_Send
R_{Config_CSIp}_Receive
R_{Config_CSIp}_Send_Receive{Config_CSIp}_user.c

R_{Config_CSIp}_Create_UserInit
r_{Config_CSIp}_interrupt
r_{Config_CSIp}_callback_sendend
r_{Config_CSIp}_callback_receiveendr_{Config_CSIp}_callback_error{Config_CSIp}.h－

UART 通 信 （ シ リ ア {Config_UARTq}.c

R_{Config_UARTq}_Create

ル・アレイ・ユニッ

R_{Config_UARTq}_Start

ト）

R_{Config_UARTq}_Stop
R_{Config_UARTq}_Send
R_{Config_UARTq}_Receive
R_{Config_UARTq}_Loopback_Enable
R_{Config_UARTq}_Loopback_Disable{Config_UARTq}_user.c

R_{Config_UARTq}_Create_UserInit
r_{Config_UARTq}_interrupt_send
r_{Config_UARTq}_interrupt_receiver_{Config_UARTq}_interrupt_error
r_{Config_UARTq}_callback_sendend
r_{Config_UARTq}_callback_receiveendr_{Config_UARTq}_callback_error
r_{Config_UARTq}_callback_softwareoverrun{Config_UARTq}.h

R20UT4852JJ0105
2024.07.22

Rev.1.05－

Page 24 of 771

スマート・コンフィグレータ
表 2.182.出力ファイル

出力ファイル（18/22）

コンポーネント

ファイル名

API 関数名

UART 通 信 （ シ リ ア {Config_UARTAn}.c

R_{Config_UARTAn}_Create

ル・インタフェース

R_{Config_UARTAn}_Start

UARTA）

R_{Config_UARTAn}_Stop
R_{Config_UARTAn}_Send
R_{Config_UARTAn}_Receive
R_{Config_UARTAn}_Loopback_Enable
R_{Config_UARTAn}_Loopback_Disable{Config_UARTAn}_user.c

R_{Config_UARTAn}_Create_UserInit
R_{Config_UARTAn}_PollingEnd_UserCode
r_{Config_UARTAn}_interrupt_send
r_{Config_UARTAn}_interrupt_receiver_{Config_UARTAn}_interrupt_error
r_{Config_UARTAn}_callback_sendend
r_{Config_UARTAn}_callback_receiveendr_{Config_UARTAn}_callback_error{Config_UARTAn}.h
UART

通信 {Config_RLIN3n}.c－
R_{Config_RLIN3n}_Create（LIN/UART モジュー

R_{Config_RLIN3n}_Start

ル）

R_{Config_RLIN3n}_Stop
R_{Config_RLIN3n}_Send
R_{Config_RLIN3n}_Receive{Config_RLIN3n}_user.c

R_{Config_RLIN3n}_Create_UserInit
r_{Config_RLIN3n}_interrupt_send
r_{Config_RLIN3n}_interrupt_receiver_{Config_RLIN3n}_interrupt_error
r_{Config_RLIN3n}_callback_sendend
r_{Config_RLIN3n}_callback _receiveendr_{Config_RLIN3n}_callback _error{Config_RLIN3n}.h

R20UT4852JJ0105
2024.07.22

Rev.1.05－

Page 25 of 771

スマート・コンフィグレータ
表 2.192.出力ファイル

出力ファイル（19/22）

コンポーネント

ファイル名

API 関数名

DALI 通信（コントロ {Config_DALI}.c

R_{Config_DALI}_Createールデバイス）

R_{Config_DALI}_Start
R_{Config_DALI}_Stop
R_{Config_DALI}_SoftwareReset
R_{Config_DALI}_EnableForceActiveState
R_{Config_DALI}_DisableForceActiveState
R_{Config_DALI}_GetStatus
R_{Config_DALI}_Send
R_{Config_DALI}_GetReceivedFrame{Config_DALI}_user.c

R_{Config_DALI}_Create_UserInit
r_{Config_DALI}_interrupt_send
r_{Config_DALI}_interrupt_receiver_{Config_DALI}_interrupt_error
r_{Config_DALI}_interrupt_falling_edge_detection
r_{Config_DALI}_interrupt_power_down_detection
r_{Config_DALI}_interrupt_collision_detection
r_{Config_DALI}_interrupt_stop_bit_detection
r_{Config_DALI}_ callback_sendend
r_{Config_DALI}_callback_receiveendr_{Config_DALI}_callback_error{Config_DALI}.h－

DALI 通信（コントロ {Config_DALI}.c

R_{Config_DALI}_Createールギア）

R_{Config_DALI}_Start
R_{Config_DALI}_Stop
R_{Config_DALI}_SoftwareReset
R_{Config_DALI}_EnableForceActiveState
R_{Config_DALI}_DisableForceActiveState
R_{Config_DALI}_GetStatus
R_{Config_DALI}_Send
R_{Config_DALI}_GetReceivedFrame{Config_DALI}_user.c

R_{Config_DALI}_Create_UserInit
r_{Config_DALI}_interrupt_error
r_{Config_DALI}_interrupt_falling_edge_detection
r_{Config_DALI}_interrupt_power_down_detection
r_{Config_DALI}_interrupt_stop_bit_detection
r_{Config_DALI}_ callback_sendend
r_{Config_DALI}_callback_receiveendr_{Config_DALI}_callback_error{Config_DALI}.h

R20UT4852JJ0105
2024.07.22

Rev.1.05－

Page 26 of 771

スマート・コンフィグレータ
表 2.202.出力ファイル

出力ファイル（20/22）

コンポーネント

ファイル名

API 関数名

IIC 通信(マスタ・モー {Config_IICr}.c

R_{Config_IICr}_Createド ) （ シ リ アル ・ ア レ

R_{Config_IICr}_StartCondition

イ・ユニット）R_{Config_IICr}_StopCondition
R_{Config_IICr}_Stop
R_{Config_IICr}_Master_Send
R_{Config_IICr}_Master_Receive{Config_IICr}_user.c

R_{Config_IICr}_Create_UserInit
r_{Config_IICr}_interrupt
r_{Config_IICr}_callback_master_sendend
r_{Config_IICr}_callback_master_receiveendr_{Config_IICr}_callback_master_error{Config_IICr}.h－

IIC 通信(マスタ・モー {Config_IICAn}.c

R_{Config_IICAn}_Createド ) （ シ リ アル ・ イ ン

R_{Config_IICAn}_StopCondition

タフェース IICA）

R_{Config_IICAn}_Stop
R_{Config_IICAn}_Master_Send
R_{Config_IICAn}_Master_Receive{Config_IICAn}_user.c

R_{Config_IICAn}_Create_UserInit
r_{Config_IICAn}_interrupt
r_{Config_IICAn}_master_handlerr_{Config_IICAn}_callback_master_sendend
r_{Config_IICAn}_callback_master_receiveendr_{Config_IICAn}_callback_master_error{Config_IICAn}.h－

IIC 通信(スレーブ・モ {Config_IICAn}.c

R_{Config_IICAn}_Createー ド ) （ シ リア ル ・ イ

R_{Config_IICAn}_Stop

ンタフェース IICA）

R_{Config_IICAn}_Slave_Send
R_{Config_IICAn}_Slave_Receive
R_{Config_IICAn}_Set_WakeupOn
R_{Config_IICAn}_Set_WakeupOff{Config_IICAn}_user.c

R_{Config_IICAn}_Create_UserInit
r_{Config_IICAn}_interrupt
r_{Config_IICAn}_slave_handlerr_{Config_IICAn}_callback_slave_sendend
r_{Config_IICAn}_callback_slave_receiveendr_{Config_IICAn}_callback_slave_error
r_{Config_IICAn}_callback_getstopcondition{Config_IICAn}.h

R20UT4852JJ0105
2024.07.22

Rev.1.05－

Page 27 of 771

スマート・コンフィグレータ
表 2.212.出力ファイル

出力ファイル（21/22）

コンポーネント
割り込みコントローラ

ファイル名{Config_INTC}.c

API 関数名
R_{Config_INTC}_Create
R_{Config_INTC}_INTPn_Start
R_{Config_INTC}_INTPn_Stop{Config_INTC}_user.c

R_{Config_INTC}_Create_UserInit
r_{Config_INTC}_intpn_interrupt

電圧検出回路{Config_INTC}.h－{Config_LVDn}.c

R_{Config_LVDn}_Create
R_{Config_LVDn} _Start
R_{Config_LVDn} _Stop{Config_LVDn}_user.c

R_{Config_LVDn}_Create_UserInit{Config_LVDn}.h－

SNOOZE モ ー ド ・ シ {Config_SMS}.c

R_{Config_SMS}_Create

ーケンサ

R_{Config_SMS}_Start
R_{Config_SMS}_Stop
R_{Config_SMS}_GetStatus
R_{Config_SMS}_GetReturn
R_{Config_SMS}_TriggerWait_Disable
R_{Config_SMS}_TriggerWait_Enable
R_{Config_SMS}_Set_PowerOn
R_{Config_SMS}_Set_PowerOff
R_{Config_SMS}_Set_Reset
R_{Config_SMS}_Release_Reset{Config_SMS}_user.c

R_{Config_SMS}_Create_UserInit
r_{Config_SMS}_interrupt

キー割り込み{Config_SMS}.h－{Config_KR}.c

R_{Config_KR}_Create
R_{Config_KR} _Start
R_{Config_KR} _Stop{Config_KR}_user.c

R_{Config_KR}_Create_UserInit
r_{Config_KR}_interrupt{Config_KR}.h

R20UT4852JJ0105
2024.07.22

Rev.1.05－

Page 28 of 771

スマート・コンフィグレータ
表 2.222.出力ファイル

出力ファイル（22/22）

コンポーネント
リモコン信号受信機能

ファイル名{Config_REMC}.c

API 関数名
R_{Config_REMC}_Create
R_{Config_REMC} _Start
R_{Config_REMC} _Stop
R_{Config_REMC}_Read{Config_REMC}_user.c

R_{Config_REMC}_Create_UserInit
r_{Config_REMC}_interrupt
r_{Config_REMC}_callback_receiveendr_{Config_REMC}_callback_comparematchr_{Config_REMC}_callback_receiveerror
r_{Config_REMC}_callback_bufferfull
r_{Config_REMC}_callback_header
r_{Config_REMC}_callback_data0r_{Config_REMC}_callback_data1
r_{Config_REMC}_callback_specialdata{Config_REMC}.h－

ウォッチドッグ・タイ {Config_WDT}.c

R_{Config_WDT}_Createマ

R_{Config_WDT} _Restart{Config_WDT}_user.c

R_{Config_WDT}_Create_UserInit
r_{Config_WDT}_interrupt{Config_WDT}.h－

ロジック＆イベント・ Config_xxx}.c

R_{Config_xxx}_Create

リンク・コントローラ

R_{Config_xxx}_Start(ELCL)

R_{Config_xxx}_Stop{Config_xxx}_user.c

R_{Config_xxx}_Create_UserInit
r_{Config_xxx}_interrupt{Config_xxx}.h－

イベント・リンク・コ Config_ELC_xxx}.c

R_{Config_ELC}_Create

ントローラ

R_{Config_ELC}_Stop

R20UT4852JJ0105
2024.07.22{Config_ELC_xxx}_user.c

R_{Config_ELC}_Create_UserInit{Config_ELC_xxx}.h－

Rev.1.05

Page 29 of 771

スマート・コンフィグレータ

3.初期化

初期化

3.

本章では、コード生成が出力するファイルによる初期化の流れについて説明します。

•••

スタートアップ処理_start (Renesas コンパイラ用)
PowerON_Reset (LLVM コンパイラ用)__iar_program_start (IAR コンパイラ用)

1.
2.

スタックポインタの設定
スタック領域の初期化

1.
2.

bsp_init_system
PIOR 設定の初期化
WDT 設定の初期化

青枠の処理は、ボードサポートパッ
ケージ(BSP)モジュールの処理です。
詳細は、アプリケーションノート
(R01AN5522)を参照してください。

mcu_clock_setup
CPU と周辺ハードウェア・クロック設定の初期化

ユーザウォームスタート時前処理
C ランタイム環境初期化
BSS の初期化

ROM データコピー
bsp_init_hardware
コールバック関数配列初期化

ユーザウォームスタート時後処理
C ランタイム環境初期化

1.
2.
3.

hdwinit()
出力端子の初期化
割り込みの初期化
周辺モジュールの初期化
R_Systeminit
周辺機能の初期化
安全機能設定データ・フラッシュ・アクセス制御

Main 処理

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 30 of 771

スマート・コンフィグレータ.

4. API 関数

API 関数4.

本章では、スマート・コンフィグレータが出力する API 関数について説明します。

4.1 概

要

以下に、スマート・コンフィグレータが API 関数を出力する際の命名規則を示します。
- マクロ名すべて大文字。
なお、先頭に“ 数字 ”が付与されている場合、該当数字（16 進数値）とマクロ値は同値。
- ローカル変数名
すべて小文字。
- グローバル変数名
先頭に “g” を付与し、構成単語の先頭のみ大文字。
- グローバル変数へのポインタ名
先頭に “gp” を付与し、構成単語の先頭のみ大文字。
-

列挙指定子 enum の要素名
すべて大文字。

備考

スマート・コンフィグレータが生成するコードには、レジスタの反映待ち処理等で for 文、
while 文 、 do while 文 （ ル ー プ 処 理 ） を 使 用 し て い る 関 数 が あ り ま す 。
無限ループに対するフェイルセーフ処理が必要な場合は、生成されたコードを確認の上、処理を追加してください。

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 31 of 771

スマート・コンフィグレータ.

4. API 関数

4.2 関数リファレンス
本節では、スマート・コンフィグレータが出力する API 関数について、次の記述フォーマットに従って説明します。

図 4.1

API 関数の記述フォーマット

(1) 名称API 関数の名称を示しています。
(2) 機能概要
API 関数の機能概要を示しています。
(3) [指定形式］
API 関数を C 言語で呼び出す際の記述形式を示しています。
(4) [引数］
API 関数の引数を次の形式で示しています。
I/O

引数

説明

(a)

(b)

(c)

(a)

(b)
(c)

I/O
引数の種類
I
… 入力引数O… 出力引数
引数
引数のデータタイプ
説明
引数の説明(5) [戻り値］
API 関数からの戻り値を次の形式で示しています。

(a)
(b)

マクロ

説明

(a)

(b)

マクロ
戻り値のマクロ説明
戻り値の説明R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 32 of 771

スマート・コンフィグレータ.

4. API 関数

共通

4.2.1

以下に、スマート・コンフィグレータが共通用として出力する API 関数の一覧を示します。
表 4.1 共通用 API 関数（1/4）
API 関数名

周辺機能

機能概要

main

-

main 関数です。

R_Systeminit-

各種周辺機能を制御するうえで必要となる初期化処理を

R_DTC_Set_PowerOn

データ・トランス

DTC へのクロック供給を開始します。

R_DTC_Set_PowerOff

ファ・コントロー

DTC へのクロック供給を停止します。

行います。

ラ
R_TAUm_Create

タイマ・アレイ・

TAUm を制御する前に必要な初期化処理を実行しますユニット(TAUm への入力クロックの供給を許可し、TAUm モジ
ュールを初期化します）。

R_TAUm_Set_PowerOn

TAUm へのクロック供給を開始します。

R_TAUm_Set_PowerOff

TAUm へのクロック供給を停止します。

R_TAUm_Set_Reset

TAUm モジュールをリセット状態にします。

R_TAUm_Release_Reset

TAUm モジュールのリセット状態を解除します。

R_ITL_Create

32 ビット・インタ

32 ビット・インターバル・タイマを制御する前に必要

ーバル・タイマな初期化処理を実行します (入力クロック供給を有効にし、ITLm モジュールを初期化します）。

R_ITL_Start_Interrupt

INTITL 割り込みを開始します。

R_ITL_Stop Interrupt

INTITL 割り込みを停止します。

R_ITL_Set_PowerOn

32 ビット・インターバル・タイマへのクロック供給を開始します。
32 ビット・インターバル・タイマへのクロック供給を

R_ITL_Set_PowerOff

停止します。
32 ビット・インターバル・タイマ・モジュールをリセ

R_ITL_Set_Resetット状態にします。
32 ビット・インターバル・タイマ・モジュールのリセ

R_ITL_Release_Reset

ット状態を解除します。
32 ビット・インターバル・タイマ割り込み（INTITL）

r_itl_interruptに応じて処理を実行します。
タイマ RD

R_TRD_Create

TRD を制御する前に必要な初期化処理を実行します(TRD 入力クロック供給を有効にし、TRD モジュールを初期化します)。

R_TRD_Set_PowerOn

TRD へのクロック供給を開始します。

R_TRD_Set_PowerOff

TRD へのクロック供給を停止します。

R_TRD_Set_Reset

TRD・モジュールをリセット状態にします。

R_TRD_Release_Reset

TRD・モジュールのリセット状態を解除します。

R_PWMOPA_Set_PowerOn

PWMOPA へのクロック供給を開始します。

R_PWMOPA_Set_PowerOff

PWMOPA へのクロック供給を停止します。

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 33 of 771

スマート・コンフィグレータ.

4. API 関数

表 4.2 共通用 API 関数（2/4）
API 関数名

周辺機能
タイマ RD

R_PWMOPA_Set_Reset

機能概要
PWMOPA・モジュールをリセット状態にします。

R_PWMOPA_Release_ResetPWMOPA・モジュールのリセット状態を解除します。

R_TRD_ ForcedOutput_Enable

TRD パルス出力の強制遮断を有効にします。

R_TRD_ ForcedOutput_Disable

TRD パルス出力の強制遮断を無効にします。
タイマ RJ

R_TRJ_Set_PowerOn

TRJ へのクロック供給を開始します。

R_TRJ_Set_PowerOff

TRJ へのクロック供給を停止します。

R_TRJ_Set_Reset

TRJ・モジュールをリセット状態にします。

R_TRJ_Release_Reset

TRJ・モジュールのリセット状態を解除します。
タイマ RG

R_TRG_Set_PowerOn

TRG へのクロック供給を開始します。

R_TRG_Set_PowerOff

TRG へのクロック供給を停止します。

R_TRG_Set_Reset

TRG・モジュールをリセット状態にします。

R_TRG_Release_Reset

TRG・モジュールのリセット状態を解除します。
タイマ RX

R_TRX_Set_PowerOn

TRX へのクロック供給を開始します。

R_TRX_Set_PowerOff

TRX へのクロック供給を停止します。

R_TRX_Set_Reset

TRX・モジュールをリセット状態にします。

R_TRX_Release_Reset

TRX・モジュールのリセット状態を解除します。
タイマ KBR_TKB_Create

TKB モジュールを制御する前に必要な初期化処理を実行します（入力クロック供給を有効にし、TKB モジュールを初期化します）。

R_TKB_Set_PowerOn

TKB へのクロック供給を開始します。

R_TKB_Set_PowerOff

TKB へのクロック供給を停止します。

R_TKB_Set_Reset

TKB・モジュールをリセット状態にします。

R_TKB_Release_Reset

TKB・モジュールのリセット状態を解除します。

R_RTC_Set_PowerOn

リアルタイム・ク

RTC へのクロック供給を開始します。

R_RTC_Set_PowerOff

ロック

RTC へのクロック供給を停止します。

R_IT_Set_PowerOn

12 ビット・インタ

12 ビット・インターバル・タイマのクロック供給を開ーバル・タイマ

始します。
12 ビット・インターバル・タイマのクロック供給を停

R_IT_Set_PowerOff

止します。
A/D コンバータ

R_ADC_Set_PowerOn

A/D コンバータへのクロック供給を開始します。

R_ADC_Set_PowerOff

A/D コンバータへのクロック供給を停止します。

R_ADC_Set_Reset

A/D コンバータ・モジュールをリセット状態にします。

R_ADC_Release_Reset

A/D コンバータ・モジュールのリセット状態を解除します。
D/A コンバータ

R_DAC_Create

DAC モジュールを制御する前に必要な初期化処理を実行します(入力クロック供給を有効にし、DAm モジュー
ルを初期化します)。

R_DAC_Set_PowerOn

D/A コンバータへのクロック供給を開始します。

R_DAC_Set_PowerOff

D/A コンバータへのクロック供給を停止します。

R_DAC_Set_Reset

D/A コンバータ・モジュールをリセット状態にします。

R_DAC_Release_Reset

D/A コンバータ・モジュールのリセット状態を解除します。

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 34 of 771

スマート・コンフィグレータ.

4. API 関数

表 4.3 共通用 API 関数（3/4）
コンパレータ

R_COMP_Create

コンパレータ・モジュールを制御する前に必要な初期化処理を実行します（入力クロック供給を有効にし、COMPm モジュールを初期化します）。

R_COMP_Set_PowerOn

コンパレータへのクロック供給を開始します。

R_COMP_Set_PowerOff

コンパレータへのクロック供給を停止します。

R_COMP_Set_Reset

コンパレータ・モジュールをリセット状態にします。

R_COMP_Release_Reset

コンパレータ・モジュールのリセット状態を解除します。

R_PGACOMP_Create

コンパレータとプ

コンパレータとプログラマブル・ゲイン・アンプ・モジ

ログラマブル・ゲ

ュールを制御する前に必要な初期化処理を実行します

イン・アンプ（入力クロック供給を有効にし、COMPm モジュールを初期化します）。
コンパレータとプログラマブル・ゲイン・アンプへのク

R_PGACOMP_Set_PowerOn

ロック供給を開始します。
コンパレータとプログラマブル・ゲイン・アンプへのク

R_PGACOMP_Set_PowerOff

ロック供給を停止します。
コンパレータとプログラマブル・ゲイン・アンプ・モジ

R_PGACOMP_Set_Reset

ュールをリセット状態にします。
コンパレータとプログラマブル・ゲイン・アンプ・モジ

R_PGACOMP_Release_Reset

ュールのリセット状態を解除します。
R_SAUm_Create

シリアル・アレ

SAUm を制御する前に必要な初期化処理を実行します

イ・ユニット（入力クロック供給を有効にし、SAUm モジュールを初期化します）。

R_SAUm_Set_PowerOn

SAUm へのクロック供給を開始します。

R_SAUm_Set_PowerOff

SAUm へのクロック供給を停止します。

R_SAUm_Set_Reset

SAUm モジュールをリセット状態にします。

R_SAUm_Release_Reset

SAUm モジュールのリセット状態を解除します。

R_SAUm_Set_SnoozeOn

SAUm のウエイクアップ機能を許可します。

R_SAUm_Set_SnoozeOff

SAUm のウエイクアップ機能を禁止します。

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 35 of 771

スマート・コンフィグレータ.

4. API 関数

表 4.4 共通用 API 関数（4/4）
API 関数名
R_UARTA_Create

周辺機能

機能概要

シリアル・インタUARTA0/UARTA1 を制御する前に必要な初期化処理をフェース UARTA

実行します（入力クロック供給を有効にし、モジュールを初期化します）。

R_UARTA_Set_PowerOn

UARTA0/UARTA1 へのクロック供給を開始します。

R_UARTA_Set_PowerOff

UARTA0/UARTA1 へのクロック供給を停止します。

R_IICAn_Set_PowerOn

シリアル・インタ

IICAn へのクロック供給を開始します。

R_IICAn_Set_PowerOff

フェース IICA

IICAn へのクロック供給を停止します。

R_IICAn_Set_Reset

IICAn モジュールをリセット状態にします。

R_IICAn_Release_Reset

IICAn モジュールのリセット状態を解除します。

R_RLIN3n_Set_PowerOn

LIN/UART module

RLIN3n へのクロック供給を開始します。
RLIN3n へのクロック供給を停止します。

R_RLIN3n_Set_PowerOff
R_DALI_Set_PowerOn

デジタル調光照明

DALI へのクロック供給を開始します。

R_DALI_Set_PowerOff

インタフェース

DALI へのクロック供給を停止します。

R_DALI_Set_Reset(DALI)DALI モジュールをリセット状態にします。
DALI モジュールのリセット状態を解除します。

R_DALI_Release_Reset
電圧検出回路R_LVD_Start_Interrupt

INTLVI 割り込みを開始します。

R_LVD_Stop_Interrupt

INTLVI 割り込みを停止します。

r_lvd_interrupt

INTLVI 割り込みに応じて処理を実行します。

R_REMC_Set_PowerOn

リモコン信号受信

REMC へのクロック供給を開始します。

R_REMC_Set_PowerOff

機能REMC へのクロック供給を停止します。

R_REMC_Set_Reset

REMC モジュールをリセット状態にします。

R_REMC_Release_Reset

REMC モジュールのリセット状態を解除します。

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 36 of 771

スマート・コンフィグレータ.

4. API 関数

main
main 関数です。
備考

単体版および CS+で使用する場合、main()に以下のコードを手動で追加することに注意下さい。
1)#include “r_smc_entry.h” の追加

2)

EI() の追加［指定形式］
void

main(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 37 of 771

スマート・コンフィグレータ.

4. API 関数

R_Systeminit
各種周辺機能を制御するうえで必要となる初期化処理を行います。

［指定形式］
void

R_Systeminit(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 38 of 771

スマート・コンフィグレータ.

4. API 関数

R_DTC_Set_PowerOn
DTC へのクロック供給を開始します。

［指定形式］
void

R_DTC_Set_PowerOn(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 39 of 771

スマート・コンフィグレータ.

4. API 関数

R_DTC_Set_PowerOff
DTC へのクロック供給を停止します。

［指定形式］
void

R_DTC_Set_PowerOff(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 40 of 771

スマート・コンフィグレータ.

4. API 関数

R_TAUm_Create
TAUm を制御する前に必要な初期化処理を実行します（TAUm への入力クロックの供給を許可し、TAUm モジュールを初期化します）。
備考

この API 関数は、main()関数が実行される前に R_Systeminit から呼び出されます。

［指定形式］void

R_TAUm_Create(void);

備考

m はユニット番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 41 of 771

スマート・コンフィグレータ.

4. API 関数

R_TAUm_Set_PowerOn
TAUm へのクロック供給を開始します。

［指定形式］void

R_TAUm_ Set_PowerOn(void);

備考

m はユニット番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 42 of 771

スマート・コンフィグレータ.

4. API 関数

R_TAUm_Set_PowerOff
TAUm へのクロック供給を停止します。

［指定形式］void

R_TAUm_ Set_PowerOff(void);

備考

m はユニット番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 43 of 771

スマート・コンフィグレータ.

4. API 関数

R_TAUm_Set_Reset
TAUm モジュールをリセット状態にします。

［指定形式］void

R_TAUm_ Set_Reset(void);

備考

m はユニット番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 44 of 771

スマート・コンフィグレータ.

4. API 関数

R_TAUm_Release_Reset
TAUm モジュールのリセット状態を解除します。

［指定形式］void

R_TAUm_Release_Reset(void);

備考

m はユニット番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 45 of 771

スマート・コンフィグレータ.

4. API 関数

R_ITL_Create
32 ビット・インターバル・タイマを制御する前に必要な初期化処理を実行します（入力クロック供給を有効にし、ITLm モジュールを初期化します）。
備考

この API 関数は、main()関数が実行される前に R_Systeminit から呼び出されます。

［指定形式］void

R_ITL_Create(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 46 of 771

スマート・コンフィグレータ.

4. API 関数

R_ITL_Start_Interrupt
INTITL 割り込みを開始します。
備考

この API 関数を呼び出すことで、32 ビット・インターバル・タイマ割り込みが有効になります。32 ビット・インターバル・タイマ割り込みを使用する場合は、この API 関数を
R_{Config_ITL000_ITL001_ITL012_ITL013}_Start、または R_{Config_ITLn_ITLm}_Start、または R_{Config_ITLn}_Start と共に呼び出してください。

［指定形式］void

R_ITL_Start_Interrupt(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 47 of 771

スマート・コンフィグレータ.

4. API 関数

R_ITL_Stop_Interrupt
INTITL 割り込みを停止します。

［指定形式］void

R_ITL_Stop_Interrupt(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 48 of 771

スマート・コンフィグレータ.

4. API 関数

R_ITL_Set_PowerOn
32 ビット・インターバル・タイマへのクロック供給を開始します。

［指定形式］void

R_ITL_Set_PowerOn(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 49 of 771

スマート・コンフィグレータ.

4. API 関数

R_ITL_Set_PowerOff
32 ビット・インターバル・タイマへのクロック供給を停止します。

［指定形式］void

R_ITL_Set_PowerOff(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 50 of 771

スマート・コンフィグレータ.

4. API 関数

R_ITL_Set_Reset
32 ビット・インターバル・タイマ・モジュールをリセット状態にします。

［指定形式］void

R_ITL_Set_Reset(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 51 of 771

スマート・コンフィグレータ.

4. API 関数

R_ITL_Release_Reset
32 ビット・インターバル・タイマ・モジュールのリセット状態を解除します。

［指定形式］void

R_ITL_Release_Reset(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 52 of 771

スマート・コンフィグレータ.

4. API 関数

r_itl_interrupt
32 ビット・インターバル・タイマ割り込み（INTITL）の発生により処理を実行します。
備考

この API 関数は、INTITL の割り込みハンドラとして呼び出され、チャネル 0〜3 のいず
れかのカウンタ値が比較値と一致したときに発生します。

［指定形式］CCRL78 ツールチェーンの場合
static void __near

r_itl_interrupt(void);

LLVM ツールチェーンの場合
void

r_itl_interrupt(void);

IAR ツールチェーンの場合__interrupt static void

r_itl_interrupt(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 53 of 771

スマート・コンフィグレータ.

4. API 関数

R_TRD_Create
TRD を制御する前に必要な初期化処理を実行します（TRD 入力クロック供給を有効にし、TRD モジ
ュールを初期化します）。
備考

この API 関数は、main()関数が実行される前に R_Systeminit から呼び出されます。

［指定形式］
void

R_TRD_Create(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 54 of 771

スマート・コンフィグレータ.

4. API 関数

R_TRD_Set_PowerOn
TRD へのクロック供給を開始します。

［指定形式］
void

R_TRD_ Set_PowerOn(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 55 of 771

スマート・コンフィグレータ.

4. API 関数

R_TRD_Set_PowerOff
TRD へのクロック供給を停止します。

［指定形式］
void

R_TRD_ Set_PowerOff(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 56 of 771

スマート・コンフィグレータ.

4. API 関数

R_TRD_Set_Reset
TRD・モジュールをリセット状態にします。

［指定形式］
void

R_TRD_ Set_Reset(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 57 of 771

スマート・コンフィグレータ.

4. API 関数

R_TRD_Release_Reset
TRD・モジュールのリセット状態を解除します。

［指定形式］
void

R_TRD_ Rlease_Reset(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 58 of 771

スマート・コンフィグレータ.

4. API 関数

R_PWMOPA_Set_PowerOn
PWMOPA へのクロック供給を開始します。

［指定形式］void

R_PWMOPA_ Set_PowerOn(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 59 of 771

スマート・コンフィグレータ.

4. API 関数

R_PWMOPA_Set_PowerOff
PWMOPA へのクロック供給を停止します。

［指定形式］void

R_PWMOPA_ Set_PowerOff(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 60 of 771

スマート・コンフィグレータ.

4. API 関数

R_PWMOPA_Set_ResetPWMOPA・モジュールをリセット状態にします。

［指定形式］void

R_PWMOPA_ Set_Reset(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 61 of 771

スマート・コンフィグレータ.

4. API 関数

R_PWMOPA_Release_ResetPWMOPA・モジュールのリセット状態を解除します。

［指定形式］void

R_PWMOPA_ Release_Reset(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 62 of 771

スマート・コンフィグレータ.

4. API 関数

R_TRD_ ForcedOutput_Enable
TRD パルス出力の強制遮断を有効にします。タイマ・カウンタ実行中は呼び出せません。
R_{Config_TRDn}_Start()/R_{Config_TRD0_TRD1}_Start() の前に呼び出してください。

［指定形式］
void

R_TRD_ ForcedOutput_Enable(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 63 of 771

スマート・コンフィグレータ.

4. API 関数

R_TRD_ ForcedOutput_Disable
TRD パルス出力の強制遮断を無効にします。タイマ・カウンタ実行中は呼び出せません。
R_{Config_TRDn}_Stop()/R_{Config_TRD0_TRD1}_Stop() の後に呼び出してください。

［指定形式］
void

R_TRD_ ForcedOutput_Disable (void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 64 of 771

スマート・コンフィグレータ.

4. API 関数

R_TRJ_Set_PowerOn
TRJ へのクロック供給を開始します。

［指定形式］
void

R_TRJ_ Set_PowerOn(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 65 of 771

スマート・コンフィグレータ.

4. API 関数

R_TRJ_Set_PowerOff
TRJ へのクロック供給を停止します。

［指定形式］
void

R_TRJ_ Set_PowerOff(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 66 of 771

スマート・コンフィグレータ.

4. API 関数

R_TRJ_Set_Reset
TRJ・モジュールをリセット状態にします。

［指定形式］
void

R_TRJ_ Set_Reset(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 67 of 771

スマート・コンフィグレータ.

4. API 関数

R_TRJ_Release_Reset
TRJ・モジュールのリセット状態を解除します。

［指定形式］
void

R_TRJ_ Release_Reset(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 68 of 771

スマート・コンフィグレータ.

4. API 関数

R_TRG_Set_PowerOn
TRG へのクロック供給を開始します。

［指定形式］
void

R_TRG_ Set_PowerOn(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 69 of 771

スマート・コンフィグレータ.

4. API 関数

R_TRG_Set_PowerOff
TRG へのクロック供給を停止します。

［指定形式］
void

R_TRG_ Set_PowerOff(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 70 of 771

スマート・コンフィグレータ.

4. API 関数

R_TRG_Set_Reset
TRG・モジュールをリセット状態にします。

［指定形式］
void

R_TRG_ Set_Reset(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 71 of 771

スマート・コンフィグレータ.

4. API 関数

R_TRG_Release_Reset
TRG・モジュールのリセット状態を解除します。

［指定形式］
void

R_TRG_ Release_Reset(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 72 of 771

スマート・コンフィグレータ.

4. API 関数

R_TRX_Set_PowerOn
TRX へのクロック供給を開始します。

［指定形式］
void

R_TRX_ Set_PowerOn(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 73 of 771

スマート・コンフィグレータ.

4. API 関数

R_TRX_Set_PowerOff
TRX へのクロック供給を停止します。

［指定形式］
void

R_TRX_ Set_PowerOff(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 74 of 771

スマート・コンフィグレータ.

4. API 関数

R_TRX_Set_Reset
TRX・モジュールをリセット状態にします。

［指定形式］
void

R_TRX_ Set_Reset(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 75 of 771

スマート・コンフィグレータ.

4. API 関数

R_TRX_Release_Reset
TRX・モジュールのリセット状態を解除します。

［指定形式］
void

R_TRX_ Release_Reset(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 76 of 771

スマート・コンフィグレータ.

4. API 関数

R_TKB_Create
TKB モジュールを制御する前に必要な初期化処理を実行します（入力クロック供給を有効にし、TKB
モジュールを初期化します）。
備考

この API 関数は、main()関数が実行される前に R_Systeminit から呼び出されます。

［指定形式］void

R_TKB_Create(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 77 of 771

スマート・コンフィグレータ.

4. API 関数

R_TKB_Set_PowerOn
TKB へのクロック供給を開始します。

［指定形式］void

R_TKB_ Set_PowerOn(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 78 of 771

スマート・コンフィグレータ.

4. API 関数

R_TKB_Set_PowerOff
TKB へのクロック供給を停止します。

［指定形式］void

R_TKB_ Set_PowerOff(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 79 of 771

スマート・コンフィグレータ.

4. API 関数

R_TKB_Set_Reset
TKB・モジュールをリセット状態にします。

［指定形式］void

R_TKB_ Set_Reset(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 80 of 771

スマート・コンフィグレータ.

4. API 関数

R_TKB_Release_Reset
TKB・モジュールのリセット状態を解除します。

［指定形式］void

R_TKB_ Release_Reset(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 81 of 771

スマート・コンフィグレータ.

4. API 関数

R_RTC_Set_PowerOn
RTC へのクロック供給を開始します。

［指定形式］
void

R_RTC_Set_PowerOn(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 82 of 771

スマート・コンフィグレータ.

4. API 関数

R_RTC_Set_PowerOff
RTC へのクロック供給を停止します。

［指定形式］
void

R_RTC_Set_PowerOff(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 83 of 771

スマート・コンフィグレータ.

4. API 関数

R_IT_Set_PowerOn
12 ビット・インターバル・タイマのクロック供給を開始します。

［指定形式］
void

R_IT_Set_PowerOn(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 84 of 771

スマート・コンフィグレータ.

4. API 関数

R_IT_Set_PowerOff
12 ビット・インターバル・タイマのクロック供給を停止します。

［指定形式］
void

R_IT_Set_PowerOff(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 85 of 771

スマート・コンフィグレータ.

4. API 関数

R_ADC_Set_PowerOn
A/D コンバータへのクロック供給を開始します。

［指定形式］
void

R_ADC_Set_PowerOn(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 86 of 771

スマート・コンフィグレータ.

4. API 関数

R_ADC_Set_PowerOff
A/D コンバータへのクロック供給を停止します。

［指定形式］
void

R_ADC_Set_PowerOff(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 87 of 771

スマート・コンフィグレータ.

4. API 関数

R_ADC_Set_Reset
A/D コンバータ・モジュールをリセット状態にします。

［指定形式］
void

R_ADC_Set_Reset(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 88 of 771

スマート・コンフィグレータ.

4. API 関数

R_ADC_Release_Reset
A/D コンバータ・モジュールのリセット状態を解除します。

［指定形式］
void

R_ADC_Release_Reset(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 89 of 771

スマート・コンフィグレータ.

4. API 関数

R_DAC_Create
DAC モジュールを制御する前に必要な初期化処理を実行します（入力クロック供給を有効にし、DAm モジュールを初期化します）。
備考

この API 関数は、main()関数が実行される前に R_Systeminit から呼び出されます。

［指定形式］void

R_DAC_Create(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 90 of 771

スマート・コンフィグレータ.

4. API 関数

R_DAC_Set_PowerOn
D/A コンバータへのクロック供給を開始します。

［指定形式］void

R_DAC_Set_PowerOn(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 91 of 771

スマート・コンフィグレータ.

4. API 関数

R_DAC_Set_PowerOff
D/A コンバータへのクロック供給を停止します。

［指定形式］void

R_DAC_Set_PowerOff(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 92 of 771

スマート・コンフィグレータ.

4. API 関数

R_DAC_Set_Reset
D/A コンバータ・モジュールをリセット状態にします。

［指定形式］void

R_DAC_Set_Reset(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 93 of 771

スマート・コンフィグレータ.

4. API 関数

R_DAC_Release_Reset
D/A コンバータ・モジュールのリセット状態を解除します。

［指定形式］void

R_DAC_Release_Reset(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 94 of 771

スマート・コンフィグレータ.

4. API 関数

R_COMP_Create
コンパレータ・モジュールを制御する前に必要な初期化処理を実行します（入力クロック供給を有効にし、COMPm モジュールを初期化します）。
備考

この API 関数は、main()関数が実行される前に R_Systeminit から呼び出されます。

［指定形式］
void

R_COMP_Create(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 95 of 771

スマート・コンフィグレータ.

4. API 関数

R_COMP_Set_PowerOn
コンパレータへのクロック供給を開始します。

［指定形式］
void

R_COMP_Set_PowerOn(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 96 of 771

スマート・コンフィグレータ.

4. API 関数

R_COMP_Set_PowerOff
コンパレータへのクロック供給を停止します。

［指定形式］
void

R_COMP_Set_PowerOff(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 97 of 771

スマート・コンフィグレータ.

4. API 関数

R_COMP_Set_Reset
コンパレータ・モジュールをリセット状態にします。

［指定形式］
void

R_COMP_Set_Reset(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 98 of 771

スマート・コンフィグレータ.

4. API 関数

R_COMP_Release_Reset
コンパレータ・モジュールのリセット状態を解除します。

［指定形式］
void

R_COMP_Release_Reset(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 99 of 771

スマート・コンフィグレータ.

4. API 関数

R_PGACOMP_Create
コンパレータとプログラマブル・ゲイン・アンプ・モジュールを制御する前に必要な初期化処理を実行します（入力クロック供給を有効にし、COMPm モジュールを初期化します）。
備考

この API 関数は、main()関数が実行される前に R_Systeminit から呼び出されます。

［指定形式］void

R_PGACOMP_Create(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 100 of 771

スマート・コンフィグレータ.

4. API 関数

R_PGACOMP_Set_PowerOn
コンパレータとプログラマブル・ゲイン・アンプへのクロック供給を開始します。

［指定形式］void

R_PGACOMP_Set_PowerOn(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 101 of 771

スマート・コンフィグレータ.

4. API 関数

R_PGACOMP_Set_PowerOff
コンパレータとプログラマブル・ゲイン・アンプへのクロック供給を停止します。

［指定形式］void

R_PGACOMP_Set_PowerOff(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 102 of 771

スマート・コンフィグレータ.

4. API 関数

R_PGACOMP_Set_Reset
コンパレータとプログラマブル・ゲイン・アンプ・モジュールをリセット状態にします。

［指定形式］void

R_PGACOMP_Set_Reset(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 103 of 771

スマート・コンフィグレータ.

4. API 関数

R_PGACOMP_Release_Reset
コンパレータとプログラマブル・ゲイン・アンプ・モジュールのリセット状態を解除します。

［指定形式］void

R_PGACOMP_Release_Reset(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 104 of 771

スマート・コンフィグレータ.

4. API 関数

R_SAUm_Create
SAUm を制御する前に必要な初期化処理を実行します（入力クロック供給を有効にし、SAUm モジュールを初期化します）。
備考

この API 関数は、main()関数が実行される前に R_Systeminit から呼び出されます。

［指定形式］
void

R_SAUm_Create(void);

備考

m はユニット番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 105 of 771

スマート・コンフィグレータ.

4. API 関数

R_SAUm_Set_PowerOn
SAUm へのクロック供給を開始します。

［指定形式］
void

R_SAUm_Set_PowerOn(void);

備考

m はユニット番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 106 of 771

スマート・コンフィグレータ.

4. API 関数

R_SAUm_Set_PowerOff
SAUm へのクロック供給を停止します。

［指定形式］
void

R_SAUm_Set_PowerOff(void);

備考

m はユニット番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 107 of 771

スマート・コンフィグレータ.

4. API 関数

R_SAUm_Set_Reset
SAUm モジュールをリセット状態にします。

［指定形式］
void

R_SAUm_Set_Reset(void);

備考

m はユニット番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 108 of 771

スマート・コンフィグレータ.

4. API 関数

R_SAUm_Release_Reset
SAUm モジュールのリセット状態を解除します。

［指定形式］
void

R_SAUm_Release_Reset(void);

備考

m はユニット番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 109 of 771

スマート・コンフィグレータ.

4. API 関数

R_SAUm_Set_SnoozeOn
SAUm のウエイクアップ機能を許可します。

［指定形式］
void

R_SAUm_Set_SnoozeOn(void);

備考

m はユニット番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 110 of 771

スマート・コンフィグレータ.

4. API 関数

R_SAUm_Set_SnoozeOff
SAUm のウエイクアップ機能を禁止します。

［指定形式］
void

R_SAUm_Set_SnoozeOff(void);

備考

m はユニット番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 111 of 771

スマート・コンフィグレータ.

4. API 関数

R_UARTA_Create
UARTA0/UARTA1 を制御する前に必要な初期化処理を実行します（入力クロック供給を有効にし、モジュールを初期化します）。
備考

この API 関数は、main()関数が実行される前に R_Systeminit から呼び出されます。

［指定形式］
void

R_UARTA_Create(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 112 of 771

スマート・コンフィグレータ.

4. API 関数

R_UARTA_Set_PowerOn
UARTA0/UARTA1 へのクロック供給を開始します。

［指定形式］
void

R_UARTA_Set_PowerOn(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 113 of 771

スマート・コンフィグレータ.

4. API 関数

R_UARTA_Set_PowerOff
UARTA0/UARTA1 へのクロック供給を停止します。

［指定形式］
void

R_UARTA_Set_PowerOff(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 114 of 771

スマート・コンフィグレータ.

4. API 関数

R_IICAn_Set_PowerOn
IICAn へのクロック供給を開始します。

［指定形式］void

R_IICAn_Set_PowerOn(void);

備考n はユニット番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 115 of 771

スマート・コンフィグレータ.

4. API 関数

R_IICAn_Set_PowerOff
IICAn へのクロック供給を停止します。

［指定形式］void

R_IICAn_Set_PowerOff(void);

備考n はユニット番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 116 of 771

スマート・コンフィグレータ.

4. API 関数

R_IICAn_Set_Reset
IICAn モジュールをリセット状態にします。

［指定形式］void

R_IICAn_Set_Reset(void);

備考n はユニット番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 117 of 771

スマート・コンフィグレータ.

4. API 関数

R_IICAn_Release_Reset
IICAn モジュールのリセット状態を解除します。

［指定形式］void

R_IICAn_Release_Reset(void);

備考n はユニット番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 118 of 771

スマート・コンフィグレータ.

4. API 関数

R_RLIN3n_Set_PowerOn
RLIN3n へのクロック供給を開始します。

［指定形式］void

R_RLIN3n_Set_PowerOn(void);

備考n はユニット番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 119 of 771

スマート・コンフィグレータ.

4. API 関数

R_RLIN3n_Set_PowerOff
RLIN3n へのクロック供給を停止します。

［指定形式］void

R_RLIN3n_Set_PowerOff(void);

備考n はユニット番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 120 of 771

スマート・コンフィグレータ.

4. API 関数

R_DALI_Set_PowerOn
DALI へのクロック供給を開始します。

［指定形式］void

R_DALI_Set_PowerOn(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 121 of 771

スマート・コンフィグレータ.

4. API 関数

R_DALI_Set_PowerOff
DALI へのクロック供給を停止します。

［指定形式］void

R_DALI_Set_PowerOff(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 122 of 771

スマート・コンフィグレータ.

4. API 関数

R_DALI_Set_ResetDALI モジュールをリセット状態にします。

［指定形式］void

R_DALI_Set_Reset(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 123 of 771

スマート・コンフィグレータ.

4. API 関数

R_DALI_Release_ResetDALI モジュールのリセット状態を解除します。

［指定形式］void

R_DALI_Release_Reset(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 124 of 771

スマート・コンフィグレータ.

4. API 関数

R_LVD_Start_Interrupt
INTLVI 割り込みを開始します。

［指定形式］void

R_LVD_Start_Interrupt(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 125 of 771

スマート・コンフィグレータ.

4. API 関数

R_LVD_Stop_Interrupt
INTLVI 割り込みを停止します。

［指定形式］void

R_LVD_Stop_Interrupt(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 126 of 771

スマート・コンフィグレータ.

4. API 関数

r_lvd_interrupt
INTLVI 割り込みに伴う処理を実行します。

［指定形式］CCRL78 ツールチェーンの場合
static void __near

r_lvd_interrupt(void);

LLVM ツールチェーンの場合
void

r_lvd_interrupt(void);

IAR ツールチェーンの場合__interrupt static void

r_lvd_interrupt(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 127 of 771

スマート・コンフィグレータ.

4. API 関数

R_REMC_Set_PowerOn
REMC へのクロック供給を開始します。

［指定形式］
void

R_REMC_Set_PowerOn(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 128 of 771

スマート・コンフィグレータ.

4. API 関数

R_REMC_Set_PowerOff
REMC へのクロック供給を停止します。

［指定形式］
void

R_REMC_Set_PowerOff(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 129 of 771

スマート・コンフィグレータ.

4. API 関数

R_REMC_Set_Reset
REMC モジュールをリセット状態にします。

［指定形式］
void

R_REMC_Set_Reset(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 130 of 771

スマート・コンフィグレータ.

4. API 関数

R_REMC_Release_Reset
REMC モジュールのリセット状態を解除します。

［指定形式］
void

R_REMC_Release_Reset(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 131 of 771

スマート・コンフィグレータ.

4. API 関数

使用例
R_Xxxx_Set_PowerOn()、
R_Xxxx_Set_PowerOff()、R_Xxxx_Set_Reset()、
R_
Xxxx_Release_Reset()、R_ Xxxx_Start_Interrupt()、R_ Xxxx_Stop_Interrupt() の使用例です。
(Xxxx は、ペリフェラル名です。次のサンプルコードでは、例として 32 ビット・インターバル・タイマー（ITL）を使用しています)main.c#include "r_smc_entry.h"void main(void);void main(void){
EI();// To enable INTITL interrupt which is shared among ITL each channel
R_ITL_Start_Initerrupt();
R_Config_ITL000_Start();
R_Config_ITL001_Start();
R_Config_ITL000_Stop();
R_Config_ITL001_Stop();// To Disable INTITL interrupt which is shared among ITL each channel
R_ITL_Stop_Initerrupt();// When ITL is stopped, to reduce the power consumption and noise
R_Config_ ITL_Set_PowerOff();// To use ITL again, supplies input clock.
R_Config_ ITL_Set_PowerOn();// To set ITL in the reset state
R_ ITL_Set_Reset();// To use ITL again, release ITL from the reset state
R_ ITL_ Release_Reset();R_ITL_Create();
R_Config_ITL000_Start();
R_Config_ITL000_Stop();}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 132 of 771

スマート・コンフィグレータ.

4.2.2

4. API 関数

ポート機能

以下に、スマート・コンフィグレータがポート機能用として出力する API 関数の一覧を示します。
表 4.5 ポート機能用 API 関数
API 関数名

周辺機能

R_{Config_PORT}_Create

ポート機能

機能概要
ポートを制御する前に必要な初期化処理を実行します。

R_{Config_PORT}_ReadPmnValues

端子が出力モードのときに読み込んだポートの出力ラッチの値を指定します。

R_{Config_PORT}_ReadDigitalOutputL端子が出力モードのときに読み込んだポートの出力レ

evel

ベルを指定します。

R_{Config_PORT}_Create_UserInit

ポート機能に関するユーザ独自の初期化処理を実行します。

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 133 of 771

スマート・コンフィグレータ.

4. API 関数

R_Config_PORT_Create
ポートを制御する前に必要な初期化処理を実行します。
備考

この API 関数は、main()関数を実行する前に、R_Systeminit から呼び出されます。

［指定形式］
void

R_{Config_PORT}_Create(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 134 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_PORT}_ReadPmnValues
端子が出力モードのときに読み込んだポートの出力ラッチの値を指定します。

［指定形式］
void

R_{Config_PORT}_ReadPmnValues(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 135 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_PORT}_ReadDigitalOutputLevel
端子が出力モードのときに読み込んだポートの出力レベルを指定します。

［指定形式］
void

R_{Config_PORT}_ReadDigitalOutputLevel(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 136 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_PORT}_Create_UserInit
ポート機能に関するユーザ独自の初期化処理を実行します。
備考

この API 関数は、R_{Config_PORT}_Create のコールバック・ルーチンとして呼び出されます。

［指定形式］
void

R_{Config_PORT}_Create_UserInit(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 137 of 771

スマート・コンフィグレータ.

4. API 関数

使用例
端子が出力モードのときに読み取られるポート端子の出力レベルを設定する例です。
main.c#include "r_smc_entry.h"void main(void);void main(void){
EI();
R_Config_PORT_ ReadDigitalOutputLevel ();}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 138 of 771

スマート・コンフィグレータ.

4.2.3

4. API 関数

ディレイ・カウンタ

以下に、スマート・コンフィグレータがディレイ・カウンタ用として出力する API 関数の一覧を示します。
表 4.6 ディレイ・カウンタ用 API 関数
API 関数名
R_{Config_TAUm_n}_Create

周辺機能

機能概要

タイマ・アレイ・

TAUm チャネル・モジュールをディレイ・カウンタ・

ユニット

モードで制御する前に必要な初期化処理を実行します。

R_{Config_TAUm_n}_Start

TAUm のチャネル n のカウンタを起動します。

R_{Config_TAUm_n}_Stop

TAUm のチャネル n のカウンタを停止します。

R_{Config_TAUm_n}_Lower8bits_Start

TAUm のチャネル n の下位側 8 ビット・カウンタを起動します。

R_{Config_TAUm_n}_Lower8bits_Stop

TAUm のチャネル n の下位側 8 ビット・カウンタを停止します。

R_{Config_TAUm_n}_Set_SoftwareTrig

ソフトウェア・トリガを発生させます。

gerOn
R_{Config_TAUm_n}_Create_UserInit

TAUm のチャネル n に関するユーザ独自の初期化処理を実行します。

r_{Config_TAUm_n}_interrupt

R20UT4852JJ0105
2024.07.22

Rev.1.05

INTTMmn 割り込みに伴う処理を実行します。

Page 139 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TAUm_n}_Create
TAUm チャネル・モジュールをディレイ・カウンタ・モードで制御する前に必要な初期化処理を実行します。
備考

この API 関数は、R_TAUm_Create から呼び出されます。

［指定形式］
void

R_{Config_TAUm_n}_Create(void);

備考

m はユニット番号、n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 140 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TAUm_n}_Start
TAUm のチャネル n のカウンタを起動します。

［指定形式］
void

R_{Config_TAUm_n}_Start(void);

備考

m はユニット番号、n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 141 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TAUm_n}_Stop
TAUm のチャネル n のカウンタを停止します。

［指定形式］
void

R_{Config_TAUm_n}_Stop(void);

備考

m はユニット番号、n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 142 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TAUm_n}_Lower8bits_Start
TAUm のチャネル n の下位側 8 ビット・カウンタを起動します。

［指定形式］
void

R_{Config_TAUm_n}_Lower8bits_Start(void);

備考

m はユニット番号、n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 143 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TAUm_n}_Lower8bits_Stop
TAUm のチャネル n の下位側 8 ビット・カウンタを停止します。

［指定形式］
void

R_{Config_TAUm_n}_Lower8bits_Stop(void);

備考

m はユニット番号、n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 144 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TAUm_n}_Set_SoftwareTriggerOn
ソフトウェア・トリガを発生させます。

［指定形式］
void

R_{Config_TAUm_n}_Set_SoftwareTriggerOn(void);

備考

m はユニット番号、n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 145 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TAUm_n}_Create_UserInit
TAUm のチャネル n に関するユーザ独自の初期化処理を実行します。
備考

この API 関数は、R_{Config_TAUm_n}_Create のコールバック・ルーチンとして呼び出されます。

［指定形式］
void

R_{Config_TAUm_n}_Create_UserInit(void);

備考

m はユニット番号、n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 146 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_TAUm_n}_interrupt
INTTMmn 割り込みに伴う処理を実行します。
備考

この API 関数は、カウント終了割り込み（INTTMmn）の割り込みハンドラとして呼び出され、カウンタ値（TCRmn）が 0000H に達したときに発生します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_TAUm_n}_interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_TAUm_n}_interrupt(void);

IAR ツールチェーンの場合__interrupt static void
備考

r_{Config_TAUm_n}_interrupt(void);m はユニット番号、n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 147 of 771

スマート・コンフィグレータ.

4. API 関数

使用例
TAU チャネル 0 をディレイ・カウンタ・モードとしてカウントし、チャネル 1 を 8 ビット・ディレ
イ・カウンタ・モードとしてカウントする例です。
main.c#include "r_smc_entry.h"
extern uint8_t ch0_run_countextern uint8_t ch1_run_countvoid main(void);void main(void){
EI();
tau_run_count = 0;
R_Config_TAU0_0_Start();
R_Config_TAU0_0_Set_SoftwareTriggerOn();
while (ch0_run_count < 20);
R_Config_TAU0_0_Stop();
R_Config_TAU0_1_Lower8bits_Start();
R_Config_TAU0_1_Set_SoftwareTriggerOn();
while (ch0_run_count < 20);
R_Config_TAU0_1_Lower8bits_Stop();}
Config_TAU0_0_user.c/* Start user code for global. Do not edit comment generated here */uint8_t ch0_run_count/* End user code. Do not edit comment generated here */static void __near r_Config_TAU0_0_interrupt (void){/* Start user code for r_Config_ TAU0_0_interrupt. Do not edit comment generated here */ch0_run_count ++;/* End user code. Do not edit comment generated here */}Config_TAU0_1_user.c/* Start user code for global. Do not edit comment generated here */uint8_t ch1_run_count/* End user code. Do not edit comment generated here */static void __near r_Config_TAU0_1_interrupt (void){/* Start user code for r_Config_TAU0_1_interrupt. Do not edit comment generated here */ch1_run_count ++;/* End user code. Do not edit comment generated here */}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 148 of 771

スマート・コンフィグレータ.

4.2.4

4. API 関数

分周機能

以下に、スマート・コンフィグレータが分周機能用として出力する API 関数の一覧を示します。
表 4.7 分周機能用 API 関数
API 関数名
R_{Config_TAUm_n}_Create

周辺機能

機能概要

タイマ・アレイ・

TAUm チャネル・モジュールを分周器機能モードで制ユニット

御する前に必要な初期化処理を実行します。

R_{Config_TAUm_n}_Start

TAUm のチャネル n のカウンタを起動します。

R_{Config_TAUm_n}_Stop

TAUm のチャネル n のカウンタを停止します。

R_{Config_TAUm_n}_Create_UserInit

TAUm のチャネル n に関するユーザ独自の初期化処理を実行します。

r_{Config_TAUm_n}_interrupt

R20UT4852JJ0105
2024.07.22

Rev.1.05

INTTMmn 割り込みに伴う処理を実行します。

Page 149 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TAUm_n}_Create
TAUm チャネル・モジュールを分周器機能モードで制御する前に必要な初期化処理を実行します。
備考

この API 関数は、R_TAUm_Create から呼び出されます。

［指定形式］
void

R_{Config_TAUm_n}_Create(void);

備考

m はユニット番号、n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 150 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TAUm_n}_Start
TAUm のチャネル n のカウンタを起動します。

［指定形式］
void

R_{Config_TAUm_n}_Start(void);

備考

m はユニット番号、n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 151 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TAUm_n}_Stop
TAUm のチャネル n のカウンタを停止します。

［指定形式］
void

R_{Config_TAUm_n}_Stop(void);

備考

m はユニット番号、n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 152 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TAUm_n}_Create_UserInit
TAUm のチャネル n に関するユーザ独自の初期化処理を実行します。
備考

この API 関数は、R_{Config_TAUm_n}_Create のコールバック・ルーチンとして呼び出されます。

［指定形式］
void

R_{Config_TAUm_n}_Create_UserInit(void);

備考

m はユニット番号、n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 153 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_TAUm_n}_interrupt
INTTMmn 割り込みに伴う処理を実行します。
備考

この API 関数は、カウント終了割り込み（INTTMmn）の割り込みハンドラとして呼び出され、カウンタ値（TCRmn）が 0000H に達したときに発生します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_TAUm_n}_interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_TAUm_n}_interrupt(void);

IAR ツールチェーンの場合__interrupt static void
備考

r_{Config_TAUm_n}_interrupt(void);m はユニット番号、n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 154 of 771

スマート・コンフィグレータ.

4. API 関数

使用例
分周器機能モードでカウントする TAU チャネル 0 を使用する例です。
main.c#include "r_smc_entry.h"
extern uint8_t ch0_run_countvoid main(void);void main(void){
EI();
R_Config_TAU0_0_Start();while( ch0_run_count < 20);
R_Config_TAU0_0_Stop();}
Config_TAU0_0_user.c/* Start user code for global. Do not edit comment generated here */uint8_t ch0_run_count/* End user code. Do not edit comment generated here */static void __near r_Config_TAU0_0_interrupt (void){/* Start user code for r_Config_ TAU0_0_interrupt. Do not edit comment generated here */ch0_run_count ++;/* End user code. Do not edit comment generated here */}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 155 of 771

スマート・コンフィグレータ.

4.2.5

4. API 関数

外部イベント・カウンタ（タイマ・アレイ・ユニット）

以下に、スマート・コンフィグレータが外部イベント・カウンタ用として出力する API 関数の一覧を示します。
表 4.8 外部イベント・カウンタ（タイマ・アレイ・ユニット）用 API 関数
API 関数名
R_{Config_TAUm_n}_Create

周辺機能

機能概要

タイマ・アレイ・

TAUm チャネル・モジュールを外部イベント・カウン

ユニット

タ・モードで制御する前に必要な初期化処理を実行します。

R_{Config_TAUm_n}_Start

TAUm のチャネル n のカウンタを起動します。

R_{Config_TAUm_n}_Stop

TAUm のチャネル n のカウンタを停止します。

R_{Config_TAUm_n}_Lower8bits_Start

TAUm のチャネル n の下位側 8 ビット・カウンタを起動します。

R_{Config_TAUm_n}_Lower8bits_Stop

TAUm のチャネル n の下位側 8 ビット・カウンタを停止します。

R_{Config_TAUm_n}_Create_UserInit

TAUm のチャネル n に関するユーザ独自の初期化処理を実行します。

r_{Config_TAUm_n}_interrupt

R20UT4852JJ0105
2024.07.22

Rev.1.05

INTTMmn 割り込みに伴う処理を実行します。

Page 156 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TAUm_n}_Create
TAUm チャネル・モジュールを外部イベント・カウンタ・モードで制御する前に必要な初期化処理を実行します。
備考

この API 関数は、R_TAUm_Create から呼び出されます。

［指定形式］
void

R_{Config_TAUm_n}_Create(void);

備考

m はユニット番号、n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 157 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TAUm_n}_Start
TAUm のチャネル n のカウンタを起動します。

［指定形式］
void

R_{Config_TAUm_n}_Start(void);

備考

m はユニット番号、n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 158 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TAUm_n}_Stop
TAUm のチャネル n のカウンタを停止します。

［指定形式］
void

R_{Config_TAUm_n}_Stop(void);

備考

m はユニット番号、n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 159 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TAUm_n}_Lower8bits_Start
TAUm のチャネル n の下位側 8 ビット・カウンタを起動します。

［指定形式］
void

R_{Config_TAUm_n}_Lower8bits_Start(void);

備考

m はユニット番号、n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 160 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TAUm_n}_Lower8bits_Stop
TAUm のチャネル n の下位側 8 ビット・カウンタを停止します。

［指定形式］
void

R_{Config_TAUm_n}_Lower8bits_Stop(void);

備考

m はユニット番号、n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 161 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TAUm_n}_Create_UserInit
TAUm のチャネル n に関するユーザ独自の初期化処理を実行します。
備考

この API 関数は、R_{Config_TAUm_n}_Create のコールバック・ルーチンとして呼び出されます。

［指定形式］
void

R_{Config_TAUm_n}_Create_UserInit(void);

備考

m はユニット番号、n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 162 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_TAUm_n}_interrupt
INTTMmn 割り込みに伴う処理を実行します。
備考

この API 関数は、カウント終了割り込み（INTTMmn）の割り込みハンドラとして呼び出され、カウンタ値（TCRmn）が 0000H に達したときに発生します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_TAUm_n}_interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_TAUm_n}_interrupt(void);

IAR ツールチェーンの場合__interrupt static void
備考

r_{Config_TAUm_n}_interrupt(void);m はユニット番号、n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 163 of 771

スマート・コンフィグレータ.

4. API 関数

使用例
TAU チャネル 0 を外部イベント・カウンタとしてカウントし、チャネル 1 を 8 ビット外部イベント・
カウンタとしてカウントする例です。
main.c#include "r_smc_entry.h"
extern uint8_t ch0_run_countextern uint8_t ch1_run_countvoid main(void);void main(void){
EI();
R_Config_TAU0_0_Start();while (ch0_run_count < 20);
R_Config_TAU0_0_Stop();
R_Config_TAU0_1_Lower8bits_Start();while (ch1_run_count < 20);
R_Config_TAU0_1_Lower8bits_Stop();}
Config_TAU0_0_user.c/* Start user code for global. Do not edit comment generated here */uint8_t ch0_run_count/* End user code. Do not edit comment generated here */static void __near r_Config_TAU0_0_interrupt (void){/* Start user code for r_Config_ TAU0_0_interrupt. Do not edit comment generated here */ch0_run_count ++;/* End user code. Do not edit comment generated here */}Config_TAU0_1_user.c/* Start user code for global. Do not edit comment generated here */uint8_t ch1_run_count/* End user code. Do not edit comment generated here */static void __near r_Config_TAU0_1_interrupt (void){/* Start user code for r_Config_TAU0_1_interrupt. Do not edit comment generated here */ch1_run_count ++;/* End user code. Do not edit comment generated here */}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 164 of 771

スマート・コンフィグレータ.

4.2.6

4. API 関数

外部イベント・カウンタ（タイマ RJ）

以下に、スマート・コンフィグレータが外部イベント・カウンタ（TRJOn 端子への入力）用として出力する API 関数の一覧を示します。
表 4.9 外部イベント・カウンタ（タイマ RJ）用 API 関数
API 関数名

周辺機能
タイマ RJ

R_{Config_TRJn}_Create

機能概要
タイマ RJn モジュールを外部イベント・カウンタ・モードで制御する前に必要な初期化処理を実行します。

R_{Config_TRJn}_Start

TRJn のカウンタを起動します。

R_{Config_TRJn}_Stop

TRJn のカウンタを停止します。

R_{Config_TRJn}_Create_UserInit

TRJn に関するユーザ独自の初期化処理を実行します。

r_{Config_TRJn}_interrupt

INTTRJn 割り込みに伴う処理を実行します。

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 165 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRJn}_Create
タイマ RJn モジュールを外部イベント・カウンタ・モードで制御する前に必要な初期化処理を実行します。
備考

この API 関数は、main()関数を実行する前に、R_Systeminit から呼び出されます。

［指定形式］
void

R_{Config_TRJn}_Create(void);

備考

n=0

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 166 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRJn}_Start
TRJn のカウンタを起動します。

［指定形式］
void

R_{Config_TRJn}_Start(void);

備考

n=0

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 167 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRJn}_Stop
TRJn のカウンタを停止します。

［指定形式］
void

R_{Config_TRJn}_Stop(void);

備考

n=0

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 168 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRJn}_Create_UserInit
TRJn に関するユーザ独自の初期化処理を実行します。
備考

この API 関数は、R_{Config_TRJn}_Create のコールバック・ルーチンとして呼び出されます。

［指定形式］
void

R_{Config_TRJn}_Create_UserInit(void);

備考

n=0

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 169 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_TRJn}_interrupt
INTTRJn 割り込みに伴う処理を実行します。
備考

この API 関数は、TRJn 割り込み（INTTRJn）の割り込みハンドラとして呼び出され、カウンタがアンダーフローのときに発生します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_TRJn}_interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_TRJn}_interrupt(void);

IAR ツールチェーンの場合__interrupt static void
備考

r_{Config_TRJn}_interrupt(void);

n=0

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 170 of 771

スマート・コンフィグレータ.

4. API 関数

使用例
TRJ0 カウントをユーザ定義周期の外部イベント・カウンタとして使用する例です。
main.c#include "r_smc_entry.h"
extern uint8_t ch0_run_countvoid main(void);void main(void){
EI();
R_Config_TRJ0_Start();while (ch0_run_count < 20);
R_Config_TRJ0_Stop();}
Config_TRJ0_0_user.c/* Start user code for global. Do not edit comment generated here */uint8_t ch0_run_count/* End user code. Do not edit comment generated here */static void __near r_Config_TRJ0_interrupt (void){/* Start user code for r_Config_TRJ0_interrupt. Do not edit comment generated here */ch0_run_count ++;/* End user code. Do not edit comment generated here */}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 171 of 771

スマート・コンフィグレータ.

4.2.7

4. API 関数

入力信号のハイ／ロウ・レベル幅測定（タイマ・アレイ・ユニット）

以下に、スマート・コンフィグレータが入力信号のハイ／ロウ・レベル幅測定用として出力する API
関数の一覧を示します。
表 4.10 入力信号のハイ／ロウ・レベル幅測定（タイマ・アレイ・ユニット）用 API 関数
API 関数名
R_{Config_TAUm_n}_Create

周辺機能

機能概要

タイマ・アレイ・

入力信号のハイ／ロウ・レベル幅測定モードで TAUm

ユニット

チャネル・モジュールを制御する前に必要な初期化処理を実行します。

R_{Config_TAUm_n}_Start

TAUm のチャネル n のカウンタを起動します。

R_{Config_TAUm_n}_Stop

TAUm のチャネル n のカウンタを停止します。

R_{Config_TAUm_n}_Get_PulseWidth

TAUm のチャネル n の入力パルス幅を測定します。

R_{Config_TAUm_n}_Create_UserInit

TAUm のチャネル n に関するユーザ独自の初期化処理を実行します。

r_{Config_TAUm_n}_interrupt

R20UT4852JJ0105
2024.07.22

Rev.1.05

INTTMmn 割り込みに伴う処理を実行します。

Page 172 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TAUm_n}_Create
入力信号のハイ／ロウ・レベル幅測定モードで TAUm チャネル・モジュールを制御する前に必要な初期化処理を実行します。
備考

この API 関数は、R_TAUm_Create から呼び出されます。

［指定形式］
void

R_{Config_TAUm_n}_Create(void);

備考

m はユニット番号、n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 173 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TAUm_n}_Start
TAUm のチャネル n のカウンタを起動します。

［指定形式］
void

R_{Config_TAUm_n}_Start(void);

備考

m はユニット番号、n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 174 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TAUm_n}_Stop
TAUm のチャネル n のカウンタを停止します。

［指定形式］
void

R_{Config_TAUm_n}_Stop(void);

備考

m はユニット番号、n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 175 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TAUm_n}_Get_PulseWidth
TAUm のチャネル n の入力パルス幅を測定します。

［指定形式］
void

R_{Config_TAUm_n}_Get_PulseWidth(uint32_t * const width);

備考

m はユニット番号、n はチャネル番号を示します。

［引数］
I/O

引数

説明

O

uint32_t * const width;

入力パルス幅を格納するアドレス

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 176 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TAUm_n}_Create_UserInit
TAUm のチャネル n に関するユーザ独自の初期化処理を実行します。
備考

この API 関数は、R_{Config_TAUm_n}_Create のコールバック・ルーチンとして呼び出されます。

［指定形式］
void

R_{Config_TAUm_n}_Create_UserInit(void);

備考

m はユニット番号、n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 177 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_TAUm_n}_interrupt
INTTMmn 割り込みに伴う処理を実行します。
備考

この API 関数は、キャプチャ割り込みの割り込みハンドラ（INTTMmn）として呼ばれ、有効なキャプチャ・エッジが検出され、カウンタ値（TCRmn）がタイマ・データ・レジ
スタ mn（TDRmn）に転送されたときに発生します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_TAUm_n}_interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_TAUm_n}_interrupt(void);

IAR ツールチェーンの場合__interrupt static void
備考

r_{Config_TAUm_n}_interrupt(void);m はユニット番号、n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 178 of 771

スマート・コンフィグレータ.

4. API 関数

使用例
入力のロウ・レベル幅を取得するための例です。
main.c#include "r_smc_entry.h"
extern volatile uint8_t tau_interrupt_flag;
uint32_t width;void main(void);void main(void){
EI();
tau_interrupt_flag = 0;
R_Config_TAU0_0_Start();while( tau_interrupt_flag == 0);
tau_interrupt_flag=0;
R_Config_TAU0_0_Get_PulseWidth(&width);}
Config_TAU0_0_user.c/* Start user code for global. Do not edit comment generated here */uint8_t tau_interrupt_flag/* End user code. Do not edit comment generated here */static void __near r_Config_TAU0_0_interrupt (void){/* Start user code for r_Config_TAU0_0_interrupt. Do not edit comment generated here *//* Set the flag */tau_interrupt_flag = 1U;/* End user code. Do not edit comment generated here */}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 179 of 771

スマート・コンフィグレータ.

4.2.8

4. API 関数

入力信号のハイ／ロウ・レベル幅測定（タイマ RJ）

以下に、スマート・コンフィグレータが入力信号のハイ／ロウ・レベル幅（TRJOn 端子への入力）測定用として出力する API 関数の一覧を示します。
表 4.11 入力信号のハイ／ロウ・レベル幅測定（タイマ RJ）用 API 関数
API 関数名

周辺機能
タイマ RJ

R_{Config_TRJn}_Create

機能概要
入力信号のハイ／ロウ・レベル幅測定モードで TRJn モ
ジュールを制御する前に必要な初期化処理を実行します。

R_{Config_TRJn}_Start

TRJn のカウンタを起動します。

R_{Config_TRJn}_Stop

TRJn のカウンタを停止します。

R_{Config_TRJn}_Get_PulseWidth

TRJn の入力パルス幅を測定します。

R_{Config_TRJn}_Create_UserInit

TRJn に関するユーザ独自の初期化処理を実行します。

r_{Config_TRJn}_interrupt

INTTRJn 割り込みに伴う処理を実行します。

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 180 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRJn}_Create
入力信号（TRJIOn 端子の入力）のハイ／ロウ・レベル幅測定モードで TRJn モジュールを制御する
前に必要な初期化処理を実行します。
備考

この API 関数は、main()関数を実行する前に、R_Systeminit から呼び出されます。

［指定形式］
void

R_{Config_TRJn}_Create(void);

備考

n=0

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 181 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRJn}_Start
TRJn のカウンタを起動します。

［指定形式］
void

R_{Config_TRJn}_Start(void);

備考

n=0

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 182 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRJn}_Stop
TRJn のカウンタを停止します。

［指定形式］
void

R_{Config_TRJn}_Stop(void);

備考

n=0

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 183 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRJn}_Get_PulseWidth
TRJn の入力パルス幅を測定します。

［指定形式］
void

R_{Config_TRJn}_Get_PulseWidth(uint32_t * const width);

備考

n=0

［引数］
I/O

引数

説明

O

uint32_t * const width;

入力パルス幅を格納するアドレス

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 184 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRJn}_Create_UserInit
TRJn に関するユーザ独自の初期化処理を実行します。
備考

この API 関数は、R_{Config_TRJn}_Create のコールバック・ルーチンとして呼び出されます。

［指定形式］
void

R_{Config_TRJn}_Create_UserInit(void);

備考

n=0

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 185 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_TRJn}_interrupt
INTTRJn 割り込みに伴う処理を実行します。
備考

この API 関数は、パルス幅測定モードで外部入力（TRJIOn）のアクティブ幅の測定が完了したときに発生する TRJn カウンタアンダーフロー割り込み（INTTRJn）の割り込み
ハンドラとして呼び出されます。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_TRJn}_interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_TRJn}_interrupt(void);

IAR ツールチェーンの場合__interrupt static void
備考

r_{Config_TRJn}_interrupt(void);

n=0

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 186 of 771

スマート・コンフィグレータ.

4. API 関数

使用例
TRJIO0 端子から TRJ0 入力パルス幅を取得するための例です。
main.c#include "r_smc_entry.h"
extern volatile uint8_t interrupt_flag;
uint32_t width;void main(void);void main(void){
EI();
interrupt_flag = 0;
R_Config_TRJ0_Start();while(interrupt_flag == 0);
R_Config_TRJ0_Stop();
R_Config_TRJ0_Get_PulseWidth(&width);}
Config_TRJ0_user.c/* Start user code for global. Do not edit comment generated here */uint8_t interrupt_flag/* End user code. Do not edit comment generated here */static void __near r_Config_TRJ0_interrupt (void){...
/* Start user code for r_Config_TRJ0_interrupt. Do not edit comment generated here *//* Set the flag */interrupt_flag = 1U;/* End user code. Do not edit comment generated here */}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 187 of 771

スマート・コンフィグレータ.

4.2.9

4. API 関数

PWM 出力（タイマ・アレイ・ユニット）

以下に、スマート・コンフィグレータが PWM 出力機能用として出力する API 関数の一覧を示します。
表 4.12 PWM 出力（タイマ・アレイ・ユニット）用 API 関数
API 関数名
R_{Config_TAUm_n}_Create

周辺機能

機能概要

タイマ・アレイ・

TAUm チャネル・モジュールを PWM 出力モードで制ユニット

御する前に必要な初期化処理を実行します。

R_{Config_TAUm_n}_Start

TAUm のチャネル n のカウンタを起動します。

R_{Config_TAUm_n}_Stop

TAUm のチャネル n のカウンタを停止します。

R_{Config_TAUm_n}_Create_UserInit

TAUm のチャネル n に関するユーザ独自の初期化処理を実行します。

r_{Config_TAUm_n}_channeln_interrupt

INTTMmn 割り込みに伴う処理を実行します。

r_{Config_TAUm_n}_channelp_interrupt

INTTMmp 割り込みに伴う処理を実行します。

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 188 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TAUm_n}_Create
TAUm チャネル・モジュールを PWM 出力モードで制御する前に必要な初期化処理を実行します。
備考

この API 関数は、R_TAUm_Create から呼び出されます。

［指定形式］
void

R_{Config_TAUm_n}_Create(void);

備考

m はユニット番号、n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 189 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TAUm_n}_Start
TAUm のチャネル n のカウンタを起動します。

［指定形式］
void

R_{Config_TAUm_n}_Start(void);

備考

m はユニット番号、n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 190 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TAUm_n}_Stop
TAUm のチャネル n のカウンタを停止します。

［指定形式］
void

R_{Config_TAUm_n}_Stop(void);

備考

m はユニット番号、n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 191 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TAUm_n}_Create_UserInit
TAUm のチャネル n に関するユーザ独自の初期化処理を実行します。
備考

この API 関数は、R_{Config_TAUm_n}_Create のコールバック・ルーチンとして呼び出されます。

［指定形式］
void

R_{Config_TAUm_n}_Create_UserInit(void);

備考

m はユニット番号、n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 192 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_TAUm_n}_channeln_interrupt
INTTMmn 割り込みに伴う処理を実行します。
備考

この API 関数は、カウント終了割り込み（INTTMmn）の割り込みハンドラとして呼び出され、カウンタ値（TCRmn）が 0000H に達したときに発生します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_TAUm_n}_channeln_interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_TAUm_n}_channeln_interrupt(void);

IAR ツールチェーンの場合__interrupt static void
備考

r_{Config_TAUm_n}_channeln_interrupt(void);m はユニット番号、n はマスタ・チャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 193 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_TAUm_n}_channelp_interrupt
INTTMmp 割り込みに伴う処理を実行します。
備考

この API 関数は、カウント終了割り込み（INTTMmp）の割り込みハンドラとして呼び出され、カウンタ値（TCRmp）が 0000H に達したときに発生します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_TAUm_n}_channelp_interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_TAUm_n}_channelp_interrupt(void);

IAR ツールチェーンの場合__interrupt static void
備考 1.
備考 2.

r_{Config_TAUm_n}_channelp_interrupt(void);m はユニット番号、n はマスタ・チャネル番号、p はスレーブ・チャネル番号を示します。
n＜p≦7

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 194 of 771

スマート・コンフィグレータ.

4. API 関数

使用例
TAU チャネル 0/1 を開始して PWM パルスを出力する例です。
main.c#include "r_smc_entry.h"
extern uint8_t tau_pwm_countvoid main(void);void main(void){
EI();
tau_pwm_count = 0;
R_Config_TAU0_0_Start();while( tau_interrupt_flag < 10);
R_Config_TAU0_0_Stop();}
Config_TAU0_0_user.c/* Start user code for global. Do not edit comment generated here */uint8_t tau_pwm_count/* End user code. Do not edit comment generated here */static void __near r_Config_TAU0_01_channel1_interrupt (void){/* Start user code for r_Config_TAU0_01_channel1_interrupt. Do not edit comment generated here */tau_pwm_count ++;/* End user code. Do not edit comment generated here */}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 195 of 771

スマート・コンフィグレータ.

4.2.104. API 関数

PWM 出力（PWM モードを使用したタイマ RD／拡張 PWM モード）

以下に、スマート・コンフィグレータが PWM 出力機能用として出力する API 関数の一覧を示します。
表 4.13 PWM 出力（PWM モードを使用したタイマ RD／拡張 PWM モード）用 API 関数
API 関数名

周辺機能

R_{Config_TRDn}_Create

タイマ RD

機能概要
TRDn モジュールを PWM モード／拡張 PWM モードで制御する前に必要な初期化処理を実行します。

R_{Config_TRDn}_Start

TRDn のカウンタを起動します。

R_{Config_TRDn}_Stop

TRDn のカウンタを停止します。

R_{Config_TRDn}_Set_TRDn_ReloadTr

拡張 PWM モードで TRDn バッファレジスタのリロー

iger

ドトリガを生成します。

R_{Config_TRDn}_Create_UserInit

TRDn に関するユーザ独自の初期化処理を実行します。

r_{Config_TRDn}_trdn_interrupt

INTRDn 割り込みに伴う処理を実行します。

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 196 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRDn}_Create
TRDn モジュールを PWM モード／拡張 PWM モードで制御する前に必要な初期化処理を実行します。
備考

この API 関数は、R_TRD_Create から呼び出されます。

［指定形式］
void

R_{Config_TRDn}_Create(void);

備考

n = 0, 1

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 197 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRDn}_Start
TRDn のカウンタを起動します。

［指定形式］
void

R_{Config_TRDn}_Start(void);

備考

n = 0, 1

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 198 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRDn}_Stop
TRDn のカウンタを停止します。

［指定形式］
void

R_{Config_TRDn}_Stop(void);

備考

n = 0, 1

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 199 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRDn}_Set_TRDn_ReloadTrigger
拡張 PWM モードで TRDn バッファレジスタのリロードトリガを生成します。

［指定形式］
MD_STATUS
buffer);
備考

R_{Config_TRDn}_Set_TRDn_ReloadTrigger (st_extpwm_buffer_registers_t *n = 0, 1

［引数］
引数

I/O
I

st_extpwm_buffer_registers_t * buffer;

備考

説明
バッファレジスタ値

構造体 st_extpwm_buffer_registers_t を以下に示します。
typedef struct {uint16_t trdgrcn;
uint16_t trdgrdn;
uint16_t trdcmpdn;} st_extpwm_buffer_registers_t;

［戻り値］
マクロ

説明

MD_OK

正常終了

MD_ERROR

リロードトリガステータス待ち

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 200 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRDn}_Create_UserInit
TRDn に関するユーザ独自の初期化処理を実行します。
備考

この API 関数は、R_{Config_TRDn}_Create のコールバック・ルーチンとして呼び出されます。

［指定形式］
void

R_{Config_TRDn}_Create_UserInit(void);

備考

n = 0, 1

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 201 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_TRDn}_trdn_interrupt
INTRDn 割り込みに伴う処理を実行します。
備考

この API 関数は、TRDn レジスタの内容が TRDGRhn（h = A、B、C、または D）レジス
タの内容と一致するか、TRDn レジスタがオーバーフローの場合に発生するカウント
・コンペア一致割り込み（INTRDn）の割り込みハンドラとして呼び出されます。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_TRDn}_trdn_interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_TRDn}_trdn_interrupt(void);

IAR ツールチェーンの場合__interrupt static void
備考

r_{Config_TRDn}_trdn_interrupt(void);n = 0, 1

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 202 of 771

スマート・コンフィグレータ.

4. API 関数

使用例
TRD0 を起動して 3 つの PWM 波形パルスを出力する例です。
main.c#include "r_smc_entry.h"
extern uint8_t trd_pwm_countvoid main(void);void main(void){
EI();
R_Config_TRD0_Start();while (trd_pwm_count < 10);
R_Config_TRD0_Stop();}
Config_TRD0_user.c/* Start user code for global. Do not edit comment generated here */uint8_t trd_pwm_count/* End user code. Do not edit comment generated here */static void __near r_Config_TRD0_trd0_interrupt (void){/* Start user code for r_Config_TRD0_trd0_interrupt. Do not edit comment generated here */trd_pwm_count ++;/* End user code. Do not edit comment generated here */}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 203 of 771

スマート・コンフィグレータ.

4.2.11

4. API 関数

PWM 出力（PWM モードを使用したタイマ RD0 と RD1／PWM3 モード／拡張 PWM モード／タイマ KB3 PWM 出力ゲートモード）

以下に、スマート・コンフィグレータが PWM 出力機能（PWM3 モードで 2 つの PWM 波形、KB3
PWM 出力ゲートモードで 4 つーの PWM 波形、または PWM モード／拡張 PWM モードで使用される 6
つの PWM 波形の出力）用として出力する API 関数の一覧を示します。
表 4.14 PWM 出力（PWM モードを使用したタイマ RD／PWM3 モード／拡張 PWM モード）用 API 関数
API 関数名

周辺機能

R_{Config_TRD0_TRD1}_Create

タイマ RD

機能概要
TRD0 モジュールを PWM3 モードで、または TRDn モ
ジュールを PWM モード／拡張 PWM モード／タイマ
KB3 PWM 出力ゲートモードで制御する前に必要な初期化処理を実行します。

R_{Config_TRD0_TRD1}_Start

PWM3 モードで TRD0 カウンタを起動するか、PWM
モード／拡張 PWM モード／タイマ KB3 PWM 出力ゲートモードで TRDn カウンタを起動します。

R_{Config_TRD0_TRD1}_Stop

PWM3 モードで TRD0 カウンタを停止するか、PWM
モード／拡張 PWM モード／タイマ KB3 PWM 出力ゲートモードで TRDn カウンタを停止します。

R_{Config_TRD0_TRD1}_Set_TRDn_R

拡張 PWM モードで TRDn バッファレジスタのリロー

eloadTriger

ドトリガを生成します。

R_{Config_TRD0_TRD1}_Set_TRD0_R

タイマ KB3 PWM 出力ゲートモードで TRD0 バッファ

eloadTriger

レジスタのリロードトリガを生成します。

R_{Config_TRD0_TRD1}_Set_TRD1_R

タイマ KB3 PWM 出力ゲートモードで TRD1 バッファ

eloadTriger

レジスタのリロードトリガを生成します。

R_{Config_TRD0_TRD1}_Create_UserI

TRD0_TRD1 に関するユーザ独自の初期化処理を実行

nit

します。

r_{Config_TRD0_TRD1}_trdn_interrupt

INTRDn 割り込みに伴う処理を実行します。

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 204 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRD0_TRD1}_Create
TRD0 モジュールを PWM3 モードで、または TRDn モジュールを PWM モード／拡張 PWM モード／
タイマ KB3 PWM 出力ゲートモードで制御する前に必要な初期化処理を実行します。
備考

この API 関数は、R_TRD_Create から呼び出されます。

［指定形式］
void

R_{Config_TRD0_TRD1}_Create(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 205 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRD0_TRD1}_Start
PWM3 モードで TRD0 カウンタを起動するか、PWM モード／拡張 PWM モード／タイマ KB3 PWM
出力ゲートモードで TRDn カウンタを起動します。

［指定形式］
void

R_{Config_TRD0_TRD1}_Start(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 206 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRD0_TRD1}_Stop
PWM3 モードで TRD0 カウンタを停止するか、PWM モード／拡張 PWM モード／タイマ KB3 PWM
出力ゲートモードで TRDn カウンタを停止します。

［指定形式］
void

R_{Config_TRD0_TRD1}_Stop(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 207 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRD0_TRD1}_Set_TRDn_ReloadTrigger
拡張 PWM モードで TRDn バッファレジスタのリロードトリガを生成します。

［指定形式］
MD_STATUS R_{Config_TRD0_TRD1}_Set_TRDn_ReloadTrigger (st_extpwm_buffer_registers_t* buffer);
備考

n = 0, 1

［引数］
引数

I/O
I

st_extpwm_buffer_registers_t * buffer;

備考

説明
バッファレジスタ値

構造体 st_extpwm_buffer_registers_t を以下に示します。
typedef struct {uint16_t trdgrcn;
uint16_t trdgrdn;
uint16_t trdcmpdn;} st_extpwm_buffer_registers_t;

［戻り値］
マクロ

説明

MD_OK

正常終了

MD_ERROR

リロードトリガステータス待ち

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 208 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRD0_TRD1}_Set_TRD0_ReloadTrigger
タイマ KB3 PWM 出力ゲートモードで TRD0 バッファレジスタのリロードトリガを生成します。

［指定形式］
MD_STATUSR_{Config_TRD0_TRD1}_Set_TRD0_ReloadTrigger(st_ kb3pwm_ch0_buffer_registers_t * buffer);
備考

n = 0, 1

［引数］
引数

I/O
I

st_kb3pwm_ch0_buffer_registers_t
buffer;

備考

説明* バッファレジスタ値

構造体 st_kb3pwm_ch0_buffer_registers_t を以下に示します。
typedef struct {uint16_t trdgra0;
uint16_t trdgrb0;
uint16_t trdcmpb0;} st_kb3pwm_ch0_buffer_registers_t;

［戻り値］
マクロ

説明

MD_OK

正常終了

MD_ERROR

リロードトリガステータス待ち

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 209 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRD0_TRD1}_Set_TRD1_ReloadTrigger
タイマ KB3 PWM 出力ゲートモードで TRD1 バッファレジスタのリロードトリガを生成します。

［指定形式］
MD_STATUSR_{Config_TRD0_TRD1}_Set_TRD1_ReloadTrigger(st_ kb3pwm_ch1_buffer_registers_t * buffer);
備考

n = 0, 1

［引数］
引数

I/O
I

st_kb3pwm_ch1_buffer_registers_t
buffer;

備考

説明* バッファレジスタ値

構造体 st_kb3pwm_ch1_buffer_registers_t を以下に示します。
typedef struct {uint16_t trdgra1;
uint16_t trdgrb1;
uint16_t trdcmpa1;
uint16_t trdcmpb1;
uint16_t trdcmpe1;} st_kb3pwm_ch1_buffer_registers_t;

［戻り値］
マクロ

説明

MD_OK

正常終了

MD_ERROR

リロードトリガステータス待ち

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 210 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRD0_TRD1}_Create_UserInit
TRD0_TRD1 に関するユーザ独自の初期化処理を実行します。
備考

この API 関数は、R_{Config_TRD0_TRD1}_Create のコールバック・ルーチンとして呼び出されます。

［指定形式］
void

R_{Config_TRD0_TRD1}_Create_UserInit(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 211 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_TRD0_TRD1}_trdn_interrupt
INTTRDn 割り込みに伴う処理を実行します。
備考

この API 関数は、TRDn レジスタの内容が TRDGRhn（h = A、B、C、または D）レジス
タの内容と一致するか、PWM モード／PWM3 モード／拡張 PWM モード／タイマ KB3
PWM 出力ゲートモードで TRDn レジスタがオーバーフローの場合に発生するカウン
ト・コンペア一致割り込み（INTRDn）の割り込みハンドラとして呼び出されます。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_TRD0_TRD1}_trdn_interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_TRD0_TRD1}_trdn_interrupt(void);

IAR ツールチェーンの場合__interrupt static void
備考

r_{Config_TRD0_TRD1}_trdn_interrupt(void);n = 0, 1

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 212 of 771

スマート・コンフィグレータ.

4. API 関数

使用例
TRD0_TRD1 を起動して 6 つの PWM 波形パルスを出力する例です。
main.c#include "r_smc_entry.h"
extern uint8_t trd_kb3_pwm_count;
void main(void);void main(void){
EI();
R_Config_TRD0_TRD1_Start();while (trd_kb3_pwm_count < 20);
R_Config_TRD0_TRD1_Stop();}
Config_TRD0_TRD1_user.c/* Start user code for global. Do not edit comment generated here */uint8_t trd_kb3_pwm_count;/* End user code. Do not edit comment generated here */static void __near r_Config_TRD0_TRD1_trd0_interrupt (void){/* Start user code for r_Config_TRD0_trd0_interrupt. Do not edit comment generated here */trd_kb3_pwm_count ++;/* End user code. Do not edit comment generated here */}static void __near r_Config_TRD0_TRD1_trd1_interrupt (void){/* Start user code for r_Config_TRD0_trd1_interrupt. Do not edit comment generated here */trd_kb3_pwm_count ++;/* End user code. Do not edit comment generated here */}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 213 of 771

スマート・コンフィグレータ.

4. API 関数

PWM 出力（PWM モードを使用したタイマ RG／PWM2 モード）

4.2.12

以下に、スマート・コンフィグレータが PWM 出力機能用として出力する API 関数の一覧を示します。
表 4.15 API 関数
API 関数名

周辺機能
タイマ RG

R_{Config_TRG}_Create

機能概要
TRG モジュールを PWM モード／PWM2 モードで制御する前に必要な初期化処理を実行します。

R_{Config_TRG}_Start

TRG カウンタを起動します。

R_{Config_TRG}_Stop

TRG カウンタを停止します。

R_{Config_TRG}_Create_UserInit

TRG の初期化処理を実行します。

r_{Config_TRG}_interrupt

タイマ RG がコンペア一致割り込み(INTTRG)に伴う処理を実行します。

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 214 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRG}_Create
TRG を PWM モード／PWM2 モードで制御する前に必要な初期化処理を実行します。
備考

この API 関数は、main()関数が実行される前に R_Systeminit から呼び出されます。

［指定形式］
void

R_TRG_Create(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 215 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRG}_Start
TRG のカウンタを起動します。

［指定形式］
void

R_{Config_TRG}_Start(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 216 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRG}_Stop
TRG のカウンタを停止します。

［指定形式］
void

R_{Config_TRG}_Stop(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 217 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRG}_Create_UserInit
TRG に関するユーザ独自の初期化処理を実行します。
備考

この API 関数は、R_{Config_TRG}_Create のコールバック・ルーチンとして呼び出されます。

［指定形式］
void

R_{Config_TRG}_Create_UserInit(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 218 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_TRG}_interrupt
タイマ RG がカウント・コンペア一致割り込み(INTTRG)に伴う処理を実行します。
備考

この API 関数は、カウント・コンペア一致割り込みの割り込みハンドラ（INTTRG）として呼ばれ、TRG レジスタの内容が TRGGRh (h = A、B、C、または D) レジスタの内容と一致するか、TRG レジスタのオーバーフローに発生します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_TRG}_interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_TRG}_interrupt(void);

IAR ツールチェーンの場合__interrupt static voidr_{Config_TRG}_interrupt(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 219 of 771

スマート・コンフィグレータ.

4. API 関数

使用例
TRG を起動して PWM 波形パルスを出力する例です。
main.c#include "r_smc_entry.h"
extern uint8_t trg_pwm_count;
void main(void);void main(void){
EI();
R_Config_TRG_Start();while (trg_pwm_count < 10);
R_Config_TRG_Stop();}
Config_TRG_user.c/* Start user code for global. Do not edit comment generated here */uint8_t trg_pwm_count;/* End user code. Do not edit comment generated here */static void __near r_Config_TRG_interrupt (void){/* Start user code for r_Config_TRG_interrupt. Do not edit comment generated here */trg_pwm_count ++;/* End user code. Do not edit comment generated here */}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 220 of 771

スマート・コンフィグレータ.

4. API 関数

PWM 出力（タイマ KB を使用した単体動作モード（TKBCRn0 レジスタによる周期制御）／単体動作モード（外部トリガ入力による周期制御）／イ
ンターリーブ PFC 出力モード）

4.2.13

以下に、スマート・コンフィグレータが PWM 出力機能用として出力する API 関数の一覧を示します。
表 4.16 API 関数（1/2）
API 関数名

周辺機能
タイマ KB

R_{Config_TKBn}_Create

機能概要
TKBn モジュールを単体動作モード（TKBCRn0 レジス
タによる周期制御）／単体動作モード（外部トリガ入力による周期制御）／インターリーブ PFC 出力モードで制御する前に必要な初期化処理を実行します。

R_{Config_TKBn}_Start

TKBn カウンタを起動します。

R_{Config_TKBn}_Stop

TKBn カウンタを停止します。

R_{Config_TKBn}_Set_BatchOverwrite

TKBn の一斉書き込みを動作します。

RequesetOn
R_{Config_TKBn}_TKBOn0_Forced_Ou

TKBn TKBOn0 の強制出力停止機能 1 を開始します。

tput_Stop_Function1_Start
R_{Config_TKBn}_TKBOn0_Forced_Ou

TKBn TKBOn0 の強制出力停止機能 1 を停止します。

tput_Stop_Function1_Stop
R_{Config_TKBn}_TKBOn1_Forced_Ou

TKBn TKBOn1 の強制出力停止機能 1 を開始します。

tput_Stop_Function1_Start
R_{Config_TKBn}_TKBOn1_Forced_Ou

TKBn TKBOn1 の強制出力停止機能 1 を停止します。

tput_Stop_Function1_Stop
R_{Config_TKBn}_TKBOn0_SmoothSta

TKBn TKBOn0 のソフトスタート機能を開始します。

rtFunction_Start
R_{Config_TKBn}_TKBOn0_SmoothSta

TKBn TKBOn0 のソフトスタート機能を停止します。

rtFunction_Stop
R_{Config_TKBn}_TKBOn1_SmoothSta

TKBn TKBOn1 のソフトスタート機能を開始します。

rtFunction_Start
R_{Config_TKBn}_TKBOn1_SmoothSta

TKBn TKBOn1 のソフトスタート機能を停止します。

rtFunction_Stop

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 221 of 771

スマート・コンフィグレータ.

4. API 関数

表 4.17 API 関数（2/2）
API 関数名

周辺機能

機能概要

R_{Config_TKBn}_Create_UserInit

TKBn に関するユーザ独自の初期化処理を実行します。

r_{Config_TKBn}_terminated0_interrupt

TKBn TKBOn0 の強制出力停止解除割り込み（INTTMKBSTPn0）に伴う処理を実行します。

r_{Config_TKBn}_terminated1_interrupt

TKBn TKBOn1 の強制出力停止解除割り込み（INTTMKBSTPn1）に伴う処理を実行します。

r_{Config_TKBn}_activated0_interrupt

TKBn TKBOn0 の強制出力停止発動割り込み（INTTMKBSTRn0）に伴う処理を実行します。

r_{Config_TKBn}_activated1_interrupt

TKBn TKBOn1 の強制出力停止発動割り込み（INTTMKBSTRn1）に伴う処理を実行します。

r_{Config_TKBn}_end_count_interrupt

TKBn カウント・コンペア一致割り込み（INTTMKBn）の割り込みに伴う処理を実行します。

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 222 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TKBn}_Create
TKBn モジュールを単体動作モード（TKBCRn0 レジスタによる周期制御）／単体動作モード（外部トリガ入力による周期制御）／インターリーブ PFC 出力モードで制御する前に必要な初期化処理を実行します。
備考

この API 関数は、main()関数が実行される前に R_TKB_Create から呼び出されます。

［指定形式］
void

R_TRG_Create(void);

備考

n = 0, 1, 2

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 223 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TKBn}_Start
TKBn のカウンタを起動します。

［指定形式］
void

R_{Config_TKBn}_Start(void);

備考

n = 0, 1, 2

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 224 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TKBn}_Stop
TKBn のカウンタを停止します。

［指定形式］
void

R_{Config_TKBn}_Stop(void);

備考

n = 0, 1, 2

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 225 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TKBn}_Set_BatchOverwriteRequestOn
TKBn の一斉書き込みを動作します。

［指定形式］
void

R_{Config_TKBn}_Set_BatchOverwriteRequestOn (void);

備考

n = 0, 1, 2

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 226 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TKBn}_TKBOn0_Forced_Output_Stop_Function1_Start
TKBn TKBOn0 の強制出力停止機能 1 を開始します。

［指定形式］
void

R_{Config_TKBn}_TKBOn0_Forced_Output_Stop_Function1_Start (void);

備考

n = 0, 1, 2

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 227 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TKBn}_TKBOn0_Forced_Output_Stop_Function1_Stop
TKBn TKBOn0 の強制出力停止機能 1 を停止します。

［指定形式］
void

R_{Config_TKBn}_TKBOn0_Forced_Output_Stop_Function1_Stop (void);

備考

n = 0, 1, 2

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 228 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TKBn}_TKBOn1_Forced_Output_Stop_Function1_Start
TKBn TKBOn1 の強制出力停止機能 1 を開始します。

［指定形式］
void

R_{Config_TKBn}_TKBOn1_Forced_Output_Stop_Function1_Start (void);

備考

n = 0, 1, 2

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 229 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TKBn}_TKBOn1_Forced_Output_Stop_Function1_Stop
TKBn TKBOn1 の強制出力停止機能 1 を停止します。

［指定形式］
void

R_{Config_TKBn}_TKBOn1_Forced_Output_Stop_Function1_Stop (void);

備考

n = 0, 1, 2

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 230 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TKBn}_TKBOn0_SmoothStartFunction_Start
TKBn TKBOn0 のソフトスタート機能を開始します。

［指定形式］
void

R_{Config_TKBn}_TKBOn0_SmoothStartFunction_Start (void);

備考

n = 0, 1, 2

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 231 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TKBn}_TKBOn0_SmoothStartFunction_Stop
TKBn TKBOn0 のソフトスタート機能を停止します。

［指定形式］
void

R_{Config_TKBn}_TKBOn0_SmoothStartFunction_Stop (void);

備考

n = 0, 1, 2

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 232 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TKBn}_TKBOn1_SmoothStartFunction_Start
TKBn TKBOn1 のソフトスタート機能を開始します。

［指定形式］
void

R_{Config_TKBn}_TKBOn1_SmoothStartFunction_Start (void);

備考

n = 0, 1, 2

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 233 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TKBn}_TKBOn1_SmoothStartFunction_Stop
TKBn TKBOn1 のソフトスタート機能を停止します。

［指定形式］
void

R_{Config_TKBn}_TKBOn1_SmoothStartFunction_Stop (void);

備考

n = 0, 1, 2

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 234 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TKBn}_Create_UserInit
TKBn に関するユーザ独自の初期化処理を実行します。
備考

この API 関数は、R_{Config_TKBn}_Create のコールバック・ルーチンとして呼び出されます。

［指定形式］
void

R_{Config_TKBn}_Create_UserInit(void);

備考

n = 0, 1, 2

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 235 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_TKBn}_terminated0_interrupt
TKBn TKBOn0 の強制出力停止解除割り込み（INTTMKBSTPn0）に伴う処理を実行します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_TKBn}_ terminated0_interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_TKBn}_ terminated0_interrupt(void);

IAR ツールチェーンの場合__interrupt static void
備考

r_{Config_TKBn}_ terminated0_interrupt(void);n = 0, 1, 2

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 236 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_TKBn}_terminated1_interrupt
TKBn TKBOn1 の強制出力停止解除割り込み（INTTMKBSTPn1）に伴う処理を実行します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_TKBn}_ terminated1_interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_TKBn}_ terminated1_interrupt(void);

IAR ツールチェーンの場合__interrupt static void
備考

r_{Config_TKBn}_ terminated1_interrupt(void);n = 0, 1, 2

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 237 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_TKBn}_activated0_interrupt
TKBn TKBOn0 の強制出力停止発動割り込み（INTTMKBSTRn0）に伴う処理を実行します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_TKBn}_activated0_interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_TKBn}_activated0_interrupt(void);

IAR ツールチェーンの場合__interrupt static void
備考

r_{Config_TKBn}_ activated0_interrupt(void);n = 0, 1, 2

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 238 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_TKBn}_activated1_interrupt
TKBn TKBOn1 の強制出力停止発動割り込み（INTTMKBSTRn1）に伴う処理を実行します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_TKBn}_activated1_interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_TKBn}_activated1_interrupt(void);

IAR ツールチェーンの場合__interrupt static void
備考

r_{Config_TKBn}_ activated1_interrupt(void);n = 0, 1, 2

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 239 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_TKBn}_end_count_interrupt
タイマ KBn カウント・コンペア一致割り込み（INTTMKBn）の割り込みに伴う処理を実行します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_TRDn}_end_count _interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_TRDn}_end_count_interrupt(void);

IAR ツールチェーンの場合__interrupt static void
備考

r_{Config_TRDn}_end_count_interrupt(void);n = 0, 1, 2

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 240 of 771

スマート・コンフィグレータ.

4. API 関数

使用例
TKB1 を起動して PWM 波形パルスを出力する例です。
main.c#include "r_smc_entry.h"
extern uint8_t tkb_pwm_count;
void main(void);void main(void){
EI();
R_Config_TKB1_Start();while (tkb_pwm_count < 10);
R_Config_TKB1_Stop();}
Config_TKB1_user.c/* Start user code for global. Do not edit comment generated here */uint8_t tkb_pwm_count;/* End user code. Do not edit comment generated here */static void __near r_Config_TKB1_end_count_interrupt (void){/* Start user code for r_Config_TKB1_end_count_interrupt. Do not edit comment generated here */tkb_pwm_count ++;/* End user code. Do not edit comment generated here */}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 241 of 771

スマート・コンフィグレータ.

4. API 関数

PWM 出力（タイマ KB を使用した同時スタート／ストップ・モード（TKBCRn0 レジスタによる周期制御）／同時スタート／ストップ・モード（外部トリガ入力による周期制御）／同時スタート／ストップ・モード（マスタによる周期制御））（1 つスレーブ）

4.2.14

以下に、スマート・コンフィグレータが PWM 出力機能用として出力する API 関数の一覧を示します。
表 4.18 API 関数（1/2）
API 関数名

周辺機能

R_{Config_TKB0_TKBn}_Create

タイマ KB

機能概要
TKB0 と TKBn モジュールを同時スタート／ストップ・モード（TKBCRn0 レジスタによる周期制御）／同時ス
タート／ストップ・モード（外部トリガ入力による周期制御）／同時スタート／ストップ・モード（マスタによる周期制御）で制御する前に必要な初期化処理を実行します。

R_{Config_TKB0_TKBn}_Start

TKB0 と TKBn カウンタを起動します。

R_{Config_TKB0_TKBn}_Stop

TKB0 と TKBn カウンタを停止します。

R_{Config_TKB0_TKBn}_TKBm_Set_B

TKBm の一斉書き込みを動作します。

atchOverwriteRequestOn
R_{Config_TKB0_TKBn}_TKBOm0_For

TKBm TKBOm0 の強制出力停止機能 1 を開始します。

ced_Output_Stop_Function1_Start
R_{Config_TKB0_TKBn}_TKBOm0_For

TKBm TKBOm0 の強制出力停止機能 1 を停止します。

ced_Output_Stop_Function1_Stop
R_{Config_TKB0_TKBn}_TKBOm1_For

TKBm TKBOm1 の強制出力停止機能 1 を開始します。

ced_Output_Stop_Function1_Start
R_{Config_TKB0_TKBn}_TKBOm1_For

TKBm TKBOm1 の強制出力停止機能 1 を停止します。

ced_Output_Stop_Function1_Stop
R_{Config_TKB0_TKBn}_TKBOm0_Sm

TKBm TKBOm0 のソフトスタート機能を開始します。

oothStartFunction_Start
R_{Config_TKBn}_TKBOn0_SmoothSta

TKBm TKBOm0 のソフトスタート機能を停止します。

rtFunction_Stop
R_{Config_TKB0_TKBn}_TKBOm1_Sm

TKBm TKBOm1 のソフトスタート機能を開始します。

oothStartFunction_Start
R_{Config_TKB0_TKBn}_TKBOm1_Sm

TKBm TKBOm1 のソフトスタート機能を停止します。

oothStartFunction_Stop

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 242 of 771

スマート・コンフィグレータ.

4. API 関数

表 4.19 API 関数（2/2）
API 関数名

周辺機能

機能概要

R_{Config_TKB0_TKBn}_Create_UserITKB0 と TKBn に関するユーザ独自の初期化処理を実行

nit

します。

r_{Config_TKB0_TKBn}_tkbm_terminat

TKBm TKBOm0 の強制出力停止解除割り込み

ed0_interrupt（INTTMKBSTPm0）に伴う処理を実行します。

r_{Config_TKB0_TKBn}_tkbm_terminat

TKBm TKBOm1 の強制出力停止解除割り込み

ed1_interrupt（INTTMKBSTPm1）に伴う処理を実行します。

r_{Config_TKB0_TKBn}_tkbm_activated

TKBm TKBOm0 の強制出力停止発動割り込み

0_interrupt（INTTMKBSTRm0）に伴う処理を実行します。

r_{Config_TKB0_TKBn}_tkbm_activated

TKBm TKBOm1 の強制出力停止発動割り込み

1_interrupt（INTTMKBSTRm1）に伴う処理を実行します。

r_{Config_TKB0_TKBn}_tkbm_end_cou

TKBm カウント・コンペア一致割り込み

nt_interrupt（INTTMKBm）の割り込みに伴う処理を実行します。

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 243 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TKB0_TKBn}_Create
TKB0 と TKBn モジュールを同時スタート／ストップ・モード（TKBCRn0 レジスタによる周期制御）／同時スタート／ストップ・モード（外部トリガ入力による周期制御）／同時スタート／ストップ・モード（マスタによる周期制御）で制御する前に必要な初期化処理を実行します。
備考

この API 関数は、main()関数が実行される前に R_TKB_Create から呼び出されます。

［指定形式］
void

R_{Config_TKB0_TKBn}_Create(void);

備考n = 1, 2

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 244 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TKB0_TKBn}_Start
TKB0 と TKBn のカウンタを起動します。

［指定形式］
void

R_{Config_TKB0_TKBn}_Start(void);

備考n = 1, 2

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 245 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TKB0_TKBn}_Stop
TKB0 と TKBn のカウンタを停止します。

［指定形式］
void

R_{Config_TKB0_TKBn}_Stop(void);

備考n = 1, 2

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 246 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TKB0_TKBn}_TKBm_Set_BatchOverwriteRequestOn
TKBm の一斉書き込みを動作します。

［指定形式］
void

R_{Config_TKB0_TKBn}_TKBm_Set_BatchOverwriteRequestOn (void);

備考n = 1, 2 m = 0, n

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 247 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TKB0_TKBn}_TKBOm0_Forced_Output_Stop_Function1_Start
KBm TKBOm0 の強制出力停止機能 1 を開始します。

［指定形式］
void

R_{Config_TKB0_TKBn}_TKBOm0_Forced_Output_Stop_Function1_Start (void);

備考n = 1, 2 m = 0, n

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 248 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TKB0_TKBn}_TKBOm0_Forced_Output_Stop_Function1_Stop
KBm TKBOm0 の強制出力停止機能 1 を停止します。

［指定形式］
void

R_{Config_TKB0_TKBn}_TKBOm0_Forced_Output_Stop_Function1_Stop (void);

備考n = 1, 2 m = 0, n

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 249 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TKB0_TKBn}_TKBOm1_Forced_Output_Stop_Function1_Start
KBm TKBOm1 の強制出力停止機能 1 を開始します。

［指定形式］
void

R_{Config_TKB0_TKBn}_TKBOm1_Forced_Output_Stop_Function1_Start (void);

備考n = 1, 2 m = 0, n

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 250 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TKB0_TKBn}_TKBOm1_Forced_Output_Stop_Function1_Stop
KBm TKBOm1 の強制出力停止機能 1 を停止します。

［指定形式］
void

R_{Config_TKB0_TKBn}_TKBOm1_Forced_Output_Stop_Function1_Stop (void);

備考n = 1, 2 m = 0, n

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 251 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TKB0_TKBn}_TKBOm0_SmoothStartFunction_Start
TKBm TKBOn0 のソフトスタート機能を開始します。

［指定形式］
void

R_{Config_TKB0_TKBn}_TKBOm0_SmoothStartFunction_Start (void);

備考n = 1, 2 m = 0, n

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 252 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TKB0_TKBn}_TKBOm0_SmoothStartFunction_Stop
TKBm TKBOm0 のソフトスタート機能を停止します。

［指定形式］
void

R_{Config_TKB0_TKBn}_TKBOm0_SmoothStartFunction_Stop (void);

備考n = 1, 2 m = 0, n

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 253 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TKB0_TKBn}_TKBOm1_SmoothStartFunction_Start
TKBm TKBOm1 のソフトスタート機能を開始します。

［指定形式］
void

R_{Config_TKB0_TKBn}_TKBOm1_SmoothStartFunction_Start (void);

備考n = 1, 2 m = 0, n

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 254 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TKB0_TKBn}_TKBOm1_SmoothStartFunction_Stop
TKBm TKBOm1 のソフトスタート機能を停止します。

［指定形式］
void

R_{Config_TKB0_TKBn}_TKBOm1_SmoothStartFunction_Stop (void);

備考n = 1, 2 m = 0, n

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 255 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TKB0_TKBn}_Create_UserInit
TKB0 と TKBn に関するユーザ独自の初期化処理を実行します。
備考

この API 関数は、R_{Config_TKB0_TKBn}_Create のコールバック・ルーチンとして呼び出されます。

［指定形式］
void

R_{Config_TKB0_TKBn}_Create_UserInit(void);

備考n = 1, 2 m = 0, n

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 256 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_TKB0_TKBn}_tkbm_terminated0_interrupt
TKBm TKBOm0 の強制出力停止解除割り込み（INTTMKBSTPm0）に伴う処理を実行します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_TKB0_TKBn}_tkbm_terminated0_interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_TKB0_TKBn}_tkbm_terminated0_interrupt(void);

IAR ツールチェーンの場合__interrupt static void
備考

r_{Config_TKB0_TKBn}_tkbm_terminated0_interrupt(void);n = 1, 2 m = 0, n

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 257 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_TKB0_TKBn}_tkbm_terminated1_interrupt
TKBm TKBOm1 の強制出力停止解除割り込み（INTTMKBSTPm1）に伴う処理を実行します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_TKB0_TKBn}_tkbm_ terminated1_interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_TKB0_TKBn}_tkbm_ terminated1_interrupt(void);

IAR ツールチェーンの場合__interrupt static void
備考

r_{Config_TKB0_TKBn}_tkbm_ terminated1_interrupt(void);n = 1, 2 m = 0, n

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 258 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_TKB0_TKBn}_tkbm_activated0_interrupt
TKBm TKBOm0 の強制出力停止発動割り込み（INTTMKBSTRm0）に伴う処理を実行します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_TKB0_TKBn}_tkbm_activated0_interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_TKB0_TKBn}_tkbm_activated0_interrupt(void);

IAR ツールチェーンの場合__interrupt static void
備考

r_{Config_TKB0_TKBn}_tkbm_activated0_interrupt(void);n = 1, 2 m = 0, n

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 259 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_TKB0_TKBn}_tkbm_activated1_interrupt
TKBm TKBOm1 の強制出力停止発動割り込み（INTTMKBSTRm1）に伴う処理を実行します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_TKB0_TKBn}_tkbm_activated1_interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_TKB0_TKBn}_tkbm_activated1_interrupt(void);

IAR ツールチェーンの場合__interrupt static void
備考

r_{Config_TKB0_TKBn}_tkbm_ activated1_interrupt(void);n = 1, 2 m = 0, n

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 260 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_TKB0_TKBn}_tkbm_end_count_interrupt
TKBm カウント・コンペア一致割り込み（INTTMKBm）の割り込みに伴う処理を実行します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_TKB0_TRDn}_tkbm_end_count _interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_TKB0_TRDn}_tkbm_end_count_interrupt(void);

IAR ツールチェーンの場合__interrupt static void
備考

r_{Config_TKB0_TRDn}_tkbm_end_count_interrupt(void);n = 1, 2 m = 0, n

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 261 of 771

スマート・コンフィグレータ.

4. API 関数

使用例
TKB0 と TKB1 を起動して PWM 波形パルスを出力する例です。
main.c#include "r_smc_entry.h"
extern uint8_t tkb_pwm_count;
void main(void);void main(void){
EI();
R_Config_TKB0_TKB1_Start();while (tkb_pwm_count < 10);
R_Config_TKB0_TKB1_Stop();}
Config_TKB0_TKB1_user.c/* Start user code for global. Do not edit comment generated here */uint8_t tkb_pwm_count;/* End user code. Do not edit comment generated here */static void __near r_Config_TKB0_TKB1_tkb0_end_count_interrupt (void){/* Start user code for r_Config_TKB0_TKB1_tkb0_end_count_interrupt. Do not edit comment
generated here */tkb_pwm_count ++;/* End user code. Do not edit comment generated here */}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 262 of 771

スマート・コンフィグレータ.

4. API 関数

PWM 出力（タイマ KB を使用した同時スタート／ストップ・モード（TKBCRn0 レジスタによる周期制御）／同時スタート／ストップ・モード（外部トリガ入力による周期制御）／同時スタート／ストップ・モード（マスタによる周期制御））（2 つスレーブ）

4.2.15以下に、スマート・コンフィグレータが PWM 出力機能用として出力する API 関数の一覧を示します。
表 4.20 API 関数（1/2）
API 関数名

周辺機能

R_{Config_TKB0_TKBn}_Create

タイマ KB

機能概要
TKB0 と TKBn モジュールを同時スタート／ストップ・モード（TKBCRn0 レジスタによる周期制御）／同時ス
タート／ストップ・モード（外部トリガ入力による周期制御）／同時スタート／ストップ・モード（マスタによる周期制御）で制御する前に必要な初期化処理を実行します。

R_{Config_TKB0_TKBn}_Start

TKB0 と TKBn カウンタを起動します。

R_{Config_TKB0_TKBn}_Stop

TKB0 と TKBn カウンタを停止します。

R_{Config_TKB0_TKBn}_TKBm_Set_B

TKBm の一斉書き込みを動作します。

atchOverwriteRequestOn
R_{Config_TKB0_TKBn}_TKBOm0_For

TKBm TKBOm0 の強制出力停止機能 1 を開始します。

ced_Output_Stop_Function1_Start
R_{Config_TKB0_TKBn}_TKBOm0_For

TKBm TKBOm0 の強制出力停止機能 1 を停止します。

ced_Output_Stop_Function1_Stop
R_{Config_TKB0_TKBn}_TKBOm1_For

TKBm TKBOm1 の強制出力停止機能 1 を開始します。

ced_Output_Stop_Function1_Start
R_{Config_TKB0_TKBn}_TKBOm1_For

TKBm TKBOm1 の強制出力停止機能 1 を停止します。

ced_Output_Stop_Function1_Stop
R_{Config_TKB0_TKBn}_TKBOm0_Sm

TKBm TKBOm0 のソフトスタート機能を開始します。

oothStartFunction_Start
R_{Config_TKBn}_TKBOn0_SmoothSta

TKBm TKBOm0 のソフトスタート機能を停止します。

rtFunction_Stop
R_{Config_TKB0_TKBn}_TKBOm1_Sm

TKBm TKBOm1 のソフトスタート機能を開始します。

oothStartFunction_Start
R_{Config_TKB0_TKBn}_TKBOm1_Sm

TKBm TKBOm1 のソフトスタート機能を停止します。

oothStartFunction_Stop

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 263 of 771

スマート・コンフィグレータ.

4. API 関数

表 4.21 API 関数（2/2）
API 関数名

周辺機能

機能概要

R_{Config_TKB0_TKBn}_Create_UserITKB0 と TKBn に関するユーザ独自の初期化処理を実行

nit

します。

r_{Config_TKB0_TKBn}_tkbm_terminat

TKBm TKBOm0 の強制出力停止解除割り込み

ed0_interrupt（INTTMKBSTPm0）に伴う処理を実行します。

r_{Config_TKB0_TKBn}_tkbm_terminat

TKBm TKBOm1 の強制出力停止解除割り込み

ed1_interrupt（INTTMKBSTPm1）に伴う処理を実行します。

r_{Config_TKB0_TKBn}_tkbm_activated

TKBm TKBOm0 の強制出力停止発動割り込み

0_interrupt（INTTMKBSTRm0）に伴う処理を実行します。

r_{Config_TKB0_TKBn}_tkbm_activated

TKBm TKBOm1 の強制出力停止発動割り込み

1_interrupt（INTTMKBSTRm1）に伴う処理を実行します。

r_{Config_TKB0_TKBn}_tkbm_end_cou

TKBm カウント・コンペア一致割り込み

nt_interrupt（INTTMKBm）の割り込みに伴う処理を実行します。

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 264 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TKB0_TKB1_TKB2}_Create
TKB0、TKB0 と TKB2 モジュールを同時スタート／ストップ・モード（TKBCRn0 レジスタによる周期制御）／同時スタート／ストップ・モード（外部トリガ入力による周期制御）／同時スタート／ストップ・モード（マスタによる周期制御）で制御する前に必要な初期化処理を実行します。
備考

この API 関数は、main()関数が実行される前に R_TKB_Create から呼び出されます。

［指定形式］
void

R_{Config_TKB0_TKB1_TKB2}_Create(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 265 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TKB0_TKB1_TKB2}_Start
TKB0、TKB0 と TKB2 のカウンタを起動します。

［指定形式］
void

R_{Config_TKB0_ TKB1_TKB2}_Start(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 266 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TKB0_TKB1_TKB2}_Stop
TKB0、TKB0 と TKB2 のカウンタを停止します。

［指定形式］
void

R_{Config_TKB0_TKB1_TKB2}_Stop(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 267 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TKB0_ TKB1_TKB2}_TKBn_Set_BatchOverwriteRequestOn
TKBn の一斉書き込みを動作します。

［指定形式］
void

R_{Config_TKB0_ TKB1_TKB2}_TKBn_Set_BatchOverwriteRequestOn (void);

備考

n = 0, 1, 2

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 268 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TKB0_TKB1_TKB2}_TKBOn0_Forced_Output_Stop_Function1_Start
TKB0 TKBOn0 の強制出力停止機能 1 を開始します。

［指定形式］
void

R_{Config_TKB0_ TKB1_TKB2}_TKBOn0_Forced_Output_Stop_Function1_Start (void);

備考

n = 0, 1, 2

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 269 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TKB0_TKB1_TKB2}_TKBOn0_Forced_Output_Stop_Function1_Stop
TKB0 TKBOn0 の強制出力停止機能 1 を停止します。

［指定形式］
void

R_{Config_TKB0_TKB1_TKB2}_TKBOn0_Forced_Output_Stop_Function1_Stop (void);

備考

n = 0, 1, 2

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 270 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TKB0_TKB1_TKB2}_TKBOn1_Forced_Output_Stop_Function1_Start
TKBn TKBOn1 の強制出力停止機能 1 を開始します。

［指定形式］
void

R_{Config_TKB0_TKB1_TKB2}_TKBOn1_Forced_Output_Stop_Function1_Start (void);

備考

n = 0, 1, 2

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 271 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TKB0_TKB1_TKB2}_TKBOn1_Forced_Output_Stop_Function1_Stop
TKB0 と TKBOn1 の強制出力停止機能 1 を停止します。

［指定形式］
void

R_{Config_TKB0_TKB1_TKB2}_TKBOn1_Forced_Output_Stop_Function1_Stop (void);

備考

n = 0, 1, 2

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 272 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TKB0_TKB1_TKB2}_TKBOn0_SmoothStartFunction_Start
TKB0 と TKBOn0 のソフトスタート機能を開始します。

［指定形式］
void

R_{Config_TKB0_TKB1_TKB2}_TKBOn0_SmoothStartFunction_Start (void);

備考

n = 0, 1, 2

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 273 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TKB0_TKB1_TKB2}_TKBOn0_SmoothStartFunction_Stop
TKB0 と TKBOm0 のソフトスタート機能を停止します。

［指定形式］
void

R_{Config_TKB0_TKB1_TKB2}_TKBOn0_SmoothStartFunction_Stop (void);

備考

n = 0, 1, 2

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 274 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TKB0_TKB1_TKB2}_TKBOn1_SmoothStartFunction_Start
TKB0 と TKBOn1 のソフトスタート機能を開始します。

［指定形式］
void

R_{Config_TKB0_TKB1_TKB2}_TKBOn1_SmoothStartFunction_Start (void);

備考

n = 0, 1, 2

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 275 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TKB0_TKB1_TKB2}_TKBOn1_SmoothStartFunction_Stop
TKB0 と TKBOn1 のソフトスタート機能を停止します。

［指定形式］
void

R_{Config_TKB0_TKB1_TKB2}_TKBOn1_SmoothStartFunction_Stop (void);

備考

n = 0, 1, 2

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 276 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TKB0_TKB1_TKB2}_Create_UserInit
TKB0、TKB1 と TKB2 に関するユーザ独自の初期化処理を実行します。
備考

この API 関数は、R_{Config_TKB0_TKB1_TKB2}_Create のコールバック・ルーチンとして呼び出されます。

［指定形式］
void

R_{Config_TKB0_TKB1_TKB2}_Create_UserInit(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 277 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_TKB0_TKB1_TKB2}_tkbn_terminated0_interrupt
TKBn TKBOn0 の強制出力停止解除割り込み（INTTMKBSTPn0）に伴う処理を実行します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_TKB0_TKB1_TKB2}_tkbn_terminated0_interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_TKB0_TKB1_TKB2}_tkbn_terminated0_interrupt(void);

IAR ツールチェーンの場合__interrupt static void
備考

r_{Config_TKB0_TKB1_TKB2}_tkbn_terminated0_interrupt(void);n = 0, 1, 2

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 278 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_TKB0_TKB1_TKB2}_tkbn_terminated1_interrupt
TKBn TKBOn1 の強制出力停止解除割り込み（INTTMKBSTPn1）に伴う処理を実行します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_TKB0_TKB1_TKB2}_tkbn_ terminated1_interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_TKB0_TKB1_TKB2}_tkbn_ terminated1_interrupt(void);

IAR ツールチェーンの場合__interrupt static void
備考

r_{Config_TKB0_TKB1_TKB2}_tkbn_ terminated1_interrupt(void);n = 0, 1, 2

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 279 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_TKB0_TKB1_TKB2}_tkbn_activated0_interrupt
TKBn TKBOn0 の強制出力停止発動割り込み（INTTMKBSTRn0）に伴う処理を実行します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_TKB0_TKB1_TKB2}_tkbn_activated0_interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_TKB0_TKB1_TKB2}_tkbn_activated0_interrupt(void);

IAR ツールチェーンの場合__interrupt static void
備考

r_{Config_TKB0_TKB1_TKB2}_tkbn_activated0_interrupt(void);n = 0, 1, 2

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 280 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_TKB0_TKB1_TKB2}_tkbn_activated1_interrupt
TKBn TKBOn1 の強制出力停止発動割り込み（INTTMKBSTRn1）に伴う処理を実行します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_TKB0_TKB1_TKB2}_tkbn_activated1_interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_TKB0_TKB1_TKB2}_tkbn_activated1_interrupt(void);

IAR ツールチェーンの場合__interrupt static void
備考

r_{Config_TKB0_TKB1_TKB2}_tkbn_ activated1_interrupt(void);n = 0, 1, 2

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 281 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_TKB0_TKB1_TKB2}_tkbn_end_count_interrupt
TKBn カウント・コンペア一致割り込み（INTTMKBn）の割り込みに伴う処理を実行します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_TKB0_TKB1_TKB2}_tkbn_end_count _interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_TKB0_TKB1_TKB2}_tkbn_end_count_interrupt(void);

IAR ツールチェーンの場合__interrupt static void
備考

r_{Config_TKB0_TKB1_TKB2}_tkbn_end_count_interrupt(void);n = 0, 1, 2

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 282 of 771

スマート・コンフィグレータ.

4. API 関数

使用例
TKB0、TKB1 と TKB2 を起動して PWM 波形パルスを出力する例です。
main.c#include "r_smc_entry.h"
extern uint8_t tkb_pwm_count;
void main(void);void main(void){
EI();
R_Config_TKB0_TKB1_TKB2_Start();while (tkb_pwm_count < 10);
R_Config_TKB0_TKB1_TKB2_Stop();}
Config_TKB0_TKB1_TKB2_user.c/* Start user code for global. Do not edit comment generated here */uint8_t tkb_pwm_count;/* End user code. Do not edit comment generated here */static void __near r_Config_TKB0_TKB1_TKB2_tkb0_end_count_interrupt (void){/* Start user code for r_Config_TKB0_TKB1_TKB2_tkb0_end_count_interrupt. Do not edit comment
generated here */tkb_pwm_count ++;/* End user code. Do not edit comment generated here */}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 283 of 771

スマート・コンフィグレータ.

4.2.16

4. API 関数

入力パルス間隔／周期測定（タイマ・アレイ・ユニット）

以下に、スマート・コンフィグレータが入力パルス間隔測定用として出力する API 関数の一覧を示します。
表 4.22 入力パルス間隔／周期測定（タイマ・アレイ・ユニット）用 API 関数
API 関数名
R_{Config_TAUm_n}_Create

周辺機能

機能概要

タイマ・アレイ・

入力パルス間隔測定モードで TAUm チャネル・モジュ

ユニットールを制御する前に必要な初期化処理を実行します。

R_{Config_TAUm_n}_Start

TAUm のチャネル n のカウンタを起動します。

R_{Config_TAUm_n}_Stop

TAUm のチャネル n のカウンタを停止します。

R_{Config_TAUm_n}_Get_PulseWidth

TAUm のチャネル n の入力パルス幅を測定します。

R_{Config_TAUm_n}_Create_UserInit

TAUm のチャネル n に関するユーザ独自の初期化処理を実行します。

r_{Config_TAUm_n}_interrupt

R20UT4852JJ0105
2024.07.22

Rev.1.05

INTTMmn 割り込みに伴う処理を実行します。

Page 284 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TAUm_n}_Create
入力パルス間隔測定モードで TAUm チャネル・モジュールを制御する前に必要な初期化処理を実行します。
備考

この API 関数は、R_TAUm_Create から呼び出されます。

［指定形式］
void

R_{Config_TAUm_n}_Create(void);

備考

m はユニット番号、n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 285 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TAUm_n}_Start
TAUm のチャネル n のカウンタを起動します。

［指定形式］
void

R_{Config_TAUm_n}_Start(void);

備考

m はユニット番号、n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 286 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TAUm_n}_Stop
TAUm のチャネル n のカウンタを停止します。

［指定形式］
void

R_{Config_TAUm_n}_Stop(void);

備考

m はユニット番号、n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 287 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TAUm_n}_Get_PulseWidth
TAUm のチャネル n の入力パルス幅を測定します。

［指定形式］
void

R_{Config_TAUm_n}_Get_PulseWidth(uint32_t * const width);

備考

m はユニット番号、n はチャネル番号を示します。

［引数］
I/O

引数

説明

O

uint32_t * const width;

入力パルス幅を格納するアドレス

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 288 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TAUm_n}_Create_UserInit
TAUm のチャネル n に関するユーザ独自の初期化処理を実行します。
備考

この API 関数は、R_{Config_TAUm_n}_Create のコールバック・ルーチンとして呼び出されます。

［指定形式］
void

R_{Config_TAUm_n}_Create_UserInit(void);

備考

m はユニット番号、n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 289 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_TAUm_n}_interrupt
INTTMmn 割り込みに伴う処理を実行します。
備考

この API 関数は、キャプチャ割り込みの割り込みハンドラ（INTTMmn）として呼ばれ、有効なキャプチャ・エッジが検出され、カウンタ値（TCRmn）がタイマ・データ・レジ
スタ mn（TDRmn）に転送されたときに発生します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_TAUm_n}_interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_TAUm_n}_interrupt(void);

IAR ツールチェーンの場合__interrupt static void
備考

r_{Config_TAUm_n}_interrupt(void);m はユニット番号、n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 290 of 771

スマート・コンフィグレータ.

4. API 関数

使用例
TAU チャネル 0 の入力間隔幅を取得するための例です。
main.c#include "r_smc_entry.h"
extern volatile uint8_t tau_interrupt_flag;
uint32_t width;void main(void);void main(void){
EI();
tau_interrupt_flag = 0;
R_Config_TAU0_0_Start();while( tau_interrupt_flag == 0);
tau_interrupt_flag=0;
R_Config_TAU0_0_Get_PulseWidth(&width);}
Config_TAU0_0_user.c/* Start user code for global. Do not edit comment generated here */uint8_t tau_interrupt_flag/* End user code. Do not edit comment generated here */static void __near r_Config_TAU0_0_interrupt (void){...
/* Start user code for r_Config_TAU0_0_interrupt. Do not edit comment generated here *//* Set the flag */tau_interrupt_flag = 1U;/* End user code. Do not edit comment generated here */}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 291 of 771

スマート・コンフィグレータ.

4.2.17

4. API 関数

入力パルス間隔／周期測定（タイマ RJ）

以下に、スマート・コンフィグレータが入力パルス間隔（TRJIOn 端子への入力）測定用として出力する API 関数の一覧を示します。
表 4.23 入力パルス間隔／周期測定（タイマ RJ）用 API 関数
API 関数名

周辺機能
タイマ RJ

R_{Config_TRJn}_Create

機能概要
入力パルス幅測定モードで TRJn モジュールを制御する
前に必要な初期化処理を実行します。

R_{Config_TRJn}_Start

TRJn のカウンタを起動します。

R_{Config_TRJn}_Stop

TRJn のカウンタを停止します。

R_{Config_TRJn}_Get_PulseWidth

TRJn のチャネル n の入力パルス幅を測定します。

R_{Config_TRJn}_Create_UserInit

TRJn に関するユーザ独自の初期化処理を実行します。

r_{Config_TRJn}_interrupt

INTTRJn 割り込みに伴う処理を実行します。

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 292 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRJn}_Create
外部信号（TRJIOn 端子への入力）測定モードの入力パルス幅で TRJn モジュールを制御する前に必要な初期化処理を実行します。
備考

この API 関数は、main()関数を実行する前に、R_Systeminit から呼び出されます。

［指定形式］
void

R_{Config_TRJn}_Create(void);

備考

n=0

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 293 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRJn}_Start
TRJn のカウンタを起動します。

［指定形式］
void

R_{Config_TRJn}_Start(void);

備考

n=0

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 294 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRJn}_Stop
TRJn のカウンタを停止します。

［指定形式］
void

R_{Config_TRJn}_Stop(void);

備考

n=0

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 295 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRJn}_Get_PulseWidth
TRJn の入力パルス幅を測定します。

［指定形式］
void

R_{Config_TRJn}_Get_PulseWidth(uint32_t * const width);

備考

n=0

［引数］
I/O

引数

説明

O

uint32_t * const width;

入力パルス幅を格納するアドレス

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 296 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRJn}_Create_UserInit
TRJn に関するユーザ独自の初期化処理を実行します。
備考

この API 関数は、R_{Config_TRJn}_Create のコールバック・ルーチンとして呼び出されます。

［指定形式］
void

R_{Config_TRJn}_Create_UserInit(void);

備考

n=0

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 297 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_TRJn}_interrupt
INTTRJn 割り込みに伴う処理を実行します。
備考

この API 関数は、パルス幅測定モードで外部入力（TRJIOn）のアクティブ幅測定が完了したときに発生するキャプチャ割り込み（INTTRJn）の割り込みハンドラとして呼び出されます。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_TRJn}_interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_TRJn}_interrupt(void);

IAR ツールチェーンの場合__interrupt static void
備考

r_{Config_TRJn}_interrupt(void);

n=0

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 298 of 771

スマート・コンフィグレータ.

4. API 関数

使用例
TRJ0 の入力間隔幅を取得するための例です。
main.c#include "r_smc_entry.h"
extern volatile uint8_t trj_interrupt_flag;
uint32_t width;void main(void);void main(void){
EI();
R_Config_TAU0_0_Start(); //Output square wave from TAU0_0
R_Config_TRJ0_Start();while (trj_interrupt_flag < 20);
R_Config_TRJ0_Get_PulseWidth(&width);while (1U);}
Config_TRJ0_0_user.c/* Start user code for global. Do not edit comment generated here */uint8_t trj_interrupt_flag;/* End user code. Do not edit comment generated here */static void __near r_Config_TRJ0_interrupt (void){...
/* Start user code for r_Config_TRJ0_interrupt. Do not edit comment generated here */trj_interrupt_flag++;/* End user code. Do not edit comment generated here */}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 299 of 771

スマート・コンフィグレータ.

4.2.184. API 関数

インターバル・タイマ（タイマ・アレイ・ユニット）

以下に、スマート・コンフィグレータがインターバル・タイマ（タイマ・アレイ・ユニット）用として出力する API 関数の一覧を示します。
表 4.24 インターバル・タイマ（タイマ・アレイ・ユニット）用 API 関数
API 関数名

周辺機能

R_{Config_TAUm_n}_Create

機能概要

タイマ・アレイ・

TAUm チャネル・モジュールをインターバル・タイ

ユニット

マ・モードで制御する前に必要な初期化処理を実行します。

R_{Config_TAUm_n}_Start

TAUm のチャネル n のカウンタを起動します。

R_{Config_TAUm_n}_Stop

TAUm のチャネル n のカウンタを停止します。

R_{Config_TAUm_n}_Higher8bits_Start

TAUm のチャネル n の上位側 8 ビット・カウンタを起動します。

R_{Config_TAUm_n}_Higher8bits_Stop

TAUm のチャネル n の上位側 8 ビット・カウンタを停止します。

R_{Config_TAUm_n}_Lower8bits_Start

TAUm のチャネル n の下位側 8 ビット・カウンタを起動します。

R_{Config_TAUm_n}_Lower8bits_Stop

TAUm のチャネル n の下位側 8 ビット・カウンタを停止します。

R_{Config_TAUm_n}_Create_UserInit

TAUm のチャネル n に関するユーザ独自の初期化処理を実行します。

r_{Config_TAUm_n}_interrupt

INTTMmn 割り込みに伴う処理を実行します。

r_{Config_TAUm_n}_higher8bits_interru

INTTMmnH 割り込みに伴う処理を実行します。

pt(上位 8 ビット・タイマ動作時)

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 300 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TAUm_n}_Create
TAUm チャネル・モジュールをインターバル・タイマ・モードで制御する前に必要な初期化処理を実
行します。
備考

この API 関数は、R_TAUm_Create から呼び出されます。

［指定形式］
void

R_{Config_TAUm_n}_Create(void);

備考

m はユニット番号、n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 301 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TAUm_n}_Start
TAUm のチャネル n のカウンタを起動します。

［指定形式］
void

R_{Config_TAUm_n}_Start(void);

備考

m はユニット番号、n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 302 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TAUm_n}_Stop
TAUm のチャネル n のカウンタを停止します。

［指定形式］
void

R_{Config_TAUm_n}_Stop(void);

備考

m はユニット番号、n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 303 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TAUm_n}_Higher8bits_Start
TAUm のチャネル n の上位側 8 ビット・カウンタを起動します。

［指定形式］
void

R_{Config_TAUm_n}_Higher8bits_Start(void);

備考

m はユニット番号、n はチャネル番号 1 または 3 を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 304 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TAUm_n}_Higher8bits_Stop
TAUm のチャネル n の上位側 8 ビット・カウンタを停止します。

［指定形式］
void

R_{Config_TAUm_n}_Higher8bits_Stop(void);

備考

m はユニット番号、n はチャネル番号 1 または 3 を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 305 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TAUm_n}_Lower8bits_Start
TAUm のチャネル n の下位側 8 ビット・カウンタを起動します。

［指定形式］
void

R_{Config_TAUm_n}_Lower8bits_Start(void);

備考

m はユニット番号、n はチャネル番号 1 または 3 を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 306 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TAUm_n}_Lower8bits_Stop
TAUm のチャネル n の下位側 8 ビット・カウンタを停止します。

［指定形式］
void

R_{Config_TAUm_n}_Lower8bits_Stop(void);

備考

m はユニット番号、n はチャネル番号 1 または 3 を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 307 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TAUm_n}_Create_UserInit
TAUm のチャネル n に関するユーザ独自の初期化処理を実行します。
備考

この API 関数は、R_{Config_TAUm_n}_Create のコールバック・ルーチンとして呼び出されます。

［指定形式］
void

R_{Config_TAUm_n}_Create_UserInit(void);

備考

m はユニット番号、n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 308 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_TAUm_n}_interrupt
INTTMmn 割り込みに伴う処理を実行します。
備考

この API 関数は、カウント終了割り込み（INTTMmn）の割り込みハンドラとして呼び出され、カウンタ値（TCRmn）が 0000H に達したときに発生します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_TAUm_n}_interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_TAUm_n}_interrupt(void);

IAR ツールチェーンの場合__interrupt static void
備考

r_{Config_TAUm_n}_interrupt(void);m はユニット番号、n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 309 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_TAUm_n}_higher8bits_interrupt
INTTMmnH 割り込みに伴う処理を実行します。
（上位 8 ビット・タイマ動作時）
備考

この API 関数は、カウント終了割り込み（INTTMmn）の割り込みハンドラとして呼び出され、カウンタ（TCRmn）の上位 8 ビット値が 00H に達したときに発生します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_TAUm_n}_higher8bits_interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_TAUm_n}_higher8bits_interrupt(void);

IAR ツールチェーンの場合__interrupt static void
備考

r_{Config_TAUm_n}_higher8bits_interrupt(void);m はユニット番号、n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 310 of 771

スマート・コンフィグレータ.

4. API 関数

使用例
TAU チャネル 0 カウントのインターバル・タイマを使用し、チャネル 3 を上位 8 ビット・インターバ
ル・タイマとしてカウントし、チャネル 1 を下位 8 ビット・インターバル・タイマとしてカウントする
例です。
main.c#include "r_smc_entry.h"
extern uint8_t ch0_run_countextern uint8_t ch1_run_countextern uint8_t ch3_run_countvoid main(void);void main(void){
EI();
R_Config_TAU0_0_Start();while (ch0_run_count < 20);
R_Config_TAU0_0_Stop();
R_Config_TAU0_1_Lower8bits_Start();while (ch1_run_count < 20);
R_Config_TAU0_1_Lower8bits_Stop();
R_Config_TAU0_3_Higher8bits_Start();while (ch3_run_count < 20);
R_Config_TAU0_3_Higher8bits_Stop();}
Config_TAU0_0_user.c/* Start user code for global. Do not edit comment generated here */uint8_t ch0_run_count/* End user code. Do not edit comment generated here */static void __near r_Config_TAU0_0_interrupt (void){/* Start user code for r_Config_ TAU0_0_interrupt. Do not edit comment generated here */ch0_run_count ++;/* End user code. Do not edit comment generated here */}Config_TAU0_1_user.c/* Start user code for global. Do not edit comment generated here */uint8_t ch1_run_count/* End user code. Do not edit comment generated here */static void __near r_Config_TAU0_1_interrupt (void){/* Start user code for r_Config_TAU0_1_interrupt. Do not edit comment generated here */ch1_run_count ++;/* End user code. Do not edit comment generated here */}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 311 of 771

スマート・コンフィグレータ.

4. API 関数

Config_TAU0_3_user.c/* Start user code for global. Do not edit comment generated here */uint8_t ch3_run_count;/* End user code. Do not edit comment generated here */static void __near r_Config_TAU0_3 _interrupt (void){/* Start user code for r_Config_TAU0_3 _interrupt. Do not edit comment generated here */ch3_run_count ++;/* End user code. Do not edit comment generated here */}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 312 of 771

スマート・コンフィグレータ.

4.2.194. API 関数

インターバル・タイマ（タイマ RJ）

以下に、スマート・コンフィグレータがインターバル・タイマ（タイマ RJ）用として出力する API
関数の一覧を示します。
表 4.25 インターバル・タイマ（タイマ RJ）用 API 関数
API 関数名
R_{Config_TRJn}_Create

周辺機能

機能概要

タイマ・アレイ・

TRJn モジュールをインターバル・タイマ・モードで制ユニット

御する前に必要な初期化処理を実行します。

R_{Config_TRJn}_Start

TRJn のカウンタを起動します。

R_{Config_TRJn}_Stop

TRJn のカウンタを停止します。

R_{Config_TRJn}_Create_UserInit

TRJn に関するユーザ独自の初期化処理を実行します。

r_{Config_TRJn}_interrupt

INTTRn 割り込みに伴う処理を実行します。

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 313 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRJn}_Create
TRJn モジュールをインターバル・タイマ・モードで制御する前に必要な初期化処理を実行します。
備考

この API 関数は、main()関数を実行する前に、R_Systeminit から呼び出されます。

［指定形式］
void

R_{Config_TRJn}_Create(void);

備考

n=0

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 314 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRJn}_Start
TRJn のカウンタを起動します。

［指定形式］
void

R_{Config_TRJn}_Start(void);

備考

n=0

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 315 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRJn}_Stop
TRJn のカウンタを停止します。

［指定形式］
void

R_{Config_TRJn}_Stop(void);

備考

n=0

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 316 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRJn}_Create_UserInit
TRJn に関するユーザ独自の初期化処理を実行します。
備考

この API 関数は、R_{Config_TRJn}_Create のコールバック・ルーチンとして呼び出されます。

［指定形式］
void

R_{Config_TRJn}_Create_UserInit(void);

備考

n=0

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 317 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_TRJn}_interrupt
INTTRJn 割り込みに伴う処理を実行します。
備考

この API 関数は、TRJn 割り込み（INTTRJn）の割り込みハンドラとして呼び出され、カウンタ値が 0000H に達し、次のカウント・ソースが入力されたときに発生し、カウンタがアンダーフローになります。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_TRJn}_interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_TRJn}_interrupt(void);

IAR ツールチェーンの場合__interrupt static void
備考

r_{Config_TRJn}_interrupt(void);

n=0

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 318 of 771

スマート・コンフィグレータ.

4. API 関数

使用例
ユーザ定義のカウンタ値に TRJ0 カウントを使用し、波形 P00 端子に出力する例です。
main.c#include "r_smc_entry.h"
extern uint8_t ch0_run_countvoid main(void);void main(void){
EI();
R_Config_TRJ0_Start();while (ch0_run_count < 20);
R_Config_TRJ0_Stop();}
Config_TRJ0_user.c/* Start user code for global. Do not edit comment generated here */uint8_t ch0_run_count/* End user code. Do not edit comment generated here */static void __near r_Config_TRJ0_interrupt (void){/* Start user code for r_Config_TRJ0_interrupt. Do not edit comment generated here */ch0_run_count ++;P0_bit.no0 = ~P0_bit.no0;/* End user code. Do not edit comment generated here */}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 319 of 771

スマート・コンフィグレータ.

4. API 関数

インターバル・タイマ（12 ビット・インターバル・タイマ）

4.2.20以下に、スマート・コンフィグレータがインターバル・タイマ（12 ビット・インターバル・タイマ）
用として出力する API 関数の一覧を示します。
表 4.26 インターバル・タイマ（12 ビット・インターバル・タイマ）用 API 関数
API 関数名
R_{Config_IT}_Create

周辺機能

機能概要

12 ビット・インタ

12 ビット・インターバル・タイマ・モジュールを制御

ーバル・タイマする前に必要な初期化処理を実行します。
12 ビット・インターバル・タイマのカウンタを起動しR_{Config_IT}_Start

ます。
12 ビット・インターバル・タイマのカウンタを停止し

R_{Config_IT}_Stop

ます。
R_{Config_IT}_Create_UserInit

12 ビット・インターバル・タイマに関するユーザ独自の初期化処理を実行します。
INTIT 割り込みに伴う処理を実行します。

r_{Config_IT}_interrupt

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 320 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_IT}_Create
12 ビット・インターバル・タイマ・モジュールをインターバル・タイマ・モードで制御する前に必要な初期化処理を実行します。
備考

この API 関数は、main()関数を実行する前に、R_Systeminit から呼び出されます。

［指定形式］
void

R_{Config_IT}_Create(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 321 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_IT}_Start
IT カウンタを起動します。

［指定形式］
void

R_{Config_IT}_Start(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 322 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_IT}_Stop
IT カウンタを停止します。

［指定形式］
void

R_{Config_IT}_Stop(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 323 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_IT_Create_UserInit
12 ビット・インターバル・タイマに関するユーザ独自の初期化処理を実行します。
備考

この API 関数は、R_{Config_IT}_Create のコールバック・ルーチンとして呼び出されます。

［指定形式］
void

R_{Config_IT}_Create_UserInit(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 324 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_IT}_interrupt
12 ビット・インターバル・タイマカウント値がコンペア値に達する時、INTIT 割り込みに伴う処理を実行します。
備考

この API 関数は、12 ビット・インターバル・タイマ割り込み (INTIT) の割り込みハンドラとして呼び出され、カウント値がコンペア値に達すると発生します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_IT}_interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_IT}_interrupt(void);

IAR ツールチェーンの場合__interrupt static voidr_{Config_IT}_interrupt(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 325 of 771

スマート・コンフィグレータ.

4. API 関数

使用例
ユーザ定義のカウンタ値に 12 ビット・インターバル・タイマ・カウントを使用し、波形 P00 端子に出力する例です。
main.c#include "r_smc_entry.h"
extern uint8_t count;
void main(void);void main(void){
EI();
R_Config_IT_Start();while (count < 20);
R_Config_IT_Stop();}
Config_IT_user.c/* Start user code for global. Do not edit comment generated here */uint8_t count;/* End user code. Do not edit comment generated here */static void __near r_Config_IT_interrupt (void){/* Start user code for r_Config_IT_interrupt. Do not edit comment generated here */count ++;
P0_bit.no0 = ~P0_bit.no0;/* End user code. Do not edit comment generated here */}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 326 of 771

スマート・コンフィグレータ.

4.2.21

4. API 関数

ワンショット・パルス出力

以下に、スマート・コンフィグレータがワンショット・パルス出力機能用として出力する API 関数の一覧を示します。
表 4.27 ワンショット・パルス出力用 API 関数
API 関数名
R_{Config_TAUm_n}_Create

周辺機能

機能概要

タイマ・アレイ・

TAUm チャンネル・モジュールをワンショット・パル

ユニット

ス出力モードで制御する前に必要な初期化処理を実行します。

R_{Config_TAUm_n}_Start

TAUm チャネル n のカウンタを起動します。

R_{Config_TAUm_n}_Stop

TAUm チャネル n のカウンタを停止します。

R_{Config_TAUm_n}_Set_SoftwareTrig

ソフトウェア・トリガを発生させます。

gerOn
R_{Config_TAUm_n}_Get_PulseWidth

TAUm チャネル n の入力パルス幅を測定します。

R_{Config_TAUm_n}_Create_UserInit

TAUm チャネル n に関するユーザ独自の初期化処理を実行します。

r_{Config_TAUm_n}_channeln_interrupt

INTTMmn 割り込みに伴う処理を実行します。

r_{Config_TAUm_n}_channelp_interrupt

INTTMmp 割り込みに伴う処理を実行します。

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 327 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TAUm_n}_Create
TAUm チャンネル・モジュールをワンショット・パルス出力モードで制御する前に必要な初期化処理を実行します。
備考

この API 関数は、R_TAUm_Create から呼び出されます。

［指定形式］
void

R_{Config_TAUm_n}_Create(void);

備考

m はユニット番号、n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 328 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TAUm_n}_Start
TAUm チャネル n のカウンタを起動します。

［指定形式］
void

R_{Config_TAUm_n}_Start(void);

備考

m はユニット番号、n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 329 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TAUm_n}_Stop
TAUm チャネル n のカウンタを停止します。

［指定形式］
void

R_{Config_TAUm_n}_Stop(void);

備考

m はユニット番号、n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 330 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TAUm_n}_Set_SoftwareTriggerOn
ソフトウェア・トリガを発生させます。

［指定形式］
void

R_{Config_TAUm_n}_Set_SoftwareTriggerOn(void);

備考

m はユニット番号、n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 331 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TAUm_n}_Get_PulseWidth
TAUm チャネル n の入力パルス幅を測定します。

［指定形式］
void

R_{Config_TAUm_n}_Get_PulseWidth(uint32_t * const width);

備考

m はユニット番号、n はチャネル番号を示します。

［引数］
I/O

引数

説明

O

uint32_t * const width;

入力パルス幅を格納するアドレス

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 332 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TAUm_n}_Create_UserInit
TAUm のチャネル n に関するユーザ独自の初期化処理を実行します。
備考

この API 関数は、R_{Config_TAUm_n}_Create のコールバック・ルーチンとして呼び出されます。

［指定形式］
void

R_{Config_TAUm_n}_Create_UserInit(void);

備考

m はユニット番号、n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 333 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_TAUm_n}_channeln_interrupt
INTTMmn 割り込みに伴う処理を実行します。
備考

この API 関数は、カウント終了割り込み（INTTMmn）の割り込みハンドラとして呼び出され、カウンタ値（TCRmn）が 0000H に達したときに発生します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_TAUm_n}_channeln_interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_TAUm_n}_channeln_interrupt(void);

IAR ツールチェーンの場合__interrupt static void
備考

r_{Config_TAUm_n}_channeln_interrupt(void);m はユニット番号、n はマスタ・チャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 334 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_TAUm_n}_channelp_interrupt
INTTMmp 割り込みサービス・ルーチンです。
備考

この API 関数は、カウント終了割り込み（INTTMmp）の割り込みハンドラとして呼び出され、カウンタ値（TCRmp）が 0000H に達したときに発生します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_TAUm_n}_channelp_interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_TAUm_n}_channelp_interrupt(void);

IAR ツールチェーンの場合__interrupt static void
備考 1.
備考 2.

r_{Config_TAUm_n}_channelp_interrupt(void);m はユニット番号、n はマスタ・チャネル番号、p はスレーブ・チャネル番号を示します。
n＜p≦7

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 335 of 771

スマート・コンフィグレータ.

4. API 関数

使用例
ソフトウェア・トリガにより、ワンショット・パルスを出力する TAU チャネル 0 の例です。
main.c#include "r_smc_entry.h"
extern uint8_t tau_oneshot_countvoid main(void);void main(void){
EI();
tau_oneshot_flag = 0;
R_Config_TAU0_0_Start();
R_Config_TAU0_0_Set_SoftwareTriggerOn();
while (tau_ oneshot_flag < 10);
R_Config_TAU0_0_Stop();}
Config_TAU0_0_user.c/* Start user code for global. Do not edit comment generated here */uint8_t tau_oneshot_count/* End user code. Do not edit comment generated here */static void __near r_Config_TAU0_01_channel1_interrupt (void){/* Start user code for r_Config_TAU0_01_channel1_interrupt. Do not edit comment generated here */tau_oneshot_count ++;/* End user code. Do not edit comment generated here */}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 336 of 771

スマート・コンフィグレータ.

4.2.22

4. API 関数

方形波出力（タイマ・アレイ・ユニット）

以下に、スマート・コンフィグレータが方形波出力機能用として出力する API 関数の一覧を示します。
表 4.28 方形波出力（タイマ・アレイ・ユニット）用 API 関数
API 関数名
R_{Config_TAUm_n}_Create

周辺機能

機能概要

タイマ・アレイ・方形波出力モードで TAUm チャネル・モジュールを制ユニット

御する前に必要な初期化処理を実行します。

R_{Config_TAUm_n}_Start

TAUm のチャネル n のカウンタを起動します。

R_{Config_TAUm_n}_Stop

TAUm のチャネル n のカウンタを停止します。

R_{Config_TAUm_n}_Lower8bits_Start

TAUm のチャネル n の下位側 8 ビット・カウンタを起動します。

R_{Config_TAUm_n}_Lower8bits_Stop

TAUm のチャネル n の下位側 8 ビット・カウンタを停止します。

R_{Config_TAUm_n}_Create_UserInit

TAUm のチャネル n に関するユーザ独自の初期化処理を実行します。

r_{Config_TAUm_n}_interrupt

R20UT4852JJ0105
2024.07.22

Rev.1.05

INTTMmn 割り込みに伴う処理を実行します。

Page 337 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TAUm_n}_Create
方形波出力モードで TAUm チャネル・モジュールを制御する前に必要な初期化処理を実行します。
備考

この API 関数は、R_TAUm_Create から呼び出されます。

［指定形式］
void

R_{Config_TAUm_n}_Create(void);

備考

m はユニット番号、n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 338 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TAUm_n}_Start
TAUm のチャネル n のカウンタを起動します。

［指定形式］
void

R_{Config_TAUm_n}_Start(void);

備考

m はユニット番号、n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 339 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TAUm_n}_Stop
TAUm のチャネル n のカウンタを停止します。

［指定形式］
void

R_{Config_TAUm_n}_Stop(void);

備考

m はユニット番号、n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 340 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TAUm_n}_Lower8bits_Start
TAUm のチャネル n の下位側 8 ビット・カウンタを起動します。

［指定形式］
void

R_{Config_TAUm_n}_Lower8bits_Start(void);

備考

m はユニット番号、n はチャネル番号 1 または 3 を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 341 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TAUm_n}_Lower8bits_Stop
TAUm のチャネル n の下位側 8 ビット・カウンタを停止します。

［指定形式］
void

R_{Config_TAUm_n}_Lower8bits_Stop(void);

備考

m はユニット番号、n はチャネル番号 1 または 3 を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 342 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TAUm_n}_Create_UserInit
TAUm のチャネル n に関するユーザ独自の初期化処理を実行します。
備考

この API 関数は、R_{Config_TAUm_n}_Create のコールバック・ルーチンとして呼び出されます。

［指定形式］
void

R_{Config_TAUm_n}_Create_UserInit(void);

備考

m はユニット番号、n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 343 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_TAUm_n}_interrupt
INTTMmn 割り込みに伴う処理を実行します。
備考

この API 関数は、カウント終了割り込み（INTTMmn）の割り込みハンドラとして呼び出され、カウンタ値（TCRmn）が 0000H に達したときに発生します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_TAUm_n}_interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_TAUm_n}_interrupt(void);

IAR ツールチェーンの場合__interrupt static void
備考

r_{Config_TAUm_n}_interrupt(void);m はユニット番号、n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 344 of 771

スマート・コンフィグレータ.

4. API 関数

使用例
TAU チャネル 0 カウンタとチャネル 1 の下位 8 ビットカウンターを使用して、方形波出力する例です。
main.c#include "r_smc_entry.h"
extern uint8_t ch0_run_countextern uint8_t ch1_run_countvoid main(void);void main(void){
EI();
R_Config_TAU0_0_Start();while (ch0_run_count < 20);
R_Config_TAU0_0_Stop();
R_Config_TAU0_1_Lower8bits_Start();while (ch1_run_count < 20);
R_Config_TAU0_1_Lower8bits_Stop();}
Config_TAU0_0_user.c/* Start user code for global. Do not edit comment generated here */uint8_t ch0_run_count/* End user code. Do not edit comment generated here */static void __near r_Config_TAU0_0_interrupt (void){/* Start user code for r_Config_ TAU0_0_interrupt. Do not edit comment generated here */ch0_run_count ++;/* End user code. Do not edit comment generated here */}Config_TAU0_1_user.c/* Start user code for global. Do not edit comment generated here */uint8_t ch1_run_count/* End user code. Do not edit comment generated here */static void __near r_Config_TAU0_1_interrupt (void){/* Start user code for r_Config_TAU0_1_interrupt. Do not edit comment generated here */ch1_run_count ++;/* End user code. Do not edit comment generated here */}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 345 of 771

スマート・コンフィグレータ.

4.2.23

4. API 関数

方形波出力（タイマ RJ）

以下に、スマート・コンフィグレータが方形波出力機能（タイマ RJ）用として出力する API 関数の一覧を示します。
表 4.29 方形波出力（タイマ RJ）用 API 関数
API 関数名
R_{Config_TRJn}_Create

周辺機能

機能概要

タイマ・アレイ・方形波出力モードで TRJn モジュールを制御する前に必ユニット

要な初期化処理を実行します。

R_{Config_TRJn}_Start

TRJn のカウンタを起動します。

R_{Config_TRJn}_Stop

TRJn のカウンタを停止します。

R_{Config_TRJn}_Create_UserInit

TRJn に関するユーザ独自の初期化処理を実行します。

r_{Config_TRJn}_interrupt

INTTRJn 割り込みに伴う処理を実行します。

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 346 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRJn}_Create
方形波出力モードで TRJn モジュールを制御する前に必要な初期化処理を実行します。
備考

この API 関数は、main()関数を実行する前に、R_Systeminit から呼び出されます。

［指定形式］
void

R_{Config_TRJn}_Create(void);

備考

n=0

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 347 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRJn}_Start
TRJn のカウンタを起動します。

［指定形式］
void

R_{Config_TRJn}_Start(void);

備考

n=0

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 348 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRJn}_Stop
TRJn のカウンタを停止します。

［指定形式］
void

R_{Config_TRJn}_Stop(void);

備考

n=0

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 349 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRJn}_Create_UserInit
TRJn に関するユーザ独自の初期化処理を実行します。
備考

この API 関数は、R_{Config_TRJn}_Create のコールバック・ルーチンとして呼び出されます。

［指定形式］
void

R_{Config_TRJn}_Create_UserInit(void);

備考

n=0

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 350 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_TRJn}_interrupt
INTTRJn 割り込みに伴う処理を実行します。
備考

この API 関数は、TRJn 割り込み（INTTRJn）の割り込みハンドラとして呼び出され、カウント値が 0000H に達し、次のカウント・ソースが入力されたときに発生し、カウンタがアンダーフローになります。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_TRJn}_interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_TRJn}_interrupt(void);

IAR ツールチェーンの場合__interrupt static void
備考

r_{Config_TRJn}_interrupt(void);

n=0

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 351 of 771

スマート・コンフィグレータ.

4. API 関数

使用例
TRJ0 カウントを使用して、ユーザ定義周期の JIO0 端子および JO0 端子から反転パルスを出力する
例です。
main.c#include "r_smc_entry.h"
extern uint8_t ch0_run_count;
void main(void);void main(void){
EI();
R_Config_TRJ0_Start();while (ch0_run_count < 20);
R_Config_TRJ0_Stop();}
Config_TRJ0_user.c/* Start user code for global. Do not edit comment generated here */uint8_t ch0_run_count/* End user code. Do not edit comment generated here */static void __near r_Config_TRJ0_interrupt (void){/* Start user code for r_Config_ TRJ0_interrupt. Do not edit comment generated here */ch0_run_count ++;/* End user code. Do not edit comment generated here */}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 352 of 771

スマート・コンフィグレータ.

4.2.244. API 関数

インターバル・タイマ（8 ビット・カウント・モード）

以下に、スマート・コンフィグレータが 32 ビット・インターバル・タイマの 8 ビット・カウント・
モード用として出力する API 関数の一覧を示します。
表 4.30 インターバル・タイマ（8 ビット・カウント・モード）用 API 関数
API 関数名

周辺機能

R_{Config_ITLn}_Create

機能概要

32 ビット・インタ

32 ビット・インターバル・タイマ（8 ビット・モー

ーバル・タイマド）で ITLn モジュールを制御する前に必要な初期化処理を実行します。

R_{Config_ITLn}_Start

ITLn チャネルを起動します。

R_{Config_ITLn}_Stop

ITLn チャネルを停止します。

R_{Config_ITLn}_Set_OperationMode32 ビット・インターバル・タイマの動作モードを変更
する前に、カウンタを停止して割り込みフラグをクリアするために使用します。

R_{Config_ITLn}_Create_UserInit

ITLn チャネルに関するユーザ独自の初期化処理を実行します。

r_{Config_ITLn}_Callback_Shared_inter32 ビット・インターバル・タイマ割り込み（INTITL）

ruptに伴う処理を実行します。

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 353 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_ITLn}_Create
32 ビット・インターバル・タイマの 8 ビット・モードで ITLn モジュールを制御する前に必要な初期化処理を実行します。
備考

この API 関数は、R_ITL_Create から呼び出されます。

［指定形式］
void

R_{Config_ITLn}_Create(void);

備考

n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 354 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_ITLn}_Start
ITLn チャネルを起動します。
備考

32 ビット・インターバル・タイマ割り込みは、R_ITL_Start_Interrupt()で呼び出すことで有効になります。32 ビット・インターバル・タイマ割り込みを使用する場合は、
R_ITL_Start_Interrupt()と共にこの API 関数を呼び出してください。

［指定形式］
void

R_{Config_ITLn}_Start(void);

備考

n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 355 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_ITLn}_Stop
ITLn チャネルを停止します。

［指定形式］
void

R_{Config_ITLn}_Stop(void);

備考

n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 356 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_ITLn}_Set_OperationMode32 ビット・インターバル・タイマの動作モードを変更する前に、カウンタを停止して割り込みフラグをクリアするために使用します。

［指定形式］
void

R_{Config_ITLn}_Set_OperationMode(void);

備考

n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 357 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_ITLn}_Create_UserInit
ITLn チャネルに関するユーザ独自の初期化処理を実行します。
備考

この API 関数は、R_{Config_ITLn}_Create のコールバック・ルーチンとして呼び出されます。

［指定形式］
void

R_{Config_ITLn}_Create_UserInit(void);

備考

n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 358 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_ITLn}_Callback_Shared_interrupt
32 ビット・インターバル・タイマ割り込み（INTITL）に伴う処理を実行します。
備考 1

この API 関数は、32 ビット・インターバル・タイマ割り込みの割り込みハンドラである
r_itl_interrupt からコールバック・ルーチンとして呼び出されます。

備考 2

コールバック関数で必要なフラグの設定／クリアのみを保持する必要があり、他の処理
コードは、コールバックおよび割り込み関数から移動する必要があります。それ以外は、割り込みが正しいタイミングで処理されません。

［指定形式］CCRL78 ツールチェーンの場合
static void __near r_{Config_ITLn}_Callback_Shared_interrupt(void);
LLVM ツールチェーンの場合
void r_{Config_ITLn}_Callback_Shared_interrupt(void);
IAR ツールチェーンの場合__interrupt static void r_{Config_ITLn}_Callback_Shared_interrupt(void);
備考

n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 359 of 771

スマート・コンフィグレータ.

4. API 関数

使用例
ユーザ定義周期に 8 ビット・カウント・モードを開始するための例です。
main.c#include "r_smc_entry.h"
extern volatile uint8_t tau_interrupt_flag;
void main(void);void main(void){
EI();
R_Config_ITL000 _Start();while (itl_run_count < 20);
R_Config_ITL000 _Stop();}
Config_ITL000_user.c/* Start user code for global. Do not edit comment generated here */uint8_t itl_run_count/* End user code. Do not edit comment generated here */void R_Config_ITL000_Callback_Shared_Interrupt(void){/* Start user code for R_Config_ITL000_Callback_Shared_Interrupt. Do not edit comment generated
here */
itl_run_count ++;/* End user code. Do not edit comment generated here */}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 360 of 771

スマート・コンフィグレータ.

4.2.25

4. API 関数

インターバル・タイマ（16 ビット・カウント・モード）

以下に、スマート・コンフィグレータが 32 ビット・インターバル・タイマの 16 ビット・カウント・
モード用として出力する API 関数の一覧を示します。
表 4.31 インターバル・タイマ（16 ビット・カウント・モード）用 API 関数
API 関数名
R_{Config_ITLn_ITLm}_Create

周辺機能

機能概要

32 ビット・インタ

32 ビット・インターバル・タイマ（16 ビット・モー

ーバル・タイマド）で ITLn_ITLm モジュールを制御する前に必要な初期化処理を実行します。

R_{Config_ITLn_ITLm}_Start

ITLn_ITLm チャネルを起動します。

R_{Config_ITLn_ITLm}_Stop

ITLn_ITLm チャネルを停止します。

R_{Config_ITLn_ITLm}_Set_SoftwareTri

ソフトウェア・トリガを発生させます。

ggerOnR_{Config_ITLn_ITLm}_Set_Operation

32 ビット・インターバル・タイマの動作モードを変更

Mode

する前に、カウンタを停止して割り込みフラグをクリアするために使用します。

R_{Config_ITLn_ITLm}_Get_CaptureVal

キャプチャ値を取得します。

ue
R_{Config_ITLn_ITLm}_Create_UserInit

ITLn_ITLm チャネルに関するユーザ独自の初期化処理を実行します。

r_{Config_ITLn_ITLm}_Callback_Share

32 ビット・インターバル・タイマ割り込み（INTITL）

d_interruptに伴う処理を実行します。

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 361 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_ITLn_ITLm}_Create
32 ビット・インターバル・タイマ（16 ビット・モード）で ITLn_ITLm モジュールを制御する前に必要な初期化処理を実行します。
備考

この API 関数は、R_ITL_Create から呼び出されます。

［指定形式］
void

R_{Config_ITLn_ITLm}_Create(void);

備考

n
＝
000
n＝012 のとき m＝013

の

と

き

m

＝

001

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 362 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_ITLn_ITLm}_Start
ITLn_ITLm チャネルを起動します。
備考

32 ビット・インターバル・タイマ割り込みは、R_ITL_Start_Interrupt()で呼び出すことで有効になります。32 ビット・インターバル・タイマ割り込みを使用する場合は、
R_ITL_Start_Interrupt()と共にこの API 関数を呼び出してください。

［指定形式］
void

R_{Config_ITLn_ITLm}_Start(void);

備考

n
＝
000
n＝012 のとき m＝013

の

と

き

m

＝

001

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 363 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_ITLn_ITLm}_Stop
ITLn_ITLm チャネルを停止します。

［指定形式］
void

R_{Config_ITLn_ITLm}_Stop(void);

備考

n
＝
000
n＝012 のとき m＝013

の

と

き

m

＝

001

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 364 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_ITLn_ITLm}_Set_SoftwareTriggerOn
ソフトウェア・トリガを発生させます。

［指定形式］
void

R_{Config_ITLn_ITLm}_Set_SoftwareTriggerOn(void);

備考

n
＝
000
n＝012 のとき m＝013

の

と

き

m

＝

001

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 365 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_ITLn_ITLm}_Set_OperationMode32 ビット・インターバル・タイマの動作モードを変更する前に、カウンタを停止して割り込みフラグをクリアするために使用します。

［指定形式］
void

R_{Config_ITLn_ITLm}_Set_OperationMode(void);

備考

n
＝
000
n＝012 のとき m＝013

の

と

き

m

＝

001

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 366 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_ITLn_ITLm}_Get_CaptureValue
キャプチャ値を取得します。

［指定形式］
void

R_{Config_ITLn_ITLm}_Get_CaptureValue(uint16_t * const value);

備考

n
＝
000
n＝012 のとき m＝013

の

と

き

m

＝

001

［引数］
I/O

引数

説明

O

uint16_t * const value;

キャプチャ値を格納するアドレス

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 367 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_ITLn_ITLm}_Create_UserInit
ITLn_ITLm チャネルに関するユーザ独自の初期化処理を実行します。
備考

この API 関数は、R_{Config_ITLn_ITLm}_Create のコールバック・ルーチンとして呼び出されます。

［指定形式］
void

R_{Config_ITLn_ITLm}_Create_UserInit(void);

備考

n
＝
000
n＝012 のとき m＝013

の

と

き

m

＝

001

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 368 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_ITLn_ITLm}_Callback_Shared_interrupt
32 ビット・インターバル・タイマ割り込み（INTITL）に伴う処理を実行します。
備考 1

この API 関数は、32 ビット・インターバル・タイマ割り込みの割り込みハンドラである
r_itl_interrupt からコールバック・ルーチンとして呼び出されます。

備考 2

コールバック関数で必要なフラグの設定／クリアのみを保持する必要があり、他の処理
コードは、コールバックおよび割り込み関数から移動する必要があります。それ以外は、割り込みが正しいタイミングで処理されません。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_ITLn_ITLm}_Callback_Shared_interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_ITLn_ITLm}_Callback_Shared_interrupt(void);

IAR ツールチェーンの場合__interrupt static void
備考

r_{Config_ITLn_ITLm}_Callback_Shared_interrupt(void);n＝000n＝012 のとき m＝013

の

と

き

m

＝

001

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 369 of 771

スマート・コンフィグレータ.

4. API 関数

使用例
32 ビット・インターバル・タイマの動作モードを変更する例です（16 ビット・カウント・モードを
16 ビット・キャプチャ・モードに変更します）。
main.c#include "r_smc_entry.h"void main(void);void main(void){
EI();
R_Config_ITL000_ITL001_Set_OperationMode();/* Capture setting */ITLCC0 |= _80_ITL_CAPTURE_ENABLE;
CAPF0CR = 1U;
ITLCC0 |= _00_ITL_CAPTURE_COUNTER_RETAIN;ITLCC0 &= _FC_ITL_CAPTURE_TRIGGER_CLEAR;ITLCC0 |= _00_ITL_CAPTURE_TRIGGER_SOFTWARE;
R_Config_ITL000_ITL0011_Start();
R_Config_ITL000_ITL0011_Set_SoftwareTriggerOn();}
Config_ITL000_user.cvolatile uint16_t value = 0U;
void r_Config_ITL000_callback_shared_interrupt(void){
R_Config_ITL000_ITL0011_Get_CaptureValue (&value);}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 370 of 771

スマート・コンフィグレータ.

4. API 関数

インターバル・タイマ（32 ビット・カウント・モード）

4.2.26

以下に、スマート・コンフィグレータが 32 ビット・インターバル・タイマの 32 ビット・カウント・
モード用として出力する API 関数の一覧を示します。
表 4.32 インターバル・タイマ（32 ビット・カウント・モード）用 API 関数
API 関数名

周辺機能

R_{Config_ITL000_ITL001_ITL012_ITL0 32 ビット・インタ
ーバル・タイマ13}_Create

機能概要
32 ビット・インターバル・タイマ（32 ビット・モー
ド）で ITL000_ITL001_ITL012_ITL013 モジュールを制御する前に必要な初期化処理を実行します。

R_{Config_ITL000_ITL001_ITL012_ITL0

ITL000_ITL001_ITL012_ITL013 チャネルを起動しま

13}_Start

す。

R_{Config_ITL000_ITL001_ITL012_ITL0

ITL000_ITL001_ITL012_ITL013 チャネルを停止しま

13}_Stop

す。

R_{Config_ITL000_ITL001_ITL012_ITL0

32 ビット・インターバル・タイマの動作モードを変更

13}_Set_OperationMode

する前に、カウンタを停止して割り込みフラグをクリアするために使用します。

R_{Config_ITL000_ITL001_ITL012_ITL0

ITL000_ITL001_ITL012_ITL013 チャネルに関するユー

13}_Create_UserInit

ザ独自の初期化処理を実行します。

r_{Config_ITL000_ITL001_ITL012_ITL0

32 ビット・インターバル・タイマ割り込み（INTITL）

13}_Callback_Shared_Interruptに伴う処理を実行します。

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 371 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_ITL000_ITL001_ITL012_ITL013}_Create
32 ビット・インターバル・タイマ（32 ビット・モード）で ITL000_ITL001_ITL012_ITL013 モジュー
ルを制御する前に必要な初期化処理を実行します。
備考

この API 関数は、R_ITL_Create から呼び出されます。

［指定形式］
void

R_{Config_ITL000_ITL001_ITL012_ITL013}_Create(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 372 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_ITL000_ITL001_ITL012_ITL013}_Start
ITL000_ITL001_ITL012_ITL013 チャネルを起動します。
備考

32 ビット・インターバル・タイマ割り込みは、R_ITL_Start_Interrupt()で呼び出すことで有効になります。32 ビット・インターバル・タイマ割り込みを使用する場合は、
R_ITL_Start_Interrupt()と共にこの API 関数を呼び出してください。

［指定形式］
void

R_{Config_ITL000_ITL001_ITL012_ITL013}_Start(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 373 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_ITL000_ITL001_ITL012_ITL013}_Stop
ITL000_ITL001_ITL012_ITL013 チャネルを停止します。

［指定形式］
void

R_{Config_ITL000_ITL001_ITL012_ITL013}_Stop(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 374 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_ITL000_ITL001_ITL012_ITL013}_Set_OperationMode32 ビット・インターバル・タイマの動作モードを変更する前に、カウンタを停止して割り込みフラグをクリアするために使用します。

［指定形式］
void

R_{Config_ITL000_ITL001_ITL012_ITL013}_Set_OperationMode(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 375 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_ITL000_ITL001_ITL012_ITL013}_Create_UserInit
ITL000_ITL001_ITL012_ITL013 チャネルに関するユーザ独自の初期化処理を実行します。
備考

この API 関数は、R_{Config_ITL000_ITL001_ITL012_ITL013}_Create のコールバック・
ルーチンとして呼び出されます。

［指定形式］
void

R_{Config_ITL000_ITL001_ITL012_ITL013}_Create_UserInit(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 376 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_ITL000_ITL001_ITL012_ITL013}_Callback_Shared_interrupt
32 ビット・インターバル・タイマ割り込み（INTITL）に伴う処理を実行します。
備考 1

この API 関数は、32 ビット・インターバル・タイマ割り込みの割り込みハンドラである
r_itl_interrupt からコールバック・ルーチンとして呼び出されます。

備考 2

コールバック関数で必要なフラグの設定／クリアのみを保持する必要があり、他の処理
コードは、コールバックおよび割り込み関数から移動する必要があります。それ以外は、割り込みが正しいタイミングで処理されません。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_ITL000_ITL001_ITL012_ITL013}_Callback_Shared_interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_ITL000_ITL001_ITL012_ITL013}_Callback_Shared_interrupt(void);

IAR ツールチェーンの場合__interrupt static voidr_{Config_ITL000_ITL001_ITL012_ITL013}_Callback_Shared_interrupt(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 377 of 771

スマート・コンフィグレータ.

4. API 関数

使用例
32 ビット・カウント・モードの使用例です。
main.c#include "r_smc_entry.h"
extern uint8_t itl_run_countvoid main(void);void main(void){
EI();
R_Config_ITL000_ITL001_ITL012_ITL013_Start();while (itl_run_count < 20);
R_Config_ITL000_ITL001_ITL012_ITL013_Stop();}
Config_ITL000_ITL001_ITL012_ITL013_user.c/* Start user code for global. Do not edit comment generated here */uint8_t itl_run_count/* End user code. Do not edit comment generated here */void R_Config_ITL000_ITL001_ITL012_ITL013_Callback_Shared_Interrupt(void){/* Start user code for R_Config_ITL000_ITL001_ITL012_ITL013_Callback_Shared_Interrupt. Do notedit comment generated here */itl_run_count ++;/* End user code. Do not edit comment generated here */}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 378 of 771

スマート・コンフィグレータ.

4.2.27

4. API 関数

インプットキャプチャ機能（タイマ RD）

以下に、スマート・コンフィグレータがインプットキャプチャ機能用として出力する API 関数の一覧を示します。
表 4.33 インプットキャプチャ機能（タイマ RD）用 API 関数
API 関数名

周辺機能

R_{Config_TRDn}_Create

タイマ RD

機能概要
インプットキャプチャ機能モードで TRDn モジュールを制御する前に必要な初期化処理を実行します。

R_{Config_TRDn}_Start

TRDn のカウンタを起動します。

R_{Config_TRDn}_Stop

TRDn のカウンタを停止します。

R_{Config_TRDn}_Get_PulseWidth

TRDn の入力パルス幅を測定します。

R_{Config_TRDn}_Create_UserInit

TRDn に関するユーザ独自の初期化処理を実行します。

r_{Config_TRDn}_trdn_interrupt

INTTRDn 割り込みに伴う処理を実行します。

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 379 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRDn}_Create
インプットキャプチャ機能モードで TRDn モジュールを制御する前に必要な初期化処理を実行します。
備考

この API 関数は、R_TRD_Create から呼び出されます。

［指定形式］
void

R_{Config_TRDn}_Create(void);

備考

n = 0, 1

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 380 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRDn}_Start
TRDn のカウンタを起動します。

［指定形式］
void

R_{Config_TRDn}_Start(void);

備考

n = 0, 1

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 381 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRDn}_Stop
TRDn のカウンタを停止します。

［指定形式］
void

R_{Config_TRDn}_Stop(void);

備考

n = 0, 1

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 382 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRDn}_Get_PulseWidth
TRDn の入力パルス幅を測定します。

［指定形式］
MD_STATUS R_{Config_TRDn}_Get_PulseWidth (uint32_t * const active_width, uint32_t * const
inactive_width, e_timer_channel_t channel);
備考

n = 0, 1

［引数］
引数

I/O

説明

O

uint32_t * const active_width;High レベル幅O

uint32_t * const inactive_width;

Low レベル幅I

e_timer_channel_t channel

TRDIOji 端子（i = 0, 1, j = A, B, C, D）外部信号と ELC 信号入力。

備考

以下に、構造体 e_timer_channel_t を示します。
typedef enum{
TMCHANNELA,TMCHANNELB,TMCHANNELC,TMCHANNELD,TMCHANNELELC} e_timer_channel_t;

［戻り値］
マクロ

説明

MD_OK

正常終了

MD_ERROR

カウンタがキャプチャ・モードとして機能しない

MD_ARGERROR

引数入力エラー

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 383 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRDn}_Create_UserInit
TRDn に関するユーザ独自の初期化処理を実行します。
備考

この API 関数は、R_{Config_TRDn}_Create のコールバック・ルーチンとして呼び出されます。

［指定形式］
void

R_{Config_TRDn}_Create_UserInit(void);

備考

n = 0, 1

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 384 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_TRDn}_trdn_interrupt
INTTRDn 割り込みに伴う処理を実行します。
備考

この API 関数は、キャプチャ割り込みの割り込みハンドラ（INTTRDn）として呼ばれ、
TRDIOjn（j = A, B, C, D）入力の有効なキャプチャ・エッジが検出されたとき、またはTRDn レジスタがオーバーフローの場合に発生します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_TRDn}_interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_TRDn}_interrupt(void);

IAR ツールチェーンの場合__interrupt static void
備考

r_{Config_TRDn}_interrupt(void);n = 0, 1

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 385 of 771

スマート・コンフィグレータ.

4. API 関数

使用例
TRD0 入力パルス幅を取得する例です。
main.c#include "r_smc_entry.h"void main(void);
typedef struct {uint32_t active_width;
uint32_t inactive_width;} TRD_PulseWidth_t;
TRD_PulseWidth_t trd_a;
TRD_PulseWidth_t trd_b;
TRD_PulseWidth_t trd_d;
static void delay_ms(uint32_t time_ms){
uint32_t i = 0;
while(time_ms--) {for(i = 0; i < 156; I++) {NOP();}}}
void main(void){
EI();
P0 = 0x00U;
R_Config_TAU0_0_Start();
R_Config_TAU0_1_Start();
R_Config_TAU0_2_Start();
R_Config_TRD0_Start();delay_ms(2000);
R_Config_TRD0_Get_PulseWidth(&trd_a.active_width, &trd_a.inactive_width, TMCHANNELA);
R_Config_TRD0_Get_PulseWidth(&trd_b.active_width, &trd_b.inactive_width, TMCHANNELB);
R_Config_TRD0_Get_PulseWidth(&trd_d.active_width, &trd_d.inactive_width, TMCHANNELC);
while(1);}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 386 of 771

スマート・コンフィグレータ.

4.2.284. API 関数

インプットキャプチャ機能（タイマ RG）

以下に、スマート・コンフィグレータがインプットキャプチャ機能用として出力する API 関数の一覧を示します。
表 4.34 インプットキャプチャ機能（タイマ RG）用 API 関数
API 関数名

周辺機能
タイマ RG

R_{Config_TRG}_Create

機能概要
インプットキャプチャ機能モードで TRG モジュールを制御する前に必要な初期化処理を実行します。

R_{Config_TRG}_Start

TRG のカウンタを起動します。

R_{Config_TRG}_Stop

TRG のカウンタを停止します。

R_{Config_TRG}_Get_PulseWidth

TRG の入力パルス幅を測定します。

R_{Config_TRG}_Create_UserInit

TRG に関するユーザ独自の初期化処理を実行します。

r_{Config_TRG}_interrupt

INTTRG 割り込みに伴う処理を実行します。

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 387 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRG}_Create
インプットキャプチャ機能モードで TRG モジュールを制御する前に必要な初期化処理を実行します。
備考

この API 関数は、R_Systeminit から呼び出されます。

［指定形式］
void

R_{Config_TRG}_Create(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 388 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRG}_Start
TRG のカウンタを起動します。

［指定形式］
void

R_{Config_TRG}_Start(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 389 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRG}_Stop
TRG のカウンタを停止します。

［指定形式］
void

R_{Config_TRG}_Stop(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 390 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRG}_Get_PulseWidth
TRG の入力パルス幅を測定します。

［指定形式］
MD_STATUS R_{Config_TRG}_Get_PulseWidth (uint32_t * const active_width, uint32_t * const
inactive_width, e_timer_channel_t channel);

［引数］
引数

I/O

説明

O

uint32_t * const active_width;High レベル幅O

uint32_t * const inactive_width;

Low レベル幅I

e_timer_channel_t channel

TRGIOA, TRGIOB 端子外部信号と ELC 信号入力。

備考

以下に、構造体 e_trg_channel_t を示します。
typedef enum{
TRG_CHANNELA,
TRG_CHANNELB,TRG_CHANNELELC} e_trg_channel_t;

［戻り値］
マクロ

説明

MD_OK

正常終了

MD_ERROR

カウンタがキャプチャ・モードとして機能しない

MD_ARGERROR

引数入力エラー

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 391 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRG}_Create_UserInit
TRG に関するユーザ独自の初期化処理を実行します。
備考

この API 関数は、R_{Config_TRG}_Create のコールバック・ルーチンとして呼び出されます。

［指定形式］
void

R_{Config_TRG}_Create_UserInit(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 392 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_TRG}_interrupt
INTTRG 割り込みに伴う処理を実行します。
備考

この API 関数は、キャプチャ割り込みの割り込みハンドラ（INTTRG）として呼ばれ、
TRDIOA, TRDIOB 入力の有効なキャプチャ・エッジが検出されたとき、または TRG レ
ジスタがオーバーフローの場合に発生します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_TRG}_interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_TRG}_interrupt(void);

IAR ツールチェーンの場合__interrupt static voidr_{Config_TRG}_interrupt(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 393 of 771

スマート・コンフィグレータ.

4. API 関数

使用例
TRG 入力パルス幅を取得する例です。
main.c#include "r_smc_entry.h"void main(void);
typedef struct {uint32_t active_width;
uint32_t inactive_width;} TRG_PulseWidth_t;
TRG_PulseWidth_t trg_a;
TRG_PulseWidth_t trg_b;
static void delay_ms(uint32_t time_ms){
uint32_t i = 0;
while(time_ms--) {for(i = 0; i < 156; I++) {NOP();}}}
void main(void){
EI();
P0 = 0x00U;
R_Config_TAU0_0_Start();
R_Config_TAU0_1_Start();
R_Config_TRG_Start();delay_ms(2000);
R_Config_TRG_Get_PulseWidth(&trg_a.active_width, &trg_a.inactive_width, TMCHANNELA);
R_Config_TRG_Get_PulseWidth(&trg_b.active_width, &trg_b.inactive_width, TMCHANNELB);
while(1);}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 394 of 771

スマート・コンフィグレータ.

4. API 関数

Config_TRG_user.cstatic void __near r_Config_TRG_interrupt(void){...
/* Start user code for r_Config_TRG_interrupt. Do not edit comment generated here *//* TRGGRA input capture interrupt */P0_bit.no0 = ~P0_bit.no0;/* TRGGRB input capture interrupt */P0_bit.no1 = ~P0_bit.no1;/* End user code. Do not edit comment generated here */}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 395 of 771

スマート・コンフィグレータ.

4.2.294. API 関数

インプットキャプチャ機能（タイマ RX）

以下に、スマート・コンフィグレータがインプットキャプチャ機能用として出力する API 関数の一覧を示します。
表 4.35 インプットキャプチャ機能（タイマ RD）用 API 関数
API 関数名

周辺機能
タイマ RX

R_{Config_TRX}_Create

機能概要
インプットキャプチャ機能モードで TRX モジュールを制御する前に必要な初期化処理を実行します。

R_{Config_TRX}_Start

TRX のカウンタを起動します。

R_{Config_TRX}_Stop

TRX のカウンタを停止します。

R_{Config_TRX}_Get_BufferValueTRX の入力パルス幅を測定します。

R_{Config_TRX}_Create_UserInit

TRX に関するユーザ独自の初期化処理を実行します。

r_{Config_TRX}_interrupt

INTTRX 割り込みに伴う処理を実行します。

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 396 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRX}_Create
インプットキャプチャ機能モードで TRX モジュールを制御する前に必要な初期化処理を実行します。
備考

この API 関数は、R_Systeminit から呼び出されます。

［指定形式］
void

R_{Config_TRX}_Create(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 397 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRX}_Start
TRX のカウンタを起動します。

［指定形式］
void

R_{Config_TRX}_Start(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 398 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRX}_Stop
TRX のカウンタを停止します。

［指定形式］
void

R_{Config_TRX}_Stop(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 399 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRX}_Get_BufferValueTRX のバッファ値を取得します。

［指定形式］
void R_{Config_TRX}_Get_BufferValue(uint32_t * const value);

［引数］
引数

I/O
O

説明
バッファ値

uint32_t * value;

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 400 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRX}_Create_UserInit
TRX に関するユーザ独自の初期化処理を実行します。
備考

この API 関数は、R_{Config_TRX}_Create のコールバック・ルーチンとして呼び出されます。

［指定形式］
void

R_{Config_TRX}_Create_UserInit(void);

備考

n = 0, 1

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 401 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_TRX}_interrupt
INTTRX 割り込みに伴う処理を実行します。
備考

この API 関数は、キャプチャ割り込みの割り込みハンドラ（INTTRX）として呼ばれ、コンパレータ割り込み信号が検出されたとき、または TRX レジスタがオーバーフローの場合に発生します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_TRX}_interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_TRX}_interrupt(void);

IAR ツールチェーンの場合__interrupt static voidr_{Config_TRX}_interrupt(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 402 of 771

スマート・コンフィグレータ.

4. API 関数

使用例
TRX 入力パルス幅を取得する例です。
main.c#include "r_smc_entry.h"volatile uint8_t comp_flag = 0U;
void main(void);void main(void){
EI();
R_Config_TRX_Start();
R_Config_COMP0_Start();// The first interrupt is dummy value, no need to store in trx_buffer
while(comp_flag != 1U);
comp_flag = 0U;
for (char i = 0; i < 10; i++){while(comp_flag != 1U);
R_Config_TRX_Get_BufferValue(trx_buffer + i);
comp_flag = 0U;}
while(1);}Config_COPM0_user.c
extern volatile uint8_t comp_flag;
static void __near r_Config_COMP2_interrupt(void){...
/* Start user code for r_Config_TRX_interrupt. Do not edit comment generated here */comp_flag = 1U;/* End user code. Do not edit comment generated here */}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 403 of 771

スマート・コンフィグレータ.

4.2.304. API 関数

アウトプットコンペア機能（タイマ RD）

以下に、スマート・コンフィグレータがアウトプットコンペア機能用として出力する API 関数の一覧を示します。
表 4.36 アウトプットコンペア機能（タイマ RD）用 API 関数
API 関数名

周辺機能

R_{Config_TRDn}_Create

タイマ RD

機能概要
アウトプットコンペア機能モードで TRDn モジュールを制御する前に必要な初期化処理を実行します。

R_{Config_TRDn}_Start

TRDn のカウンタを起動します。

R_{Config_TRDn}_Stop

TRDn のカウンタを停止します。

R_{Config_TRDn}_Create_UserInit

TRDn に関するユーザ独自の初期化処理を実行します。

r_{Config_TRDn}_trdn_interrupt

INTTRDn 割り込みに伴う処理を実行します。

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 404 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRDn}_Create
アウトプットコンペア機能モードで TRDn モジュールを制御する前に必要な初期化処理を実行します。
備考

この API 関数は、R_TRD_Create から呼び出されます。

［指定形式］
void

R_{Config_TRDn}_Create(void);

備考

n = 0, 1

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 405 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRDn}_Start
TRDn のカウンタを起動します。

［指定形式］
void

R_{Config_TRDn}_Start(void);

備考

n = 0, 1

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 406 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRDn}_Stop
TRDn のカウンタを停止します。

［指定形式］
void

R_{Config_TRDn}_Stop(void);

備考

n = 0, 1

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 407 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRDn}_Create_UserInit
TRDn に関するユーザ独自の初期化処理を実行します。
備考

この API 関数は、R_{Config_TRDn}_Create のコールバック・ルーチンとして呼び出されます。

［指定形式］
void

R_{Config_TRDn}_Create_UserInit(void);

備考

n = 0, 1

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 408 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_TRDn}_trdn_interrupt
INTTRDn 割り込みに伴う処理を実行します。
備考

この API 関数は、カウント・コンペア一致割り込みの割り込みハンドラ（INTTRDn）として呼ばれ、TRDn レジスタの内容が TRDGRjn（j = A, B, C, D）レジスタの内容と一致するか、TRDn レジスタがオーバーフローの場合に発生します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_TRDn}_interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_TRDn}_interrupt(void);

IAR ツールチェーンの場合__interrupt static void
備考

r_{Config_TRDn}_interrupt(void);n = 0, 1

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 409 of 771

スマート・コンフィグレータ.

4. API 関数

使用例
TRD1 を使用して TRDIOj1 端子から任意のレベルを出力する例です。
main.c#include "r_smc_entry.h"
extern uint8_t ch1_run_countvoid main(void);void main(void){
EI();
R_Config_TRD1_Start();while (ch1_run_count < 20);
R_Config_TRD1_Stop();}
Config_TRD1_user.c/* Start user code for global. Do not edit comment generated here */uint8_t ch1_run_count/* End user code. Do not edit comment generated here */static void __near r_Config_TRD1_trd1_interrupt (void){/* Start user code for r_Config_ TRD1_trd1_interrupt. Do not edit comment generated here */ch1_run_count ++;/* End user code. Do not edit comment generated here */}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 410 of 771

スマート・コンフィグレータ.

4.2.31

4. API 関数

アウトプットコンペア機能（タイマ RG）

以下に、スマート・コンフィグレータがアウトプットコンペア機能用として出力する API 関数の一覧を示します。
表 4.37 アウトプットコンペア機能（タイマ RG）用 API 関数
API 関数名

周辺機能
タイマ RG

R_{Config_TRG}_Create

機能概要
アウトプットコンペア機能モードで TRG モジュールを制御する前に必要な初期化処理を実行します。

R_{Config_TRG}_Start

TRG のカウンタを起動します。

R_{Config_TRG}_Stop

TRG のカウンタを停止します。

R_{Config_TRG}_Create_UserInit

TRG に関するユーザ独自の初期化処理を実行します。

r_{Config_TRG}_interrupt

INTTRG 割り込みに伴う処理を実行します。

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 411 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRG}_Create
アウトプットコンペア機能モードで TRG モジュールを制御する前に必要な初期化処理を実行します。
備考

この API 関数は、R_Systeminit から呼び出されます。

［指定形式］
void

R_{Config_TRG}_Create(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 412 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRG}_Start
TRG のカウンタを起動します。

［指定形式］
void

R_{Config_TRG}_Start(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 413 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRG}_Stop
TRG のカウンタを停止します。

［指定形式］
void

R_{Config_TRG}_Stop(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 414 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRG}_Create_UserInit
TRG に関するユーザ独自の初期化処理を実行します。
備考

この API 関数は、R_{Config_TRG}_Create のコールバック・ルーチンとして呼び出されます。

［指定形式］
void

R_{Config_TRG}_Create_UserInit(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 415 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_TRG}_interrupt
INTTRG 割り込みに伴う処理を実行します。
備考

この API 関数は、カウント・コンペア一致割り込みの割り込みハンドラ（INTTRG）として呼ばれ、TRG レジスタの内容が TRGGRj（j = A, B, C, D）レジスタの内容と一致す
るか、TRG レジスタがオーバーフローの場合に発生します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_TRG}_interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_TRG}_interrupt(void);

IAR ツールチェーンの場合__interrupt static voidr_{Config_TRG}_interrupt(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 416 of 771

スマート・コンフィグレータ.

4. API 関数

使用例
TRG を使用して TRGIOj 端子から任意のレベルを出力する例です。
main.c#include "r_smc_entry.h"
extern uint8_t ch1_run_countvoid main(void);void main(void){
EI();
R_Config_TRG_Start();while (ch1_run_count < 20);
R_Config_TRG_Stop();}
Config_TRG_user.c/* Start user code for global. Do not edit comment generated here */uint8_t ch1_run_count/* End user code. Do not edit comment generated here */static void __near r_Config_TRG_interrupt (void){/* Start user code for r_Config_ TRG_interrupt. Do not edit comment generated here */ch1_run_count ++;/* End user code. Do not edit comment generated here */}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 417 of 771

スマート・コンフィグレータ.

4. API 関数

三相 PWM 出力（タイマ RD）

4.2.32

以下に、スマート・コンフィグレータが三相 PWM 出力（リセット同期 PWM モード／相補 PWM モード／拡張相補 PWM モードを使用するタイマ RD）用として出力する API 関数の一覧を示します。
表 4.38 三相 PWM 出力（セット同期 PWM モード／相補 PWM モード／拡張相補 PWM モードを使用するタイマ RD）用 API 関数
API 関数名

周辺機能

R_{Config_TRD0_TRD1}_Create

タイマ RD

機能概要
リセット同期 PWM モード／相補 PWM モード／拡張相
補 PWM モードで TRD0 および TRD2 モジュールを制御する前に必要な初期化処理を実行します。

R_{Config_TRD0_TRD1}_Start

TRD0 および TRD1 のカウンタを起動します。

R_{Config_TRD0_TRD1}_Stop

TRD0 および TRD1 のカウンタを停止します。

R_{Config_TRD0_TRD1}_Set_TRD_Rel

TRD0 および TRD1 バッファレジスタのリロードトリガ

oadTrigger

を生成します。

R_{Config_TRD0_TRD1}_Create_UserI

TRD0_TRD1 に関するユーザ独自の初期化処理を実行

nit

します。

r_{Config_TRD0_TRD1}_trd0_interrupt

INTTRD0 割り込みに伴う処理を実行します。

r_{Config_TRD0_TRD1}_trd1_interrupt

INTTRD1 割り込みに伴う処理を実行します。

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 418 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRD0_TRD1}_Create
リセット同期 PWM モード／相補 PWM モード／拡張相補 PWM モードで TRD0 および TRD2 モジュールを制御する前に必要な初期化処理を実行します。
備考

この API 関数は、R_TRD_Create から呼び出されます。

［指定形式］
void

R_{Config_TRD0_TRD1}_Create(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 419 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRD0_TRD1}_Start
リセット同期 PWM モードで TRD0 カウンタを起動するか、相補 PWM モード／拡張相補 PWM モー
ドモードで TRD0 および TRD1 カウンタを起動します。

［指定形式］
void

R_{Config_TRD0_TRD1}_Start(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 420 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRD0_TRD1}_Stop
リセット同期 PWM モードで TRD0 カウンタを停止するか、相補 PWM モード／拡張相補 PWM モー
ドで TRD0 および TRD1 カウンタを停止します。

［指定形式］
void

R_{Config_TRD0_TRD1}_Stop(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 421 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRD0_TRD1}_Set_TRD_ReloadTrigger
TRD0 および TRD1 バッファレジスタのリロードトリガを生成します。

［指定形式］
MD_STATUS R_{Config_TRD0_TRD1}_Set_TRDn_ReloadTrigger (st_extpwm_buffer_registers_t* buffer);

［引数］
I/O

引数

I

st_extpwm_buffer_registers_t * buffer;

備考

説明

バッファレジスタ値

構造体 st_extpwm_buffer_registers_t を以下に示します。
typedef struct {uint16_t trdgrd0;
uint16_t trdcmpd0;
uint16_t trdgrc1;
uint16_t trdcmpc1;
uint16_t trdgrd1;
uint16_t trdcmpd1;
uint16_t trdadtb0;
uint16_t trdadtb1;} st_extcompwm_buffer_registers_t;

［戻り値］
マクロ

説明

MD_OK

正常終了

MD_ERROR

リロードトリガステータス待ち

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 422 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRD0_TRD1}_Create_UserInit
TRD0_TRD1 に関するユーザ独自の初期化処理を実行します。
備考

この API 関数は、R_{Config_TRD0_TRD1}_Create のコールバック・ルーチンとして呼び出されます。

［指定形式］
void

R_{Config_TRD0_TRD1}_Create_UserInit(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 423 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_TRD0_TRD1}_trd0_interrupt
リセット同期 PWM モード／相補 PWM モードのタイマ TRD0 カウント・コンペア一致割り込み（INTTRD0）に応答して、または拡張相補 PWM モードのデシメーション制御で割り込み要求信号 0（INTTRD0）に応答して処理を実行します。
備考 1

リセット同期 PWM モードの場合、カウント・コンペア一致割り込み（INTTRD0）の割
り込みハンドラとして呼び出され、TRD0 レジスタの内容が TRDGRj0（j = A、B、C、D）
レジスタの内容と一致するか、TRD0 レジスタがオーバーフローの場合に発生します。

備考 2

相補 PWM モードの場合、カウント・コンペア一致割り込み（INTTRD0）の割り込みハ
ンドラとして呼び出され、TRD0 レジスタの内容が TRDGRj0（j = A、B、C、D）レジス
タの内容と一致する場合に発生します。

備考 3

拡張相補 PWM モードの場合、TRD1 レジスタがオーバーフローの場合に発生する割り込み要求信号 0（INTTRD0）の割り込みハンドラとして呼び出されます。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_TRD0_TRD1}_trd0_interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_TRD0_TRD1}_ trd0_interrupt(void);

IAR ツールチェーンの場合__interrupt static voidr_{Config_TRD0_TRD1}_ trd0_interrupt(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 424 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_TRD0_TRD1}_trd1_interrupt
拡張相補 PWM モードでデシメーション制御を使用して、タイマ TRD1 カウント・コンペア一致割り込み（INTTRD1）またはタイマ TRD1 割り込み要求信号 1（TRD1）に応答して処理を実行します。
備考 1

リセット同期 PWM モードの場合、カウント・コンペア一致割り込み（INTTRD1）の割り込みハンドラとして呼び出され、TRD1 レジスタの内容が TRDGRA1 およびTRDGRB1 レジスタの内容と一致する場合に発生します。

備考 2

相補 PWM モードの場合、カウント・コンペア一致割り込み（INTTRD1）の割り込みハ
ンドラとして呼び出され、TRD1 レジスタの内容が TRDGRj0（j = A, B, C, D）レジスタの内容と一致するか、TRD1 レジスタがアンダーフローの場合に発生します。

備考 3

拡張相補 PWM モードの場合、TRD1 レジスタがアンダーフローの場合に発生する割り込み要求信号 1（INTTRD1）の割り込みハンドラとして呼び出されます。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_TRD0_TRD1}_trd1_interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_TRD0_TRD1}_ trd1_interrupt(void);

IAR ツールチェーンの場合__interrupt static voidr_{Config_TRD0_TRD1}_ trd1_interrupt(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 425 of 771

スマート・コンフィグレータ.

4. API 関数

使用例
拡張相補 PWM モードで同じ周期の対称または非対称 PWM 波形の 3 つの順相と 3 つの逆相を出力する例です。
main.c#include "r_smc_entry.h"
extern uint8_t trd_pwm_countvoid main(void);void main(void){
EI();
R_Config_TRD0_TRD1_Start();while (trd_pwm_count < 20);
R_Config_TRD0_TRD1_Stop();}
Config_TRD0_TRD1_user.c/* Start user code for global. Do not edit comment generated here */uint8_t trd_pwm_count/* End user code. Do not edit comment generated here */static void __near r_Config_TRD0_TRD1_trd0_interrupt (void){/* Start user code for r_Config_TRD0_trd0_interrupt. Do not edit comment generated here */trd_pwm_count ++;/* End user code. Do not edit comment generated here */}static void __near r_Config_TRD0_TRD1_trd1_interrupt (void){/* Start user code for r_Config_TRD0_trd1_interrupt. Do not edit comment generated here */trd_pwm_count ++;/* End user code. Do not edit comment generated here */}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 426 of 771

スマート・コンフィグレータ.

4.2.33

4. API 関数

PWM オプション・ユニット A（タイマ RD）

以下に、スマート・コンフィグレータが PWM オプション・ユニット A として出力する API 関数の一覧を示します。
表 4.39 PWM オプション・ユニット A（タイマ RD）用 API 関数
API 関数名

周辺機能

R_{Config_PWMOPA}_Create

タイマ RD

機能概要
PWM オプション・ユニット A を制御する前に必要な初期化処理を実行します。

R_{Config_PWMOPA}_Software_Relea

ソフトウェアにより出力をリリースします。

seR_{Config_PWMOPA}_Create_UserInit

PWM オプション・ユニット A に関するユーザ独自の初期化処理を実行します。

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 427 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_PWMOPA}_Create
PWM オプション・ユニット A を制御する前に必要な初期化処理を実行します。
備考

この API 関数は、R_TRD_Create から呼び出されます。

［指定形式］
void

R_{Config_PWMOPA}_Create(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 428 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_PWMOPA}_Software_Release
ソフトウェアにより出力をリリースします。

［指定形式］
void

R_{Config_PWMOPA}_Software_Release(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 429 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_PWMOPA}_Create_UserInit
PWM オプション・ユニット A に関するユーザ独自の初期化処理を実行します。
備考

この API 関数は、R_{Config_PWMOPA}_Create のコールバック・ルーチンとして呼び出されます。

［指定形式］
void

R_{Config_PWMOPA}_Create_UserInit(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 430 of 771

スマート・コンフィグレータ.

4. API 関数

使用例
タイマ RD 出力端子 TRDIOji（j = A, B, C, D; i = 0, 1）からのパルス出力の例です。ソフトウェア・ト
リガによって強制遮断を解除し、パルス出力を再開します。
main.c#include "r_smc_entry.h"void main(void);void main(void){
EI();
R_Config_PWMOPA_Software_Release();while (1);}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 431 of 771

スマート・コンフィグレータ.

4. API 関数

位相計数モード

4.2.34

以下に、スマート・コンフィグレータが位相計数モード機能用として出力する API 関数の一覧を示します。位相計数モードは、2 本の TRGCLKA, TRGCLKB 端子からの外部入力信号の位相差を検出し、TRG カウンタをアップ／ダウンカウントします。
表 4.40 API 関数
API 関数名

周辺機能

機能概要

タイマ RG

R_{Config_TRG}_Create

インプットキャプチャ機能モードで TRG モジュールを制御する前に必要な初期化処理を実行します。

R_{Config_TRG}_Start

TRG のカウンタを起動します。

R_{Config_TRG}_Stop

TRG のカウンタを停止します。

R_{Config_TRG}_Get_MeasurementCa

TRG 測定キャプチャ値を取得して、TRGCLKA および

pture

TRGCLKB の位相変化時間を計算します。

R_{Config_TRG}_Create_UserInit￥

TRG に関するユーザ独自の初期化処理を実行します。

r_{Config_TRG}_interrupt

INTTRG 割り込みに伴う処理を実行します。

r_{Config_TRG}_clear_interrupt

TRG

カウントコンペアマッチカウンタクリアおよび Z 信号
検出カウンタクリア割り込み (INTGCR)に応じた処理を実行します。

r_{Config_TRG}_capture_interrupt

TRG TRGPMC カウントコンペアマッチ割り込み(INTPMC)に伴う処理を実行します。

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 432 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRG}_Create
インプットキャプチャ機能モードで TRG モジュールを制御する前に必要な初期化処理を実行します。
備考

この API 関数は、R_Systeminit から呼び出されます。

［指定形式］
void

R_{Config_TRG}_Create(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 433 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRG}_Start
TRG のカウンタを起動します。

［指定形式］
void

R_{Config_TRG}_Start(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 434 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRG}_Stop
TRG のカウンタを停止します。

［指定形式］
void

R_{Config_TRG}_Stop(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 435 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRG}_Get_MeasurementCapture
TRG 測定キャプチャ値を取得して、TRGCLKA および TRGCLKB の位相変化時間を計算します。

［指定形式］
void R_{Config_TRG}_Get_MeasurementCapture(uint16_t * const capture_value);

［引数］
引数

I/O
O

uint16_t * const capture_value;

説明
測定キャプチャ値［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 436 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_TRG}_Create_UserInit
TRG に関するユーザ独自の初期化処理を実行します。
備考

この API 関数は、R_{Config_TRG}_Create のコールバック・ルーチンとして呼び出されます。

［指定形式］
void

R_{Config_TRG}_Create_UserInit(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 437 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_TRG}_interrupt
INTTRG 割り込みに伴う処理を実行します。
備考

この API 関数は、カウントコンペアマッチ割り込みの割り込みハンドラ（INTTRG）として呼ばれ、TRG レジスタの内容と TRGGRh (h = A、B、C、D) レジスタの内容が一致した場合、または TRG レジスタがオーバーフローの場合に発生します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_TRG}_interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_TRG}_interrupt(void);

IAR ツールチェーンの場合__interrupt static voidr_{Config_TRG}_interrupt(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 438 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_TRG}_clear_interrupt
TRG カウントコンペアマッチカウンタクリアおよび Z 信号検出カウンタクリア割り込み (INTGCR)に応じた処理を実行します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_TRG}_clear_interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_TRG}_clear_interrupt(void);

IAR ツールチェーンの場合__interrupt static voidr_{Config_TRG}_clear_interrupt(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 439 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_TRG}_capture_interrupt
TRG TRGPMC カウントコンペアマッチ割り込み (INTPMC)に伴う処理を実行します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_TRG}_capture_interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_TRG}_capture_interrupt(void);

IAR ツールチェーンの場合__interrupt static voidr_{Config_TRG}_capture_interrupt(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 440 of 771

スマート・コンフィグレータ.

4. API 関数

使用例
TRGGRA コンペアマッチによる位相計数モードのクリアの例です。
main.c#include "r_cg_macrodriver.h"#include "Config_TAU0_0.h"#include "Config_TAU0_3.h"#include "Config_TRG.h"
extern uint8_t count;
void main(void);void main(void){
EI();//support external signal input to the TRGCLKA
R_Config_TAU0_0_Start();//support external signal input to the TRGCLKB
R_Config_TAU0_3_Start();
R_Config_TRG_Start();while (count > 0U);
R_Config_TRG_Stop();}
Config_TRG_user.c/* Start user code for global. Do not edit comment generated here */uint8_t count = 0U;/* End user code. Do not edit comment generated here */static void __near r_Config_TRG_interrupt (void){/* Start user code for r_Config_TRG_interrupt. Do not edit comment generated here */count ++;/* End user code. Do not edit comment generated here */}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 441 of 771

スマート・コンフィグレータ.

4.2.35

4. API 関数

クロック出力／ブザー出力制御回路

以下に、スマート・コンフィグレータがクロック出力／ブザー出力制御回路用として出力する API 関数の一覧を示します。
表 4.41 クロック出力／ブザー出力制御回路用 API 関数
API 関数名
R_{Config_PCLBUZn}_Create

周辺機能

機能概要

クロック出力／ブ

PCLBUZn モジュールを制御する前に必要な初期化処理

ザー出力制御回路を実行します。

R_{Config_PCLBUZn}_StartPCLBUZn モジュールを起動します。

R_{Config_PCLBUZn}_Stop

PCLBUZn モジュールを停止します。

R_{Config_PCLBUZn}_Create_UserInit

PCLBUZ に関するユーザ独自の初期化処理を実行します。

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 442 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_PCLBUZn}_Create
PCLBUZn モジュールを制御する前に必要な初期化処理を実行します。
備考

この API 関数は、main()関数を実行する前に、R_Systeminit から呼び出されます。

［指定形式］
void

R_{Config_PCLBUZn}_Create(void);

備考

n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 443 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_PCLBUZn}_StartPCLBUZn を起動します。

［指定形式］
void

R_{Config_PCLBUZn}_Start(void);

備考

n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 444 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_PCLBUZn}_Stop
PCLBUZn を停止します。

［指定形式］
void

R_{Config_PCLBUZn}_Stop(void);

備考

n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 445 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_PCLBUZn}_Create_UserInit
PCLBUZ に関するユーザ独自の初期化処理を実行します。
備考

この API 関数は、R_{Config_PCLBUZn}_Create のコールバック・ルーチンとして呼び出されます。

［指定形式］
void

R_{Config_PCLBUZn}_Create_UserInit(void);

備考

n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 446 of 771

スマート・コンフィグレータ.

4. API 関数

使用例
PCLBUZ0 を使用する例です。
main.c#include "r_smc_entry.h"void main(void);void main(void){
EI();
R_Config_PCLBUZ0_Start();}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 447 of 771

スマート・コンフィグレータ.

4.2.36

4. API 関数

リアルタイム・クロック

以下に、スマート・コンフィグレータがリアルタイム・クロック用として出力する API 関数の一覧を示します。
表 4.42 リアルタイム・クロック用 API 関数
API 関数名
R_{Config_RTC}_Create

周辺機能

機能概要

リアルタイム・ク

リアルタイム・クロック・モジュールを制御する前にロック必要な初期化処理を実行します。

R_{Config_RTC}_Start

リアルタイム・クロックを許可します。

R_{Config_RTC}_Stop

リアルタイム・クロックを禁止します。

R_{Config_RTC}_Set_HourSystem

クロックの時間制（12 時間制、24 時間制）を選択します。

R_{Config_RTC}_Set_CounterValue

リアルタイム・クロック値を変更します。

R_{Config_RTC}_Get_CounterValue

現在のリアルタイム・クロックの値を読み出し、変数に格納します。

R_{Config_RTC}_Set_ConstPeriodInterr

定周期割り込みを許可します。

uptOn
R_{Config_RTC}_Set_ConstPeriodInterr

定周期割り込みを禁止します。

uptOffR_{Config_RTC}_Set_AlarmOn

アラーム動作を開始します。

R_{Config_RTC}_Set_AlarmOff

アラーム動作を終了します。

R_{Config_RTC}_Set_AlarmValue

アラーム値を設定します。

R_{Config_RTC}_Get_AlarmValue

アラーム値を取得します。

R_{Config_RTC}_Set_RTC1HZOn

RTC1HZ 出力を許可します。

R_{Config_RTC}_Set_RTC1HZOff

RTC1HZ 出力を禁止します。

R_{Config_RTC}_Create_UserInit

リアルタイム・クロックに関するユーザ独自の初期化処理を実行します。

r_{Config_RTC}_interrupt

INTRTC 割り込みに伴う処理を実行します。

r_{Config_RTC}_callback_constperiod

INTRTC 定周期割り込みに伴う処理を実行します。

r_{Config_RTC}_callback_alarm

INTRTC アラーム割り込みに伴う処理を実行します。

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 448 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_RTC}_Create
リアルタイム・クロック・モジュールを制御する前に必要な初期化処理を実行します。
備考

この API 関数は、main()関数を実行する前に、R_Systeminit から呼び出されます。

［指定形式］
void

R_{Config_RTC}_Create(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 449 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_RTC}_Start
リアルタイム・クロックを許可します。

［指定形式］
void

R_{Config_RTC}_Start(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 450 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_RTC}_Stop
リアルタイム・クロックを禁止します。

［指定形式］
void

R_{Config_RTC}_Stop(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 451 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_RTC}_Set_HourSystem
クロックの時間制（12 時間制、24 時間制）を選択します。

［指定形式］
MD_STATUS

R_{Config_RTC}_Set_HourSystem(e_rtc_hour_system_t hour_system);

［引数］
引数

I/O
I

e_rtc_hour_system_t hour_system;

説明
時間制の種類HOUR12：12 時間制
HOUR24：24 時間制

備考

以下に、構造体 e_rtc_hour_system_t（時間制）を示します。
typedef enum{
HOUR12,
HOUR24} e_rtc_hour_system_t;

［戻り値］
マクロ

説明

MD_OK

正常終了

MD_BUSY1

ビジー1

MD_BUSY2

ビジー2

MD_ARGERROR

引数の指定が不正

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 452 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_RTC}_Set_CounterValue
リアルタイム・クロック値を変更します。

［指定形式］
MD_STATUS

R_{Config_RTC}_Set_CounterValue(st_rtc_counter_value_t counter_write_val);

［引数］
I/O

引数

I

st_rtc_counter_value_t counter_write_val;

備考

説明
カウント値（BCD 値）

以下に、構造体 st_rtc_counter_value_t（カウンタ条件）を示します。
typedef struct{
uint8_t sec;
uint8_t min;uint8_t hour;
uint8_t day;uint8_t week;
uint8_t month;uint8_t year;} st_rtc_counter_value_t;

［戻り値］
マクロ

説明

MD_OK

正常終了

MD_BUSY1

ビジー1

MD_BUSY2

ビジー2

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 453 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_RTC}_Get_CounterValue
現在のリアルタイム・クロックの値を読み出し、変数に格納します。

［指定形式］
MD_STATUS R_{Config_RTC}_Get_CounterValue(st_rtc_counter_value_t * const
counter_read_val);

［引数］
引数

I/O
I

st_rtc_counter_value_t * const

説明
現在のリアルタイム・クロックの値（BCD 値）

counter_read_val;

備考

構造体 st_rtc_counter_value_t については、R_{Config_RTC}_Set_CounterValue を参照
してください。

［戻り値］
マクロ

説明

MD_OK

正常終了

MD_BUSY1

ビジー1

MD_BUSY2

ビジー2

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 454 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_RTC}_Set_ConstPeriodInterruptOn
定周期割り込みを許可します。

［指定形式］
MD_STATUS

R_{Config_RTC}_Set_ConstPeriodInterruptOn(e_rtc_int_period_t period);

［引数］
引数

I/O
I

e_rtc_int_period_t period;

備考

説明
INTRTC の定周期

以下に、構造体 e_rtc_int_period_t period（周期条件）を示します。
typedef enum{
HALFSEC = 1U,
ONESEC,ONEMIN,ONEHOUR,
ONEDAY,ONEMONTH} e_rtc_int_period_t;

［戻り値］
マクロ

説明

MD_OK

正常終了

MD_ARGERROR

引数の指定が不正

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 455 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_RTC}_Set_ConstPeriodInterruptOff
定周期割り込みを禁止します。

［指定形式］
void

R_{Config_RTC}_Set_ConstPeriodInterruptOff(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 456 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_RTC}_Set_AlarmOn
アラーム動作を開始します。

［指定形式］
void

R_{Config_RTC}_Set_AlarmOn(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 457 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_RTC}_Set_AlarmOff
アラーム動作を終了します。

［指定形式］
void

R_{Config_RTC}_Set_AlarmOff(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 458 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_RTC}_Set_AlarmValue
アラーム値を設定します。

［指定形式］
void

R_{Config_RTC}_Set_AlarmValue(st_rtc_alarm_value_t alarm_val);

［引数］
引数

I/O
I

st_rtc_alarm_value_t alarm_val;

備考

説明
アラームの発生条件（曜日，時，分）（BCD 値）

以下に、構造体 st_rtc_alarm_value_t alarm_val（アラーム条件）を示します。
typedef struct{
uint8_t alarmwm;
uint8_t alarmwh;
uint8_t alarmww;} st_rtc_alarm_value_t;

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 459 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_RTC}_Get_AlarmValue
アラーム値を取得します。

［指定形式］
void

R_{Config_RTC}_Get_AlarmValue (st_rtc_alarm_value_t * const alarm_val);

［引数］
I/O

引数

O

st_rtc_alarm_value_t * const alarm_val;

備考

説明
取得したアラーム値（BCD 値）を格納するアドレス

構造体 st_rtc_alarm_value_t * const alarm_val については、
R_{Config_RTC}_Set_AlarmValue を参照してください。

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 460 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_RTC}_Set_RTC1HZOn
RTC1HZ 出力を許可します。

［指定形式］
void

R_{Config_RTC}_Set_RTC1HZOn(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 461 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_RTC}_Set_RTC1HZOff
RTC1HZ 出力を禁止します。

［指定形式］
void

R_{Config_RTC}_Set_RTC1HZOff(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 462 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_RTC}_Create_UserInit
リアルタイム・クロックに関するユーザ独自の初期化処理を実行します。
備考

この API 関数は、R_{Config_RTC}_Create のコールバック・ルーチンとして呼び出されます。

［指定形式］
void

R_{Config_RTC}_Create_UserInit(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 463 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_RTC}_interrupt
INTRTC 割り込みに伴う処理を実行します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_RTC}_interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_RTC}_interrupt(void);

IAR ツールチェーンの場合__interrupt static voidr_{Config_RTC}_interrupt(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 464 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_RTC}_callback_constperiod
INTRTC 定周期割り込みに伴う処理を実行します。
備考

この API 関数は、定周期割り込みに伴う処理 r_{Config_RTC}_interrupt のコールバッ
ク・ルーチンとして呼び出されます。

［指定形式］
static voidr_{Config_RTC}_callback_constperiod(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 465 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_RTC}_callback_alarm
INTRTC アラーム割り込みに伴う処理を実行します。
備考

この API 関数は、アラーム割り込みに伴う処理 r_{Config_RTC}_interrupt のコールバッ
ク・ルーチンとして呼び出されます。

［指定形式］
static voidr_{Config_RTC}_callback_alarm(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 466 of 771

スマート・コンフィグレータ.

4. API 関数

使用例 1
アラーム割り込みを使用して、うるう秒補正を実行する例です（スケジュールされた日の 23:59:59 から 23:59:58 に時計を戻す）
main.c#include "r_smc_entry.h"void main(void);void main(void){
EI();

R_Config_RTC_Set_AlarmOn();
R_ Config_RTC_Start();}Config_RTC_user.c/* Start user code for global. Do not edit comment generated here */volatile st_rtc_counter_value_t counter_val;/* End user code. Do not edit comment generated here */static void r_Config_RTC_callback_alarm(void){/* Start user code for r_Config_RTC_callback_alarm. Do not edit comment generated here */R_Config_RTC_Get_CounterValue ((st_rtc_counter_value_t *)&counter_val);/* Change the seconds */counter_val.rseccnt = 0x58U;
R_Config_RTC_Set_CounterValue (counter_val);/* End user code. Do not edit comment generated here */}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 467 of 771

スマート・コンフィグレータ.

4. API 関数

使用例 2
定周期割り込みを使用して、1 時間ごとに割り込みを生成するように実装する例です。
main.c#include "r_smc_entry.h"
st_rtc_counter_value_t currTime;
st_rtc_alarm_value_t alarm;
void main(void);void main(void){
EI();
R_Config_RTC_Set_ConstPeriodInterruptOn(ONEHOUR);
R_ Config_RTC_Start();}Config_RTC_user.c/* Start user code for global. Do not edit comment generated here */st_rtc_counter_value_t currTime;
st_rtc_alarm_value_t alarm;/* End user code. Do not edit comment generated here */static void r_Config_RTC_callback_constperiod (void){/* Start user code for r_Config_RTC_callback_constperiod. Do not edit comment generated here */R_Config_RTC_Get_CounterValue(&currTime);
R_Config_RTC_Get_AlarmValue(&alarm);
alarm.alarmww = currTime.week;
alarm.alarmwh = currTime.hour;alarm.alarmwm = currTime.min + 5;
R_Config_RTC_Set_AlarmValue(alarm);
R_Config_RTC_Set_AlarmOn();/* End user code. Do not edit comment generated here */}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 468 of 771

スマート・コンフィグレータ.

4.2.37

4. API 関数

A/D コンバータ

以下に、スマート・コンフィグレータが A/D コンバータ用として出力する API 関数の一覧を示します。
表 4.43 A/D コンバータ用 API 関数
API 関数名
R_{Config_ADC}_Create

周辺機能

機能概要

A/D コンバータ

ADC モジュールを制御する前に必要な初期化処理を実行します。

R_{Config_ADC}_Start

A/D コンバータを起動します。

R_{Config_ADC}_Stop

A/D コンバータを停止します。

R_{Config_ADC}_Set_OperationOn

A/D 電圧コンパレータの動作を許可します。

R_{Config_ADC}_Set_OperationOff

A/D 電圧コンパレータの動作を禁止します。

R_{Config_ADC}_Set_ADChannel

アナログ入力チャネルを選択します。

R_{Config_ADC}_ADSn_Set_ADChann

アナログ入力チャンネルを選択します。（「AD アドバ

el

ンスド・モード」選択時のみ）

R_{Config_ADC}_Set_SnoozeOn

A/D ウエイクアップ機能を許可します。

R_{Config_ADC}_Set_SnoozeOff

A/D ウエイクアップ機能を禁止します。

R_{Config_ADC}_Set_TestChannel

テスト機能を設定します。

R_{Config_ADC}_Get_Result_10bit

バッファ内の上位 10 ビットの変換結果を返します。

R_{Config_ADC}_Get_Result_8bit

バッファ内の上位 8 ビットの変換結果を返します。

R_{Config_ADC}_Get_Result_12bit

バッファ内の上位 12 ビットの変換結果を返します。

R_{Config_ADC}_ADSn_Get_Result_10

バッファ内の上位 10 ビットの変換結果を返します。

bit（「AD アドバンスド・モード」選択時のみ）

R_{Config_ADC}_ADSn_Get_Result_8b

バッファ内の上位 8 ビットの変換結果を返します。

it（「AD アドバンスド・モード」選択時のみ）

R_{Config_ADC}_ADSn_Get_Result_12

バッファ内の上位 12 ビットの変換結果を返します。

bit（「AD アドバンスド・モード」選択時のみ）

R_{Config_ADC}_Create_UserInit

A/D コンバータに関するユーザ独自の初期化処理を実行します。

r_{Config_ADC}_interrupt

INTAD 割り込みに伴う処理を実行します。

r_{Config_ADC}_adn_interrupt

INTAD 割り込みに伴う処理を実行します。（「AD アド
バンスド・モード」選択時のみ）

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 469 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_ADC}_Create
ADC モジュールを制御する前に必要な初期化処理を実行します。
備考

この API 関数は、main()関数を実行する前に、R_Systeminit から呼び出されます。

［指定形式］
void

R_{Config_ADC}_Create(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 470 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_ADC}_Start
A/D コンバータを起動します。

［指定形式］
void

R_{Config_ADC}_Start(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 471 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_ADC}_Stop
A/D コンバータを停止します。

［指定形式］
void

R_{Config_ADC}_Stop(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 472 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_ADC}_Set_OperationOn
A/D 電圧コンパレータの動作を許可します。

［指定形式］
void

R_{Config_ADC}_Set_OperationOn(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 473 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_ADC}_Set_OperationOff
A/D 電圧コンパレータの動作を禁止します。

［指定形式］
void

R_{Config_ADC}_Set_OperationOff(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 474 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_ADC}_Set_ADChannel
アナログ入力チャネルを選択します。

［指定形式］
MD_STATUS

R_{Config_ADC}_Set_ADChannel(e_ad_channel_t channel);

［引数］
引数

I/O
I

e_ad_channel_t channel;

備考

説明
アナログ入力チャネル

以下に、構造体 e_ad_channel_t channel（チャネル条件）を示します。
typedef enum{
ADCHANNEL0, ADCHANNEL1, ADCHANNEL2, ADCHANNEL3, ADCHANNEL4,ADCHANNEL5, ADCHANNEL6, ADCHANNEL7, ADCHANNEL8, ADCHANNEL9,ADCHANNEL10, ADCHANNEL11, ADCHANNEL12, ADCHANNEL13,ADCHANNEL14, ADCHANNEL16 = 16U, ADCHANNEL17, ADCHANNEL18,ADCHANNEL19, ADCHANNEL20, ADCHANNEL21, ADCHANNEL22,ADCHANNEL23, ADCHANNEL24, ADCHANNEL25, ADCHANNEL26,
ADTEMPERSENSOR0 = 128U, ADINTERREFVOLT} e_ad_channel_t;

［戻り値］
マクロ

説明

MD_OK

正常終了

MD_ARGERROR

引数の指定が不正

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 475 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_ADC}_ADSn_Set_ADChannel
アナログ入力チャンネルを選択します。
（「AD アドバンスド・モード」選択時のみ）［指定形式］
MD_STATUS

R_{Config_ADC}_ADSn_Set_ADChannel(e_ad_channel_t channel);

［引数］
引数

I/O
I

e_ad_channel_t channel;

備考

説明
アナログ入力チャネル

以下に、構造体 e_ad_channel_t channel（チャネル条件）を示します。
typedef enum{
ADCHANNEL0, ADCHANNEL1, ADCHANNEL2, ADCHANNEL3, ADCHANNEL4,ADCHANNEL5, ADCHANNEL6, ADCHANNEL7, ADCHANNEL8, ADCHANNEL9,ADCHANNEL10, ADCHANNEL11, ADCHANNEL12, ADCHANNEL13,ADCHANNEL14, ADCHANNEL16 = 16U, ADCHANNEL17, ADCHANNEL18,ADCHANNEL19, ADCHANNEL20, ADCHANNEL21, ADCHANNEL22,ADCHANNEL23, ADCHANNEL24, ADCHANNEL25, ADCHANNEL26,
ADTEMPERSENSOR0 = 128U, ADINTERREFVOLT} e_ad_channel_t;

［戻り値］
マクロ

説明

MD_OK

正常終了

MD_ARGERROR

引数の指定が不正

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 476 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_ADC}_Set_SnoozeOn
A/D ウエイクアップ機能を許可します。

［指定形式］
void

R_{Config_ADC}_Set_SnoozeOn(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 477 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_ADC}_Set_SnoozeOff
A/D ウエイクアップ機能を禁止します。

［指定形式］
void

R_{Config_ADC}_Set_SnoozeOn(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 478 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_ADC}_Set_TestChannel
テスト機能を設定します。

［指定形式］
MD_STATUS

R_{Config_ADC}_Set_TestChannel(e_test_channel_t channel);

［引数］
引数

I/O
I

e_test_channel_t channel;

備考

説明
テストチャネル設定

以下に、構造体 e_test_channel_t channel（入力チャネル条件）を示します。
typedef enum{
ADNORMALINPUT,ADAVREFM = 2U,
ADAVREFP} e_test_channel_t;

［戻り値］
マクロ

説明

MD_OK

正常終了

MD_ARGERROR

引数の指定が不正

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 479 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_ADC}_Get_Result_10bit
バッファ内の上位 10 ビットの変換結果を返します。

［指定形式］
void

R_{Config_ADC}_Get_Result_10bit(uint16_t * const buffer);

［引数］
I/O

引数

I

uint16_t * const buffer;

説明
変換結果を格納するアドレス

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 480 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_ADC}_Get_Result_8bit
バッファ内の上位 8 ビットの変換結果を返します。

［指定形式］
void

R_{Config_ADC}_Get_Result_8bit(uint8_t * const buffer);

［引数］
引数

I/O
I

uint8_t * const buffer;

説明
変換結果を格納するアドレス

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 481 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_ADC}_Get_Result_12bit
バッファ内の上位 12 ビットの変換結果を返します。

［指定形式］
void

R_{Config_ADC}_Get_Result_12bit(uint16_t * const buffer);

［引数］
I/O

引数

I

uint16_t * const buffer;

説明
変換結果を格納するアドレス

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 482 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_ADC}_ADSn_Get_Result_10bit
バッファ内の上位 10 ビットの変換結果を返します。
（「AD アドバンスド・モード」選択時のみ）［指定形式］
void

R_{Config_ADC}_ADSn_Get_Result_10bit(uint16_t * const buffer);

［引数］
I/O

引数

I

uint16_t * const buffer;

説明
変換結果を格納するアドレス

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 483 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_ADC}_ADSn_Get_Result_8bit
バッファ内の上位 8 ビットの変換結果を返します。
（「AD アドバンスド・モード」選択時のみ）［指定形式］
void

R_{Config_ADC}_ADSn_Get_Result_8bit(uint8_t * const buffer);

［引数］
引数

I/O
I

uint8_t * const buffer;

説明
変換結果を格納するアドレス

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 484 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_ADC}_ADSn_Get_Result_12bit
バッファ内の上位 12 ビットの変換結果を返します。
（「AD アドバンスド・モード」選択時のみ）［指定形式］
void

R_{Config_ADC}_ASDn_Get_Result_12bit(uint16_t * const buffer);

［引数］
I/O

引数

I

uint16_t * const buffer;

説明
変換結果を格納するアドレス

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 485 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_ADC}_Create_UserInit
A/D コンバータに関するユーザ独自の初期化処理を実行します。
備考

この API 関数は、R_{Config_ADC}_Create のコールバック・ルーチンとして呼び出されます。

［指定形式］
void

R_{Config_ADC}_Create_UserInit(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 486 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_ADC}_interrupt
INTAD 割り込みに伴う処理を実行します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_ADC}_interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_ADC}_interrupt(void);

IAR ツールチェーンの場合__interrupt static voidr_{Config_ADC}_interrupt(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 487 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_ADC}_adn_interrupt
INTAD 割り込みに伴う処理を実行します。（「AD アドバンスド・モード」選択時のみ）［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_ADC}_adn_interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_ADC}_adn_interrupt(void);

IAR ツールチェーンの場合__interrupt static voidr_{Config_ADC}_adn_interrupt(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 488 of 771

スマート・コンフィグレータ.

4. API 関数

使用例
A/D 変換の 8 ビット結果を取得する例です。
main.c#include "r_smc_entry.h"#define LIM_COMPA_MASK 0xFF
uint8_t adc_data[1] = {0};extern uint8_t adc_Interrupt_flag;
void main(void);void main(void){
EI();
adc_Interrupt_flag = 0U;/* Start comparator 0 */R_Config_ADC_Set_OperationOn();
R_Config_ADC_Start ();while(adc_Interrupt_flag != 1U);
comp1_trig_flag = 0U;
R_Config_ADC_Get_Result_8bit(adc_data);
R_Config_ADC_Stop ();R_Config_ADC_Set_OperationOff();}
Config_ADC_user.c/* Start user code for global. Do not edit comment generated here */uint8_t adc_Interrupt_flag;/* End user code. Do not edit comment generated here */static void __near r_Config_COMP0_interrupt(void){/* Start user code for r_Config_COMP0_interrupt. Do not edit comment generated here *//* Set the flag */adc_Interrupt_flag = 1U;/* End user code. Do not edit comment generated here */}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 489 of 771

スマート・コンフィグレータ.

4.2.384. API 関数

12 ビット A/D シングル・スキャン

以下に、スマート・コンフィグレータが 12 ビット A/D シングル・スキャン用として出力する API 関数の一覧を示します。
表 4.44 12 ビット A/D シングル・スキャン用 API 関数
API 関数名
R_{Config_S12ADn}_Create

周辺機能

機能概要

12 ビット A/D コン

12 ビット A/D コンバータ・モジュールを制御する前にバータ必要な初期化処理を実行します。

R_{Config_S12ADn}_Start

12 ビット A/D コンバータを起動します。

R_{Config_S12ADn}_Stop

12 ビット A/D コンバータを停止します。

R_{Config_S12ADn}_Get_Result_12bit

バッファに 12 ビットの変換結果を返します。

R_{Config_S12ADn}_Create_UserInit

12 ビット A/D コンバータに関するユーザ独自の初期化処理を実行します。

r_{Config_S12ADn}_interrupt

R20UT4852JJ0105
2024.07.22

Rev.1.05

INTAD 割り込みに伴う処理を実行します。

Page 490 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_S12ADn}_Create
12 ビット A/D コンバータ・モジュールを制御する前に必要な初期化処理を実行します。
備考

この API 関数は、main()関数を実行する前に、R_Systeminit から呼び出されます。

［指定形式］
void

R_{Config_S12ADn}_Create(void);

備考

n=0

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 491 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_S12ADn}_Start
12 ビット A/D コンバータを起動します。

［指定形式］
void

R_{Config_S12ADn}_Start(void);

備考

n=0

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 492 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_S12ADn}_Stop
12 ビット A/D コンバータを停止します。

［指定形式］
void

R_{Config_S12ADn}_Stop(void);

備考

n=0

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 493 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_S12ADn}_Get_ValueResult
バッファに 12 ビットの変換結果を返します。

［指定形式］
void

R_{Config_S12ADn}_Get_ValueResult (e_ad_channel_t channel, uint16_t * const buffer);

備考

n=0

［引数］
引数

I/O

説明

I

e_ad_channel_t channel;

読み取るデータレジスタのチャネル

I

uint16_t * const buffer;

変換結果を格納するアドレス

備考

以下に、構造 e_ad_channel_t チャネル（チャネル条件）を示します。
typedef enum{
ADCHANNEL0, ADCHANNEL1, ADCHANNEL2, ADCHANNEL3, ADCHANNEL4,ADCHANNEL5, ADCHANNEL6, ADCHANNEL7, ADCHANNEL8, ADCHANNEL9,ADCHANNEL10, ADCHANNEL11, ADCHANNEL12, ADCHANNEL13, ADCHANNEL14,ADCHANNEL15, ADCHANNEL16, ADCHANNEL17, ADCHANNEL18, ADCHANNEL19,ADCHANNEL20, ADCHANNEL21, ADCHANNEL22, ADCHANNEL23, ADCHANNEL24,ADCHANNEL25, ADCHANNEL26, ADCHANNEL27, ADCHANNEL28, ADCHANNEL29,ADCHANNEL30, ADINTERREFVOLT, ADSELFDIAGNOSIS} e_ad_channel_t;

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 494 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_S12ADn}_Create_UserInit
12 ビット A/D コンバータに関するユーザ独自の初期化処理を実行します。
備考

この API 関数は、R_{Config_S12ADn}_Create のコールバック・ルーチンとして呼び出されます。

［指定形式］
void

R_{Config_S12ADn}_Create_UserInit(void);

備考

n=0

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 495 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_S12ADn}_interrupt
INTAD 割り込みに伴う処理を実行します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_S12ADn}_interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_S12ADn}_interrupt(void);

IAR ツールチェーンの場合__interrupt static void
備考

r_{Config_S12ADn}_interrupt(void);

n=0

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 496 of 771

スマート・コンフィグレータ.

4. API 関数

使用例
シングルスキャンモードの 12 ビット A/D 変換結果を取得する例です。
main.c#include "r_smc_entry.h"void main(void);
extern volatile uint8_t interrupt_flag;
uint16_t AD_buffer_0 = 0;
uint16_t AD_buffer_30 = 0;
void main(void){
EI();
interrupt_flag = 0;
R_Config_S12AD0_Start();while( interrupt_flag != 1 );R_Config_S12AD0_Get_ValueResult (ADCHANNEL0, &AD_buffer_0);
R_Config_S12AD0_Get_ValueResult (ADCHANNEL30, &AD_buffer_30);
interrupt_flag = 2;
while(1);}Config_ADC_user.c/* Start user code for global. Do not edit comment generated here */volatile uint8_t interrupt_flag;/* End user code. Do not edit comment generated here */static void __near r_Config_S12AD0_interrupt(void){/* Start user code for r_Config_S12AD0_interrupt. Do not edit comment generated here */interrupt_flag = 1;/* End user code. Do not edit comment generated here */}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 497 of 771

スマート・コンフィグレータ.

4.2.394. API 関数

12 ビット A/D 連続スキャン

以下に、スマート・コンフィグレータが 12 ビット A/D 連続スキャン用として出力する API 関数の一覧を示します。
表 4.45 12 ビット A/D 連続スキャン用 API 関数
API 関数名
R_{Config_S12ADn}_Create

周辺機能

機能概要

12 ビット A/D コン

12 ビット A/D コンバータ・モジュールを制御する前にバータ必要な初期化処理を実行します。

R_{Config_S12ADn}_Start

12 ビット A/D コンバータを起動します。

R_{Config_S12ADn}_Stop

12 ビット A/D コンバータを停止します。

R_{Config_S12ADn}_Get_ValueResult

バッファに 12 ビットの変換結果を返します。

R_{Config_S12ADn}_Create_UserInit

12 ビット A/D コンバータに関するユーザ独自の初期化処理を実行します。

r_{Config_S12ADn}_interrupt

R20UT4852JJ0105
2024.07.22

Rev.1.05

INTAD 割り込みに伴う処理を実行します。

Page 498 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_S12ADn}_Create
12 ビット A/D コンバータ・モジュールを制御する前に必要な初期化処理を実行します。
備考

この API 関数は、main()関数を実行する前に、R_Systeminit から呼び出されます。

［指定形式］
void

R_{Config_S12ADn}_Create(void);

備考

n=0

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 499 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_S12ADn}_Start
12 ビット A/D コンバータを起動します。

［指定形式］
void

R_{Config_S12ADn}_Start(void);

備考

n=0

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 500 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_S12ADn}_Stop
12 ビット A/D コンバータを停止します。

［指定形式］
void

R_{Config_S12ADn}_Stop(void);

備考

n=0

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 501 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_S12ADn}_Get_ValueResult
バッファに 12 ビットの変換結果を返します。

［指定形式］
void

R_{Config_S12ADn}_Get_ValueResult (e_ad_channel_t channel, uint16_t * const buffer);

備考

n=0

［引数］
引数

I/O

説明

I

e_ad_channel_t channel;

読み取るデータレジスタのチャネル

I

uint16_t * const buffer;

変換結果を格納するアドレス

備考

以下に、構造 e_ad_channel_t チャネル（チャネル条件）を示します。
typedef enum{
ADCHANNEL0, ADCHANNEL1, ADCHANNEL2, ADCHANNEL3, ADCHANNEL4,ADCHANNEL5, ADCHANNEL6, ADCHANNEL7, ADCHANNEL8, ADCHANNEL9,ADCHANNEL10, ADCHANNEL11, ADCHANNEL12, ADCHANNEL13, ADCHANNEL14,ADCHANNEL15, ADCHANNEL16, ADCHANNEL17, ADCHANNEL18, ADCHANNEL19,ADCHANNEL20, ADCHANNEL21, ADCHANNEL22, ADCHANNEL23, ADCHANNEL24,ADCHANNEL25, ADCHANNEL26, ADCHANNEL27, ADCHANNEL28, ADCHANNEL29,ADCHANNEL30, ADSELFDIAGNOSIS} e_ad_channel_t;

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 502 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_S12ADn}_Create_UserInit
12 ビット A/D コンバータに関するユーザ独自の初期化処理を実行します。
備考

この API 関数は、R_{Config_S12ADn}_Create のコールバック・ルーチンとして呼び出されます。

［指定形式］
void

R_{Config_S12ADn}_Create_UserInit(void);

備考

n=0

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 503 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_S12ADn}_interrupt
INTAD 割り込みに伴う処理を実行します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_S12ADn}_interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_S12ADn}_interrupt(void);

IAR ツールチェーンの場合__interrupt static void
備考

r_{Config_S12ADn}_interrupt(void);

n=0

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 504 of 771

スマート・コンフィグレータ.

4. API 関数

使用例
ソフトウェア・トリガ入力による連続スキャン・モードの 12 ビット A/D 変換結果を取得する例です。
main.c#include "r_smc_entry.h"void main(void);
extern volatile uint8_t interrupt_flag;
uint16_t AD_buffer_3 = 0;
uint16_t AD_buffer_28 = 0;
uint8_t continues_num = 0;
void main(void){
EI();
interrupt_flag = 0;
continues_num = 0;
R_Config_S12AD0_Start();
R_Config_TAU0_0_Start();
R_Config_TAU0_0_Set_SoftwareTriggerOn();
while( 1 ){if( interrupt_flag == 1 ){interrupt_flag = 0;
continues_num ++;R_Config_S12AD0_Get_ValueResult (ADCHANNEL3, &AD_buffer_3);
R_Config_S12AD0_Get_ValueResult (ADCHANNEL28, &AD_buffer_28);
if( continues_num >=3 ){R_Config_S12AD0_Stop();break;}}};
interrupt_flag = 2;
while(1);}Config_S12AD0_user.c/* Start user code for global. Do not edit comment generated here */volatile uint8_t interrupt_flag;/* End user code. Do not edit comment generated here */static void _near r_Config_S12AD0_interrupt(void){/* Start user code for r_Config_S12AD0_interrupt. Do not edit comment generated here */interrupt_flag = 1;/* End user code. Do not edit comment generated here */}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 505 of 771

スマート・コンフィグレータ.

4.2.404. API 関数

12 ビット A/D グループ・スキャン

以下に、スマート・コンフィグレータが 12 ビット A/D グループ・スキャン用として出力する API 関数の一覧を示します。
表 4.46 12 ビット A/D 連続スキャン用 API 関数
API 関数名
R_{Config_S12ADn}_Create

周辺機能

機能概要

12 ビット A/D コン

12 ビット A/D コンバータ・モジュールを制御する前にバータ必要な初期化処理を実行します。

R_{Config_S12ADn}_Start

12 ビット A/D コンバータを起動します。

R_{Config_S12ADn}_Stop

12 ビット A/D コンバータを停止します。

R_{Config_S12ADn}_Get_ValueResult

バッファに 12 ビットの変換結果を返します。

R_{Config_S12ADn}_Create_UserInit

12 ビット A/D コンバータに関するユーザ独自の初期化処理を実行します。

r_{Config_S12ADn}_interrupt

INTAD 割り込みに伴う処理を実行します。

r_{Config_S12ADn}_groupb_interrupt

INTADGB 割り込みに伴う処理を実行します。

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 506 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_S12ADn}_Create
12 ビット A/D コンバータ・モジュールを制御する前に必要な初期化処理を実行します。
備考

この API 関数は、main()関数を実行する前に、R_Systeminit から呼び出されます。

［指定形式］
void

R_{Config_S12ADn}_Create(void);

備考

n=0

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 507 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_S12ADn}_Start
12 ビット A/D コンバータを起動します。

［指定形式］
void

R_{Config_S12ADn}_Start(void);

備考

n=0

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 508 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_S12ADn}_Stop
12 ビット A/D コンバータを停止します。

［指定形式］
void

R_{Config_S12ADn}_Stop(void);

備考

n=0

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 509 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_S12ADn}_Get_ValueResult
バッファに 12 ビットの変換結果を返します。

［指定形式］
void

R_{Config_S12ADn}_Get_ValueResult (e_ad_channel_t channel, uint16_t * const buffer);

備考

n=0

［引数］
引数

I/O

説明

I

e_ad_channel_t channel;

読み取るデータレジスタのチャネル

I

uint16_t * const buffer;

変換結果を格納するアドレス

備考

以下に、構造 e_ad_channel_t チャネル（チャネル条件）を示します。
typedef enum{
ADCHANNEL0, ADCHANNEL1, ADCHANNEL2, ADCHANNEL3, ADCHANNEL4,ADCHANNEL5, ADCHANNEL6, ADCHANNEL7, ADCHANNEL8, ADCHANNEL9,ADCHANNEL10, ADCHANNEL11, ADCHANNEL12, ADCHANNEL13, ADCHANNEL14,ADCHANNEL15, ADCHANNEL16, ADCHANNEL17, ADCHANNEL18, ADCHANNEL19,ADCHANNEL20, ADCHANNEL21, ADCHANNEL22, ADCHANNEL23, ADCHANNEL24,ADCHANNEL25, ADCHANNEL26, ADCHANNEL27, ADCHANNEL28, ADCHANNEL29,ADCHANNEL30, ADINTERREFVOLT, ADSELFDIAGNOSIS} e_ad_channel_t;

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 510 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_S12ADn}_Create_UserInit
12 ビット A/D コンバータに関するユーザ独自の初期化処理を実行します。
備考

この API 関数は、R_{Config_S12ADn}_Create のコールバック・ルーチンとして呼び出されます。

［指定形式］
void

R_{Config_S12ADn}_Create_UserInit(void);

備考

n=0

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 511 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_S12ADn}_interrupt
INTAD 割り込みに伴う処理を実行します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_S12ADn}_interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_S12ADn}_interrupt(void);

IAR ツールチェーンの場合__interrupt static void
備考

r_{Config_S12ADn}_interrupt(void);

n=0

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 512 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_S12ADn}_groupb_interrupt
INTADGB 割り込みに伴う処理を実行します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_S12ADn}_groupb_interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_S12ADn}_groupb_interrupt(void);

IAR ツールチェーンの場合__interrupt static void
備考

r_{Config_S12ADn}_groupb_interrupt(void);

n=0

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 513 of 771

スマート・コンフィグレータ.

4. API 関数

使用例
タイマ機能からの同期トリガによりグループ・スキャン・モードの 12 ビット A/D 変換結果を取得する例です。
main.c#include "r_cg_macrodriver.h"void main(void);
extern volatile uint8_t interrupt_flag_GA; // Group A interrupt flag
extern volatile uint8_t interrupt_flag_GB; // Group B interrupt flag
uint16_t GB_ANI0_1; // Group B, ANI0 buf, first reading
uint16_t GB_ANI1_1;
uint16_t GB_ANI2_1;
uint16_t GA_ANI3_1; // Group A, ANI3 buf, first reading
uint16_t GA_ANI4_1;
uint16_t GB_ANI0_2; // Group B, ANI0 buf, second reading
uint16_t GB_ANI1_2;
uint16_t GB_ANI2_2;
uint16_t GA_ANI3_2; // Group A, ANI3 buf, second reading
uint16_t GA_ANI4_2;
uint16_t GB_ANI0_3; // Group B, ANI0 buf, third reading
uint16_t GB_ANI1_3;
uint16_t GB_ANI2_3;
uint16_t GA_ANI3_3; // Group A, ANI3 buf, third reading
uint16_t GA_ANI4_3;
void main(void){EI();
RAMSAR = 0x9F;
interrupt_flag_GA = 0;interrupt_flag_GB = 0;
GB_ANI0_1 = 0; // Group B, ANI0 buf, first reading
GB_ANI1_1 = 0;
GB_ANI2_1 = 0;
GA_ANI3_1 = 0; // Group A, ANI3 buf, first reading
GA_ANI4_1 = 0;
GB_ANI0_2 = 0; // Group B, ANI0 buf, second reading
GB_ANI1_2 = 0;
GB_ANI2_2 = 0;
GA_ANI3_2 = 0; // Group A, ANI3 buf, second reading
GA_ANI4_2 = 0;
R_Config_S12AD0_Start();
R_Config_TAU0_0_Start();
R_Config_TAU0_4_Start();
R_Config_TRD0_Start();
R_Config_TAU0_4_Set_SoftwareTriggerOn(); // trigger Group B// input 1v
while(1){// state 1
if(interrupt_flag_GB == 1){ // first reading, when Group B triggered in// Group B (Group B conversion completed)
R_Config_S12AD0_Get_ValueResult(ADCHANNEL0, &GB_ANI0_1);

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 514 of 771

スマート・コンフィグレータ.

4. API 関数

R_Config_S12AD0_Get_ValueResult(ADCHANNEL1, &GB_ANI1_1);
R_Config_S12AD0_Get_ValueResult(ADCHANNEL2, &GB_ANI2_1);// Group A (Group A not start)
R_Config_S12AD0_Get_ValueResult(ADCHANNEL3, &GA_ANI3_1);
R_Config_S12AD0_Get_ValueResult(ADCHANNEL4, &GA_ANI4_1);
interrupt_flag_GB = 2; // read once, Group B conversion completed
R_Config_TAU0_0_Set_SoftwareTriggerOn(); // trigger Group A}// state 2
if(interrupt_flag_GA == 1){ // second reading// Group B (Group B not start)
R_Config_S12AD0_Get_ValueResult(ADCHANNEL0, &GB_ANI0_2);
R_Config_S12AD0_Get_ValueResult(ADCHANNEL1, &GB_ANI1_2);
R_Config_S12AD0_Get_ValueResult(ADCHANNEL2, &GB_ANI2_2);// Group A (Group A start)
R_Config_S12AD0_Get_ValueResult(ADCHANNEL3, &GA_ANI3_2);
R_Config_S12AD0_Get_ValueResult(ADCHANNEL4, &GA_ANI4_2);
interrupt_flag_GA = 2; // read once, Group A conversion completed}
if((interrupt_flag_GA == 2) && (interrupt_flag_GB == 2)){
break; // Complete all conversions.
}}
R_Config_S12AD0_Stop(); // stop conversion
GB_ANI0_3 = 0;// wait for restart
GB_ANI1_3 = 0;
GB_ANI2_3 = 0;
GA_ANI3_3 = 0;
GA_ANI4_3 = 0;interrupt_flag_GA = 0;interrupt_flag_GB = 0;// state 3// input 0.6v
R_Config_S12AD0_Start(); // Group scan restart
R_Config_TAU0_0_Set_SoftwareTriggerOn(); // trigger Group A again
while(interrupt_flag_GA != 1);// Group B (Group B not start)
R_Config_S12AD0_Get_ValueResult(ADCHANNEL0, &GB_ANI0_3);
R_Config_S12AD0_Get_ValueResult(ADCHANNEL1, &GB_ANI1_3);
R_Config_S12AD0_Get_ValueResult(ADCHANNEL2, &GB_ANI2_3);// Group A (Group A start)
R_Config_S12AD0_Get_ValueResult(ADCHANNEL3, &GA_ANI3_3);
R_Config_S12AD0_Get_ValueResult(ADCHANNEL4, &GA_ANI4_3);
while(1);}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 515 of 771

スマート・コンフィグレータ.

4. API 関数

Config_S12AD0_user.c/* Start user code for global. Do not edit comment generated here */uint8_t interrupt_flag_GA;
uint8_t interrupt_flag_GB;/* End user code. Do not edit comment generated here */static void __near r_Config_S12AD0_interrupt(void){/* Start user code for r_Config_S12AD0_interrupt. Do not edit comment generated here */interrupt_flag_GA = 1;/* End user code. Do not edit comment generated here */}static void __near r_Config_S12AD0_groupb_interrupt(void){/* Start user code for r_Config_S12AD0_groupb_interrupt. Do not edit comment generated here */interrupt_flag_GB = 1;/* End user code. Do not edit comment generated here */}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 516 of 771

スマート・コンフィグレータ.

4.2.41

4. API 関数

D/A コンバータ

以下に、スマート・コンフィグレータが D/A コンバータ用として出力する API 関数の一覧を示します。
表 4.47 D/A コンバータ用 API 関数
API 関数名
R_{Config_DACn}_Create

周辺機能

機能概要

D/A コンバータ

DACn モジュールを制御する前に必要な初期化処理を実行します。

R_{Config_DACn}_Start

DACn を起動します。

R_{Config_DACn}_Stop

DACn を停止します。

R_{Config_DACn}_Set_ConversionValu

DACn 値を設定します。

e
R_{Config_DACn}_Create_UserInit

R20UT4852JJ0105
2024.07.22

Rev.1.05

DACn に関するユーザ独自の初期化処理を実行します。

Page 517 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_DACn}_Create
DACn モジュールを制御する前に必要な初期化処理を実行します。
備考

この API 関数は、R_DAC_Create から呼び出されます。

［指定形式］
void

R_{Config_DACn}_Create(void);

備考

n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 518 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_DACn}_Start
DACn コンバータを起動します。

［指定形式］
void

R_{Config_DACn}_Start(void);

備考

n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 519 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_DACn}_Stop
DACn コンバータを停止します。

［指定形式］
void

R_{Config_DACn}_Stop(void);

備考

n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 520 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_DACn}_Set_ConversionValue
DACn 値を設定します。

［指定形式］
void

R_{Config_DACn}_Set_ConversionValue(uint8_t reg_value);

備考

n はチャネル番号を示します。

［引数］
引数

I/O
I

uint8_t reg_value;

説明
D/A 変換を行うデータ

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 521 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_DACn}_Create_UserInit
DACn に関するユーザ独自の初期化処理を実行します。
備考

この API 関数は、R_{Config_DACn}_Create のコールバック・ルーチンとして呼び出されます。

［指定形式］
void

R_{Config_DACn}_Create_UserInit(void);

備考

n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 522 of 771

スマート・コンフィグレータ.

4. API 関数

使用例
D/A 変換を開始する例です。
main.c#include "r_smc_entry.h"void main(void);void main(void){
EI();
R_Config_DAC0_Set_ConversionValue(0xF0);
R_Config_DAC0_Start();}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 523 of 771

スマート・コンフィグレータ.

4.2.42

4. API 関数

データ・トランスファ・コントローラ

以下に、スマート・コンフィグレータがデータ・トランスファ・コントローラ用として出力する API
関数の一覧を示します。
表 4.48 データ・トランスファ・コントローラ用 API 関数
API 関数名
R_{Config_DTC}_Create
R_{Config_DTCDn}_Start

周辺機能

機能概要

データ・トランス

DAC モジュールを制御する前に必要な初期化処理を実

ファ・コントロー

行します。

ラ

DTCDn モジュールの動作を開始します。

R_{Config_DACn}_Stop

DTCDn モジュールの動作を終了します。

R_{Config_DTC}_Create_UserInit

データ・トランスファ・コントローラに関するユーザ
独自の初期化処理を実行します。

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 524 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_DTC}_Create
DAC モジュールを制御する前に必要な初期化処理を実行します。
備考

この API 関数は、main()関数を実行する前に、R_Systeminit から呼び出されます。

［指定形式］
void

R_{Config_DTC}_Create(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 525 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_DTCDn}_Start
DTCDn モジュールの動作を開始します。

［指定形式］
void

R_{Config_DTCDn}_Start(void);

備考

n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 526 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_DTCDn}_Stop
DTCDn モジュールの動作を終了します。

［指定形式］
void

R_{Config_DTCDn}_Stop(void);

備考

n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 527 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_DTC}_Create_UserInit
データ・トランスファ・コントローラに関するユーザ独自の初期化処理を実行します。
備考

この API 関数は、R_{Config_DTC}_Create のコールバック・ルーチンとして呼び出されます。

［指定形式］
void

R_{Config_DTC}_Create_UserInit(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 528 of 771

スマート・コンフィグレータ.

4. API 関数

使用例
リアルタイム・クロックのアラーム一致検出の定周期信号に応じて DTC データ転送を開始する例です。
main.c#include "r_smc_entry.h"void main(void);void main(void){
EI();
R_DTCD0_Start();
R_Config_RTC_Start();while(dtc_controldata_0.dtcct != 0);
R_Config_RTC_Stop();
R_DTCD0_Stop();}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 529 of 771

スマート・コンフィグレータ.

4.2.43

4. API 関数

コンパレータ以下に、スマート・コンフィグレータがコンパレータ用として出力する API 関数の一覧を示します。
表 4.49 コンパレータ用 API 関数
API 関数名

周辺機能

R_{Config_COMPn}_Create

コンパレータ

機能概要
コンパレータ n モジュールを制御する前に必要な初期化処理を実行します。

R_{Config_COMPn}_Start

コンパレータ n を起動します。

R_{Config_COMPn}_Stop

コンパレータ n を停止します。

R_{Config_COMPn}_Create_UserInit

コンパレータ n に関するユーザ独自の初期化処理を実行します。

r_{Config_COMPn}_interrupt

R20UT4852JJ0105
2024.07.22

Rev.1.05

INTCMPn 割り込みに伴い処理を実行します。

Page 530 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_COMPn}_Create
コンパレータ n モジュールを制御する前に必要な初期化処理を実行します。
備考

この API 関数は、R_COMP_Create から呼び出されます。

［指定形式］
void

R_{Config_COMPn}_Create(void);

備考

n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 531 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_COMPn}_Start
コンパレータ n を起動します。

［指定形式］
void

R_{Config_COMPn}_Start(void);

備考

n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 532 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_COMPn}_Stop
コンパレータ n を停止します。

［指定形式］
void

R_{Config_COMPn}_Stop(void);

備考

n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 533 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_COMPn}_Create_UserInit
コンパレータ n に関するユーザ独自の初期化処理を実行します。
備考

この API 関数は、R_{Config_COMPn}_Create のコールバック・ルーチンとして呼び出されます。

［指定形式］
void

R_{Config_COMPn}_Create_UserInit(void);

備考

n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 534 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_COMPn}_interrupt
INTCMPn 割り込みに伴い処理を実行します。
備考

この API 関数は、コンパレータ割り込みの割り込みハンドラとして呼び出され、コンパ
レータ出力の有効エッジを検出したときに発生します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_COMPn}_interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_COMPn}_interrupt(void);

IAR ツールチェーンの場合__interrupt static void
備考

r_{Config_COMPn}_interrupt(void);n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 535 of 771

スマート・コンフィグレータ.

4. API 関数

使用例
コンパレータ出力の有効エッジを検出したときにフラグを設定する例です。
main.c#include "r_smc_entry.h"
extern uint8_t comp0_trig_flag;
void main(void);void main(void){
EI();
comp0_trig_flag = 0U;/* Start comparator 0 */R_Config_COMP0_Start ();while(comp0_trig_flag != 1U);
comp1_trig_flag = 0U;
R_Config_COMP0_Stop ();}Config_COMP0_user.c/* Start user code for global. Do not edit comment generated here */uint8_t comp0_trig_flag = 0U/* End user code. Do not edit comment generated here */static void __near r_Config_COMP0_interrupt(void){/* Start user code for r_Config_COMP0_interrupt. Do not edit comment generated here *//* Set the flag */comp0_trig_flag = 1U;/* End user code. Do not edit comment generated here */}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 536 of 771

スマート・コンフィグレータ.

4.2.444. API 関数

プログラマブル・ゲイン・アンプ

以下に、スマート・コンフィグレータがプログラマブル・ゲイン・アンプ用として出力する API 関数の一覧を示します。
表 4.50 コンパレータ用 API 関数
API 関数名

周辺機能

R_{Config_PGA}_Create

コンパレータ

機能概要
PGA モジュールを制御する前に必要な初期化処理を実行します。

R_{Config_PAG}_Start

PGA を起動します。

R_{Config_PAG}_Stop

PGA を停止します。

R_{Config_PGA}_Create_UserInit

PGA に関するユーザ独自の初期化処理を実行します。

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 537 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_PGA}_Create
PAG モジュールを制御する前に必要な初期化処理を実行します。
備考

この API 関数は、R_PGACOMP_Create から呼び出されます。

［指定形式］
void

R_{Config_PGA}_Create(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 538 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_PAG}_Start
PAG を起動します。

［指定形式］
void

R_{Config_PAG}_Start(void);

備考

n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 539 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_PAG}_Stop
PAG を停止します。

［指定形式］
void

R_{Config_PAG}_Stop(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 540 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_PGA}_Create_UserInit
PAG に関するユーザ独自の初期化処理を実行します。
備考

この API 関数は、R_{Config_PGA}_Create のコールバック・ルーチンとして呼び出されます。

［指定形式］
void

R_{Config_PAG}_Create_UserInit(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 541 of 771

スマート・コンフィグレータ.

4. API 関数

使用例
信号を入力するときに増幅信号を出力する例です。
main.c#include "r_smc_entry.h"void main(void);void main(void){
EI();/* Start comparator 0 */R_Config_PGA_Start ();while(1U);}

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 542 of 771

スマート・コンフィグレータ.

4.2.45

4. API 関数

SPI(CSI)通信

以下に、スマート・コンフィグレータが SPI(CSI)通信用として出力する API 関数の一覧を示します。
表 4.51 CSI 通信用 API 関数
API 関数名
R_{Config_CSIp}_Create

周辺機能

機能概要

シリアル・アレ

CSIp モジュールを制御する前に必要な初期化処理を実

イ・ユニット

行します。

R_{Config_CSIp}_Start

CSIp モジュールの動作を開始します。

R_{Config_CSIp}_Stop

CSIp モジュールの動作を終了します。

R_{Config_CSIp}_Send

CSIp データを送信します。

R_{Config_CSIp}_Receive

CSIp データを受信します。

R_{Config_CSIp}_Send_Receive

CSIp データを送受信します。

R_{Config_CSIp}_Create_UserInit

CSIp に関するユーザ独自の初期化処理を実行します。

r_{Config_CSIp}_interrupt

バッファ空き／転送完了割り込みに伴う処理を実行します（INTCSIp）。

r_{Config_CSIp}_callback_sendend

送信完了の検出に伴う処理を実行します。

r_{Config_CSIp}_callback_receiveend

受信完了の検出に伴う処理を実行します。

r_{Config_CSIp}_callback_error

受信エラーの検出に伴う処理を実行します。

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 543 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_CSIp}_Create
CSIp モジュールを制御する前に必要な初期化処理を実行します。
備考 1.

この API 関数は、R_SAUm_Create から呼び出されます。

備考 2.

m＝0 のとき p＝00, 01, 10, 11
m＝1 のとき p＝20, 21, 30, 31［指定形式］
void

R_{Config_CSIp}_Create(void);

備考

p＝00, 01, 10, 11, 20, 21, 30, 31

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 544 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_CSIp}_Start
CSIp モジュールの動作を開始します。

［指定形式］
void

R_{Config_CSIp}_Start(void);

備考

p＝00, 01, 10, 11, 20, 21, 30, 31

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 545 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_CSIp}_Stop
CSIp モジュールの動作を終了します。

［指定形式］
void

R_{Config_CSIp}_Stop(void);

備考

p＝00, 01, 10, 11, 20, 21, 30, 31

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 546 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_CSIp}_Send
CSIp データを送信します。

［指定形式］
MD_STATUS
備考

R_{Config_CSIp}_Send(uint8_t * const tx_buf, uint16_t tx_num);p＝00, 01, 10, 11, 20, 21, 30, 31

［引数］
I/O

引数

説明

I

uint8_t * const tx_buf;

送信バッファへのポインタI

uint16_t tx_num;

バッファのサイズ

［戻り値］
マクロ

説明

MD_OK

正常終了

MD_ARGERROR

引数の指定が不正

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 547 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_CSIp}_Receive
CSIp データを受信します。

［指定形式］
MD_STATUS
備考

R_{Config_CSIp}_Receive(uint8_t * const rx_buf, uint16_t rx_num);p＝00, 01, 10, 11, 20, 21, 30, 31

［引数］
I/O

引数

説明

O

uint8_t * const rx_buf;

受信バッファへのポインタI

uint16_t rx_num;

バッファのサイズ

［戻り値］
マクロ

説明

MD_OK

正常終了

MD_ARGERROR

引数の指定が不正

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 548 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_CSIp}_Send_Receive
CSIp データを送受信します。

［指定形式］
MD_STATUS
const rx_buf);
備考

R_{Config_CSIp}_Send_Receive(uint8_t * const tx_buf, uint16_t tx_num, uint8_t *p＝00, 01, 10, 11, 20, 21, 30, 31

［引数］
I/O

引数

説明

I

uint8_t * const tx_buf;

送信バッファへのポインタ

O

uint8_t * const rx_buf;

受信バッファへのポインタI

uint16_t tx_num;

バッファのサイズ

［戻り値］
マクロ

説明

MD_OK

正常終了

MD_ARGERROR

引数の指定が不正

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 549 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_CSIp}_Create_UserInit
CSIp に関するユーザ独自の初期化処理を実行します。
備考

この API 関数は、R_{Config_CSIp}_Create のコールバック・ルーチンとして呼び出されます。

［指定形式］
void

R_{Config_CSIp}_Create_UserInit(void);

備考

p＝00, 01, 10, 11, 20, 21, 30, 31

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 550 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_CSIp}_interrupt
バッファ空き／転送完了割り込みに伴う処理を実行します（INTCSIp）。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_CSIp}_interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_CSIp}_interrupt(void);

IAR ツールチェーンの場合__interrupt static void
備考

r_{Config_CSIp}_interrupt(void);

p＝00, 01, 10, 11, 20, 21, 30, 31

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 551 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_CSIp}_callback_sendend
送信完了の検出に伴う処理を実行します。
備考 1

この API 関数は、CSIp 割り込みに伴う処理 r_{Config_CSIp}_interrupt のコールバック・
ルーチンとして呼び出されます。

備考 2

コールバック関数で必要なフラグの設定／クリアのみを保持し、他の処理コードは、コールバックおよび割り込み関数から移動する必要があります。 それ以外は、割り込みが正しいタイミングで処理されません。

［指定形式］
static voidr_{Config_CSIp}_callback_sendend(void);

備考

p＝00, 01, 10, 11, 20, 21, 30, 31

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 552 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_CSIp}_callback_receiveend
受信完了の検出に伴う処理を実行します。
備考 1

この API 関数は、CSIp 割り込みに伴う処理 r_{Config_CSIp}_interrupt のコールバック・
ルーチンとして呼び出されます。

備考 2

コールバック関数で必要なフラグの設定／クリアのみを保持し、他の処理コードは、コールバックおよび割り込み関数から移動する必要があります。 それ以外は、割り込みが正しいタイミングで処理されません。

［指定形式］
static voidr_{Config_CSIp}_callback_receiveend(void);

備考

p＝00, 01, 10, 11, 20, 21, 30, 31

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 553 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_CSIp}_callback_error
エラー発生の検出に伴う処理を実行します。
備考 1

この API 関数は、CSIp 割り込みに伴う処理 r_{Config_CSIp}_interrupt のコールバック・
ルーチンとして呼び出されます。

備考 2

コールバック関数で必要なフラグの設定／クリアのみを保持し、他の処理コードは、コールバックおよび割り込み関数から移動する必要があります。 それ以外は、割り込みが正しいタイミングで処理されません。

［指定形式］
static voidr_{Config_CSIp}_callback_error(uint8_t err_type);

備考

p＝00, 01, 10, 11, 20, 21, 30, 31

［引数］
引数

I/O
I

uint8_t err_type;

説明
エラー種別を示す値
Bit0：オーバラン・エラー

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 554 of 771

スマート・コンフィグレータ.

4. API 関数

使用例
CSI00 からデータを送信し、CSI11（連続モード）でデータを受信する例です。
main.c#include "r_smc_entry.h"
uint8_t tx_buf[6] = {0xA5,0x3F,0xC0,0x5C,0xB6,0x37};
uint8_t rx_buf[6] = {0x00,0x00,0x00,0x00,0x00,0x00};
volatile uint8_t transmitend_flag = 0U;
volatile uint8_t receiveend_flag = 0U;
void main(void);void main(void){
EI();
R_Config_CSI11_Start();
R_Config_CSI00_Start();
R_Config_CSI11_Receive(rx_buf, sizeof(rx_buf));
R_Config_CSI00_Send(tx_buf, sizeof(tx_buf));while(transmitend_flag != 1U);transmitend_flag = 0U;
while(receiveend_flag != 1U);
receiveend_flag = 0U;
R_Config_CSI00_Stop();
R_Config_CSI11_Stop();}
Config_CSI00_user.c/* Start user code for global. Do not edit comment generated here */extern volatile uint8_t transmitend_flag;/* End user code. Do not edit comment generated here */static void r_Config_CSI00_callback_sendend(void){/* Start user code for r_Config_CSI00_callback_sendend. Do not edit comment generated here */transmitend_flag = 1U;/* End user code. Do not edit comment generated here */}Config_CSI11_user.c/* Start user code for global. Do not edit comment generated here */extern volatile uint8_t receiveend_flag;/* End user code. Do not edit comment generated here */static void r_Config_CSI11_callback_receiveend (void){/* Start user code for r_Config_CSI11_callback_receiveend. Do not edit comment generated here */receiveend_flag = 1U;/* End user code. Do not edit comment generated here */}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 555 of 771

スマート・コンフィグレータ.

4.2.46

4. API 関数

UART 通信（シリアル・アレイ・ユニット）

以下に、スマート・コンフィグレータが UART 通信用として出力する API 関数の一覧を示します。
表 4.52 UART 通信用 API 関数
API 関数名
R_{Config_UARTq}_Create

周辺機能

機能概要

シリアル・アレ

UARTq モジュールを制御する前に必要な初期化処理を

イ・ユニット

実行します。

R_{Config_UARTq}_Start

UARTq モジュールの動作を開始します。

R_{Config_UARTq}_Stop

UARTq モジュールの動作を終了します。

R_{Config_UARTq}_Send

UARTq データを送信します。

R_{Config_UARTq}_Receive

UARTq データを受信します。

R_{Config_UARTq}_Loopback_Enable

UARTq ループバック機能を許可します。

R_{Config_UARTq}_Loopback_Disable

UARTq ループバック機能を禁止します。

R_{Config_UARTq}_Create_UserInit

UARTq に関するユーザ独自の初期化処理を実行します。

r_{Config_UARTq}_interrupt_send

UARTq 送信完了割り込み（シングル転送モード）またはバッファ空き割り込み（連続転送モード）に伴う処理を実行します。

r_{Config_UARTq}_interrupt_receive

UARTq 受信完了割り込みに伴う処理を実行します。

r_{Config_UARTq}_interrupt_error

UARTq 受信エラーの発生に伴う処理を実行します。

r_{Config_UARTq}_callback_sendend

送信完了の検出に伴う処理を実行します。

r_{Config_UARTq}_callback_receiveend

受信完了の検出に伴う処理を実行します。

r_{Config_UARTq}_callback_error

受信エラーの検出に伴う処理を実行します。

r_{Config_UARTq}_callback_softwareov

オーバラン・エラーの検出に伴う処理を実行します。

errun

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 556 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_UARTq}_Create
UARTq モジュールを制御する前に必要な初期化処理を実行します。
備考 1.

この API 関数は、R_SAUm_Create から呼び出されます。

備考 2.

m＝0 のとき q＝0, 1
m＝1 のとき q＝2, 3［指定形式］
void

R_{Config_UARTq}_Create(void);

備考

q＝0, 1, 2, 3

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 557 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_UARTq}_Start
UARTq モジュールの動作を開始します。

［指定形式］
void

R_{Config_UARTq}_Start(void);

備考

q＝0, 1, 2, 3

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 558 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_UARTq}_Stop
UARTq モジュールの動作を終了します。

［指定形式］
void

R_{Config_UARTq}_Stop(void);

備考

q＝0, 1, 2, 3

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 559 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_UARTq}_Send
UARTq データを送信します。

［指定形式］
MD_STATUS
備考

R_{Config_UARTq}_Send(uint8_t * const tx_buf, uint16_t tx_num);q＝0, 1, 2, 3

［引数］
I/O

引数

説明

I

uint8_t * const tx_buf;

送信バッファへのポインタI

uint16_t tx_num;

バッファのサイズ

［戻り値］
マクロ

説明

MD_OK

正常終了(最初のデータを送信)

MD_ARGERROR

引数の指定が不正

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 560 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_UARTq}_Receive
UARTq データを受信します。

［指定形式］
MD_STATUS
備考

R_{Config_UARTq}_Receive(uint8_t * const rx_buf, uint16_t rx_num);q＝0, 1, 2, 3

［引数］
I/O

引数

説明

O

uint8_t * const rx_buf;

受信バッファへのポインタI

uint16_t rx_num;

バッファのサイズ

［戻り値］
マクロ

説明

MD_OK

正常終了

MD_ARGERROR

引数の指定が不正

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 561 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_UARTq}_Loopback_Enable
UARTq ループバック機能を許可します。

［指定形式］
void

R_{Config_UARTq}_Loopback_Enable(void);

備考

q＝0, 1, 2, 3

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 562 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_UARTq}_Loopback_Disable
UARTq ループバック機能を禁止します。

［指定形式］
void

R_{Config_UARTq}_Loopback_Disable(void);

備考

q＝0, 1, 2, 3

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 563 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_UARTq}_Create_UserInit
UARTq に関するユーザ独自の初期化処理を実行します。
備考

この API 関数は、R_{Config_UARTq}_Create のコールバック・ルーチンとして呼び出されます。

［指定形式］
void

R_{Config_UARTq}_Create_UserInit(void);

備考

q＝0, 1, 2, 3

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 564 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_UARTq}_interrupt_send
UARTq 送信完了割り込み（シングル転送モード）またはバッファ空き割り込み（連続転送モード）に伴う処理を実行します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_UARTq}_interrupt_send(void);

LLVM ツールチェーンの場合
void

r_{Config_UARTq}_interrupt_send(void);

IAR ツールチェーンの場合__interrupt static void
備考

r_{Config_UARTq}_interrupt_send(void);

q＝0, 1, 2, 3

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 565 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_UARTq}_interrupt_receive
UARTq 受信完了割り込みに伴う処理を実行します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_UARTq}_interrupt_receive(void);

LLVM ツールチェーンの場合
void

r_{Config_UARTq}_interrupt_receive(void);

IAR ツールチェーンの場合__interrupt static void
備考

r_{Config_UARTq}_interrupt_receive(void);

q＝0, 1, 2, 3

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 566 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_UARTq}_interrupt_error
UARTq 受信エラーの発生に伴う処理を実行します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_UARTq}_interrupt_error(void);

LLVM ツールチェーンの場合
void

r_{Config_UARTq}_interrupt_error(void);

IAR ツールチェーンの場合__interrupt static void
備考

r_{Config_UARTq}_interrupt_error(void);

q＝0, 1, 2, 3

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 567 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_UARTq}_callback_sendend
送信完了の検出に伴う処理を実行します。
備考 1

この API 関数は、UARTq 送信完了割り込みに伴う処理
r_{Config_UARTq}_interrupt_send のコールバック・ルーチンとして呼び出されます。

備考 2

コールバック関数で必要なフラグの設定／クリアのみを保持し、他の処理コードは、コールバックおよび割り込み関数から移動する必要があります。 それ以外は、割り込みが正しいタイミングで処理されません。

［指定形式］
static voidr_{Config_UARTq}_callback_sendend(void);

備考

q＝0, 1, 2, 3

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 568 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_UARTq}_callback_receiveend
受信完了の検出に伴う処理を実行します。
備考 1

この API 関数は、UARTq 受信完了割り込みに伴う処理
r_{Config_UARTq}_interrupt_receiveend のコールバック・ルーチンとして呼び出されま
す。

備考 2

コールバック関数で必要なフラグの設定／クリアのみを保持し、他の処理コードは、コールバックおよび割り込み関数から移動する必要があります。 それ以外は、割り込みが正しいタイミングで処理されません。

［指定形式］
static voidr_{Config_UARTq}_callback_receiveend(void);

備考

q＝0, 1, 2, 3

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 569 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_UARTq}_callback_error
受信エラーの検出に伴う処理を実行します。
備考 1

この API 関数は、UARTq 受信エラー割り込みに伴う処理
r_{Config_UARTq}_interrupt_error のコールバック・ルーチンとして呼び出されます。

備考 2

コールバック関数で必要なフラグの設定／クリアのみを保持し、他の処理コードは、コールバックおよび割り込み関数から移動する必要があります。 それ以外は、割り込みが正しいタイミングで処理されません。

［指定形式］
static voidr_{Config_UARTq}_callback_error(uint8_t err_type);

備考

q＝0, 1, 2, 3

［引数］
引数

I/O
I

説明

エラー種別を示す値

uint8_t err_type;

Bit 0：オーバラン・エラー
Bit 1：フレーミング・エラー
Bit 2：パリティ・エラー
Bit 3 - 7：0

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 570 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_UARTq}_callback_softwareoverrun
オーバラン・エラーの検出に伴う処理を実行します。
備考 1

この API 関数は、UARTq 受信完了割り込みに伴う処理
r_{Config_UARTq}_interrupt_receive のコールバック・ルーチンとして呼び出されます。

備考 2

コールバック関数で必要なフラグの設定／クリアのみを保持し、他の処理コードは、コールバックおよび割り込み関数から移動する必要があります。 それ以外は、割り込みが正しいタイミングで処理されません。

［指定形式］
static voidr_{Config_UARTq}_callback_softwareoverrun(uint16_t rx_data);

備考

q＝0, 1, 2, 3

［引数］
引数

I/O
I

uint16_t rx_data;

説明
受信データ

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 571 of 771

スマート・コンフィグレータ.

4. API 関数

使用例
UART0 からデータを送信し、UART1 でデータを受信する例です。
main.c#include "r_smc_entry.h"
uint8_t tx_buf[6] = {0xA5,0x3F,0xC0,0x5C,0xB6,0x37};
uint8_t rx_buf[6] = {0x00,0x00,0x00,0x00,0x00,0x00};
volatile uint8_t transmitend_flag = 0U;
volatile uint8_t receiveend_flag = 0U;
void main(void);void main(void){
EI();
R_Config_UART0_Start();
R_Config_UART1_Start();
R_Config_UART1_Receive(rx_buf, 6);
R_Config_UART0_Send(tx_buf, 6);
while(transmitend_flag != 1U && receiveend_flag != 1U);transmitend_flag = 0U;
receiveend_flag = 0U;
R_Config_UART0_Stop();
R_Config_UART1_Stop();}
Config_UART0_user.c/* Start user code for global. Do not edit comment generated here */extern volatile uint8_t transmitend_flag;/* End user code. Do not edit comment generated here */static void r_Config_UART0_callback_sendend(void){/* Start user code for r_Config_UART0_callback_sendend. Do not edit comment generated here */transmitend_flag = 1U;/* End user code. Do not edit comment generated here */}Config_UART1_user.c/* Start user code for global. Do not edit comment generated here */extern volatile uint8_t receiveend_flag;/* End user code. Do not edit comment generated here */static void r_Config_UART1_callback_receiveend (void){/* Start user code for r_Config_UART1_callback_receiveend. Do not edit comment generated here */receiveend_flag = 1U;/* End user code. Do not edit comment generated here */}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 572 of 771

スマート・コンフィグレータ.

4.2.47

4. API 関数

UART 通信（シリアル・インタフェース UARTA）

以下に、スマート・コンフィグレータが UART 通信の UARTA 用として出力する API 関数の一覧を示します。
表 4.53 UART 通信（UARTA）用 API 関数
API 関数名
R_{Config_UARTAn}_Create

周辺機能

機能概要

シリアル・インタUARTAn モジュールを制御する前に必要な初期化処理

フェース UARTA

を実行します。

R_{Config_UARTAn}_Start

UARTAn モジュールの動作を開始します。

R_{Config_UARTAn}_Stop

UARTAn モジュールの動作を終了します。

R_{Config_UARTAn}_Send

UARTAn データを送信します。

R_{Config_UARTAn}_Receive

UARTAn データを受信します。

R_{Config_UARTAn}_Loopback_Enable

UARTAn ループバック機能を許可します。

R_{Config_UARTAn}_Loopback_Disabl

UARTAn ループバック機能を禁止します。

e
R_{Config_UARTAn}_Create_UserInit

UARTAn に関するユーザ独自の初期化処理を実行します。

R_{Config_UARTAn}_PollingEnd_User

ポーリングによる連続送信の完了に応じて、ユーザコ

Codeードを実行します。

r_{Config_UARTAn}_interrupt_send

UARTAn 送信信完了割り込み（INTUTn）に伴う処理を実行します。

r_{Config_UARTAn}_interrupt_receive

UARTAn 受信完了割り込み（INTURn）に伴う処理を実行します。

r_{Config_UARTAn}_interrupt_error

UARTAn 受信エラー割り込み（INTUREn）に伴う処理を実行します。

r_{Config_UARTAn}_callback_sendend

送信完了の検出に伴う処理を実行します。

r_{Config_UARTAn}_callback_receivee

受信完了の検出に伴う処理を実行します。

ndr_{Config_UARTAn}_callback_error

R20UT4852JJ0105
2024.07.22

Rev.1.05

受信エラーの検出に伴う処理を実行します。

Page 573 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_UARTAn}_Create
UARTAn モジュールを制御する前に必要な初期化処理を実行します。
備考

この API 関数は、R_UARTA_Create から呼び出されます。

［指定形式］
void

R_{Config_UARTAn}_Create(void);

備考

n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 574 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_UARTAn}_Start
UARTAn モジュールの動作を開始します。

［指定形式］
void

R_{Config_UARTAn}_Start(void);

備考

n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 575 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_UARTAn}_Stop
UARTAn モジュールの動作を終了します。

［指定形式］
void

R_{Config_UARTAn}_Stop(void);

備考

n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 576 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_UARTAn}_Send
UARTAn データを送信します。

［指定形式］
MD_STATUS
備考

R_{Config_UARTAn}_Send(uint8_t * const tx_buf, uint16_t tx_num);n はチャネル番号を示します。

［引数］
I/O

引数

説明

I

uint8_t * const tx_buf;

送信バッファへのポインタI

uint16_t tx_num;

バッファのサイズ

［戻り値］
マクロ

説明

MD_OK

正常終了(最初のデータを送信)

MD_ARGERROR

引数の指定が不正

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 577 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_UARTAn}_Receive
UARTAn データを受信します。

［指定形式］
MD_STATUS
備考

R_{Config_UARTAn}_Receive(uint8_t * const rx_buf, uint16_t rx_num);n はチャネル番号を示します。

［引数］
I/O

引数

説明

O

uint8_t * const rx_buf;

受信バッファへのポインタI

uint16_t tx_num;

バッファのサイズ

［戻り値］
マクロ

説明

MD_OK

正常終了

MD_ARGERROR

引数の指定が不正

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 578 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_UARTAn}_Loopback_Enable
UARTAn ループバック機能を許可します。

［指定形式］
void

R_{Config_UARTAn}_Loopback_Enable(void);

備考

n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 579 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_UARTAn}_Loopback_Disable
UARTAn ループバック機能を禁止します。

［指定形式］
void

R_{Config_UARTAn}_Loopback_Disable(void);

備考

n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 580 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_UARTAn}_Create_UserInit
UARTAn に関するユーザ独自の初期化処理を実行します。
備考

この API 関数は、R_{Config_UARTAn}_Create のコールバック・ルーチンとして呼び出されます。

［指定形式］
void

R_{Config_UARTAn}_Create_UserInit(void);

備考

n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 581 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_UARTAn}_PollingEnd_UserCode
ポーリングによる連続送信の完了に応じて、ユーザコードを実行します。
備考
この API 関数は、データ送信の完了に対応する R_{Config_UARTAn}_Send から呼び出されます。

［指定形式］
void

R_{Config_UARTAn}_PollingEnd_UserCode(void);

備考

n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 582 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_UARTAn}_interrupt_send
UARTn 送信信完了割り込み（INTUTn）に伴う処理を実行します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_UARTAn}_interrupt_send(void);

LLVM ツールチェーンの場合
void

r_{Config_UARTAn}_interrupt_send(void);

IAR ツールチェーンの場合__interrupt static void
備考

r_{Config_UARTAn}_interrupt_send(void);n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 583 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_UARTAn}_interrupt_receive
UARTAn 受信完了割り込み（INTURn）に伴う処理を実行します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_UARTAn}_interrupt_receive(void);

LLVM ツールチェーンの場合
void

r_{Config_UARTAn}_interrupt_receive(void);

IAR ツールチェーンの場合__interrupt static void
備考

r_{Config_UARTAn}_interrupt_receive(void);n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 584 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_UARTAn}_interrupt_error
UARTAn 受信エラー割り込み（INTUREn）に伴う処理を実行します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_UARTAn}_interrupt_error(void);

LLVM ツールチェーンの場合
void

r_{Config_UARTAn}_interrupt_error(void);

IAR ツールチェーンの場合__interrupt static void
備考

r_{Config_UARTAn}_interrupt_error(void);n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 585 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_UARTAn}_callback_sendend
送信完了の検出に伴う処理を実行します。
備考 1

この API 関数は、UARTAn 送信完了割り込みに伴う処理
r_{Config_UARTAn}_interrupt_send のコールバック・ルーチンとして呼び出されます。

備考 2

コールバック関数で必要なフラグの設定／クリアのみを保持し、他の処理コードは、コールバックおよび割り込み関数から移動する必要があります。 それ以外は、割り込みが正しいタイミングで処理されません。

［指定形式］
static voidr_{Config_UARTAn}_callback_sendend(void);

備考

n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 586 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_UARTAn}_callback_receiveend
受信完了の検出に伴う処理を実行します。
備考 1

この API 関数は、UARTAn 受信完了割り込みに伴う処理
r_{Config_UARTAn}_interrupt_receive のコールバック・ルーチンとして呼び出されます。

備考 2

コールバック関数で必要なフラグの設定／クリアのみを保持し、他の処理コードは、コールバックおよび割り込み関数から移動する必要があります。 それ以外は、割り込みが正しいタイミングで処理されません。

［指定形式］
static voidr_{Config_UARTAn}_callback_receiveend(void);

備考

n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 587 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_UARTAn}_callback_error
受信エラーの検出に伴う処理を実行します。
備考 1

この API 関数は、UARTAn 受信エラー割り込みに伴う処理
r_{Config_UARTAn}_interrupt_error のコールバック・ルーチンとして呼び出されます。

備考 2

コールバック関数で必要なフラグの設定／クリアのみを保持し、他の処理コードは、コールバックおよび割り込み関数から移動する必要があります。 それ以外は、割り込みが正しいタイミングで処理されません。

［指定形式］
static voidr_{Config_UARTAn}_callback_error(uint8_t err_type);

備考

n はチャネル番号を示します。

［引数］
引数

I/O
I

説明

エラー種別を示す値

uint8_t err_type;

Bit 0：オーバラン・エラー
Bit 1：フレーミング・エラー
Bit 2：パリティ・エラー
Bit 3 - 7：0

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 588 of 771

スマート・コンフィグレータ.

4. API 関数

使用例
UARTA0 からポーリング・モードでデータを送信し、UARTA1 もデータを 2 回送受信する例です。
main.c#include "r_smc_entry.h"
uint8_t tx_buf0[] = {0x7A};
uint8_t tx_buf1[] = {0x7A, 0x6C, 0x27, 0x1F, 0xF8};
uint8_t rx_buf0[] = {0x00};
uint8_t rx_buf1[] = {0x00, 0x00, 0x00, 0x00, 0x00};
volatile uint8_t transmitend_flag = 0U;
volatile uint8_t receptend_flag = 0U;
void main(void);void main(void){
EI();
R_Config_UARTA0_Start();
R_Config_UARTA1_Start();// 1st transmission (UARTA0 to UARTA1)
R_Config_UARTA1_Receive(rx_buf0, sizeof(rx_buf0));
R_Config_UARTA0_Send(tx_buf0, sizeof(tx_buf0));
while((1U != transmitend_flag) || (1U != receptend_flag));// 2nd transmission (UARTA1 to UARTA0)
R_Config_UARTA0_Receive(rx_buf1, sizeof(rx_buf1));
R_Config_UARTA1_Send(tx_buf1, sizeof(tx_buf1));
while((2U != transmitend_flag) || (2U != receptend_flag));
R_Config_UARTA0_Stop();
R_Config_UARTA1_Stop();}
Config_UARTA0_user.c/* Start user code for global. Do not edit comment generated here */extern volatile uint8_t transmitend_flag;
extern volatile uint8_t receptend_flag;/* End user code. Do not edit comment generated here */void R_Config_UARTA0_PollingEnd_UserCode(void){/* Start user code for R_Config_UARTA0_PollingEnd_UserCode. Do not edit comment generated
here */
transmitend_flag++;/* End user code. Do not edit comment generated here */}static void r_Config_UARTA0_callback_receiveend (void){/* Start user code for r_Config_UARTA0_callback_sendend. Do not edit comment generated here */receptend_flag++;/* End user code. Do not edit comment generated here */}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 589 of 771

スマート・コンフィグレータ.

4. API 関数

Config_UARTA1_user.c/* Start user code for global. Do not edit comment generated here */extern volatile uint8_t transmitend_flag;
extern volatile uint8_t receptend_flag;/* End user code. Do not edit comment generated here */void R_Config_UARTA1_PollingEnd_UserCode (void){/* Start user code for R_Config_UARTA1_PollingEnd_UserCode. Do not edit comment generated
here */
transmitend_flag++;/* End user code. Do not edit comment generated here */}static void r_Config_UARTA1_callback_receiveend (void){/* Start user code for r_Config_UARTA1_callback_receiveend. Do not edit comment generated here*/
receptend_flag++;/* End user code. Do not edit comment generated here */}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 590 of 771

スマート・コンフィグレータ.

4.2.484. API 関数

UART 通信（LIN/UART モジュール）

以下に、スマート・コンフィグレータが UART 通信の LIN/UART モジュール用として出力する API 関数の一覧を示します。
表 4.54 UART 通信（LIN/UART モジュール）用 API 関数
API 関数名
R_{Config_RLIN3n}_Create

周辺機能

機能概要

LIN/UART モジュー

RLIN3n モジュールを制御する前に必要な初期化処理をル実行します。

R_{Config_RLIN3n}_Start

RLIN3n モジュールの動作を開始します。

R_{Config_RLIN3n}_Stop

RLIN3n モジュールの動作を終了します。

R_{Config_RLIN3n}_Send

RLIN3n データを送信します。

R_{Config_RLIN3n}_Receive

RLIN3n データを受信します。

R_{Config_RLIN3n}_Create_UserInit

RLIN3n に関するユーザ独自の初期化処理を実行します。

r_{Config_RLIN3n}_interrupt_send

LIN3n 送信終了割り込み（シングル転送モードの場合）
またはバッファエンプティ割り込み（連続転送モードの場合）に伴う処理を実行します。

r_{Config_RLIN3n}_interrupt_receive

RLIN3n 受信完了割り込みに伴う処理を実行します。

r_{Config_RLIN3n}_interrupt_error

RLIN3n 受信エラー割り込みに伴う処理を実行します。

r_{Config_RLIN3n}_callback_sendend

送信完了の検出に伴う処理を実行します。

r_{Config_RLIN3n}_callback_receiveen

受信完了の検出に伴う処理を実行します。

dr_{Config_RLIN3n}_callback_error

R20UT4852JJ0105
2024.07.22

Rev.1.05

受信エラーの検出に伴う処理を実行します。

Page 591 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_RLIN3n}_Create
RLIN3n モジュールを制御する前に必要な初期化処理を実行します。
備考

この API 関数は、main()関数を実行する前に、R_Systeminit から呼び出されます。

［指定形式］
void

R_{Config_RLIN3n}_Create(void);

備考

n はチャネル番号 (n = 0, 1, 2) を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 592 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_RLIN3n}_Start
RLIN3n モジュールの動作を開始します。

［指定形式］
void

R_{Config_RLIN3n}_Start(void);

備考

n はチャネル番号 (n = 0, 1, 2) を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 593 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_RLIN3n}_Stop
RLIN3n モジュールの動作を終了します。

［指定形式］
void

R_{Config_RLIN3n}_Stop(void);

備考

n はチャネル番号 (n = 0, 1, 2) を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 594 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_RLIN3n}_Send
RLIN3n データを送信します。

［指定形式］
MD_STATUS
備考

R_{Config_RLIN3n}_Send(uint8_t * const tx_buf, uint16_t tx_num);n はチャネル番号 (n = 0, 1, 2) を示します。

［引数］
I/O

引数

説明

I

uint8_t * const tx_buf;

送信バッファへのポインタI

uint16_t tx_num;

バッファのサイズ

［戻り値］
マクロ

説明

MD_OK

正常終了

MD_ARGERROR

引数の指定が不正

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 595 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_RLIN3n}_Receive
RLIN3n データを受信します。

［指定形式］
MD_STATUS
備考

R_{Config_RLIN3n}_Receive(uint8_t * const rx_buf, uint16_t rx_num);n はチャネル番号 (n = 0, 1, 2) を示します。

［引数］
I/O

引数

説明

O

uint8_t * const rx_buf;

受信バッファへのポインタI

uint16_t tx_num;

バッファのサイズ

［戻り値］
マクロ

説明

MD_OK

正常終了

MD_ARGERROR

引数の指定が不正

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 596 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_RLIN3n}_Create_UserInit
RLIN3n に関するユーザ独自の初期化処理を実行します。
備考

この API 関数は、R_{Config_RLIN3n}_Create のコールバック・ルーチンとして呼び出されます。

［指定形式］
void

R_{Config_RLIN3n}_Create_UserInit(void);

備考

n はチャネル番号 (n = 0, 1, 2) を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 597 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_RLIN3n}_interrupt_send
RLIN3n 送信終了割り込み（シングル転送モードの場合）またはバッファエンプティ割り込み（連続転送モードの場合）に伴う処理を実行します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_RLIN3n}_interrupt_send(void);

LLVM ツールチェーンの場合
void

r_{Config_RLIN3n}_interrupt_send(void);

IAR ツールチェーンの場合__interrupt static void
備考

r_{Config_RLIN3n}_interrupt_send(void);n はチャネル番号 (n = 0, 1, 2) を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 598 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_RLIN3n}_interrupt_receive
RLIN3n 受信完了割り込みに伴う処理を実行します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_RLIN3n}_interrupt_receive(void);

LLVM ツールチェーンの場合
void

r_{Config_RLIN3n}_interrupt_receive(void);

IAR ツールチェーンの場合__interrupt static void
備考

r_{Config_RLIN3n}_interrupt_receive(void);n はチャネル番号 (n = 0, 1, 2) を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 599 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_RLIN3n}_interrupt_error
RLIN3n 受信エラー割り込みに伴う処理を実行します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_RLIN3n}_interrupt_error(void);

LLVM ツールチェーンの場合
void

r_{Config_RLIN3n}_interrupt_error(void);

IAR ツールチェーンの場合__interrupt static void
備考

r_{Config_RLIN3n}_interrupt_error(void);n はチャネル番号 (n = 0, 1, 2) を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 600 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_RLIN3n}_callback_sendend
送信完了の検出に伴う処理を実行します。
備考 1

この API 関数は、RLIN3n 送信完了割り込みに伴う処理
r_{Config_RLIN3n}_interrupt_send のコールバック・ルーチンとして呼び出されます。

備考 2

コールバック関数で必要なフラグの設定／クリアのみを保持し、他の処理コードは、コールバックおよび割り込み関数から移動する必要があります。 それ以外は、割り込みが正しいタイミングで処理されません。

［指定形式］
static voidr_{Config_RLIN3n}_callback_sendend(void);

備考

n はチャネル番号 (n = 0, 1, 2) を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 601 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_RLIN3n}_callback_receiveend
受信完了の検出に伴う処理を実行します。
備考 1

この API 関数は、RLIN3n 受信完了割り込みに伴う処理
r_{Config_RLIN3n}_interrupt_receive のコールバック・ルーチンとして呼び出されます。

備考 2

コールバック関数で必要なフラグの設定／クリアのみを保持し、他の処理コードは、コールバックおよび割り込み関数から移動する必要があります。 それ以外は、割り込みが正しいタイミングで処理されません。

［指定形式］
static voidr_{Config_RLIN3n}_callback_receiveend(void);

備考

n はチャネル番号 (n = 0, 1, 2) を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 602 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_RLIN3n}_callback_error
受信エラーの検出に伴う処理を実行します。
備考 1

この API 関数は、RLIN3n 受信エラー割り込みに伴う処理
r_{Config_RLIN3n}_interrupt_error のコールバック・ルーチンとして呼び出されます。

備考 2

コールバック関数で必要なフラグの設定／クリアのみを保持し、他の処理コードは、コールバックおよび割り込み関数から移動する必要があります。 それ以外は、割り込みが正しいタイミングで処理されません。

［指定形式］
static voidr_{Config_RLIN3n}_callback_error(uint8_t err_type);

備考

n はチャネル番号 (n = 0, 1, 2) を示します。

［引数］
引数

I/O
I

説明

エラー種別を示す値

uint8_t err_type;Bit 2：オーバラン・エラー
Bit 3：フレーミング・エラー
Bit 4：拡張ビット検出フラグ
Bit 5：ID 一致フラグ
Bit 6：パリティ・エラー
Bit 0, 1, 7：0

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 603 of 771

スマート・コンフィグレータ.

4. API 関数

使用例
RLIN30 がデータを受信し、RLIN31 がデータを送信する例です。
main.c#include "r_smc_entry.h"
uint8_t tx_buf0[] = {0x7a, 0x85, 0xbc, 0x26, 0x01, 0x4f};
uint8_t rx_buf0[] = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00};
volatile uint8_t sendend_flag = 0U;
volatile uint8_t receiveend_flag = 0U;
void main(void);void main(void){
EI();
R_Config_RLIN30_Start();
R_Config_RLIN31_Start();sendend_flag = 0U;
receiveend_flag = 0U;
R_Config_RLIN30_Receive(rx_buf0, sizeof(rx_buf0));
R_Config_RLIN31_Send(tx_buf0, sizeof(tx_buf0));
while((1U != sendend_flag) || (1U != receiveend_flag));
R_Config_RLIN30_Stop();
R_Config_RLIN31_Stop();while(1);}Config_RLIN31_user.c/* Start user code for global. Do not edit comment generated here */extern volatile uint8_t sendend_flag;/* End user code. Do not edit comment generated here */static void r_Config_RLIN31_callback_sendend(void){/* Start user code for r_Config_RLIN31_callback_sendend. Do not edit comment generated here */sendend_flag = 1U;/* End user code. Do not edit comment generated here */}Config_RLIN30_user.c/* Start user code for global. Do not edit comment generated here */extern volatile uint8_t receiveend_flag;/* End user code. Do not edit comment generated here */static void r_Config_RLIN30_callback_receiveend (void){/* Start user code for r_Config_RLIN30_callback_receiveend. Do not edit comment generated here */receiveend_flag = 1U;/* End user code. Do not edit comment generated here */}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 604 of 771

スマート・コンフィグレータ.

4. API 関数

DALI 通信（コントロールデバイス）

4.2.49以下に、スマート・コンフィグレータが DALI 通信（コントロールデバイス）モジュール用として出力する API 関数の一覧を示します。
表 4.55 API 関数
API 関数名

周辺機能
DALI

R_{Config_DALI}_Create

機能概要
DALI 通信（コントロールデバイス）モジュールを制御する前に必要な初期化処理を実行します。
DALI 通信（コントロールデバイス）モジュールの動作

R_{Config_DALI}_Start

を開始します。
DALI 通信（コントロールデバイス）モジュールの動作

R_{Config_DALI}_Stop

を終了します。
R_{Config_DALI}_SoftwareResetDALI 通信（コントロールデバイス）モジュールをリセットします。

R_{Config_DALI}_EnableForceActiveSt

DALITxD0 アサートを有効にし、アサートレベル (アクate

ティブ状態) が Low であることを示します。 DALITxD0端子からの出力を Low にします。

R_{Config_DALI}_DisableForceActiveSt

DALITxD0 アサートを無効にします。内部送信データを

ate

DALITxD0 端子から出力します。

R_{Config_DALI}_GetStatus

DALI 通信（コントロールデバイス）の状態を取得します。
フレームデータを送信します。フレーム長は GUI で設

R_{Config_DALI}_Send

定され、固定値になります。
R_{Config_DALI}_GetReceivedFrame

フレームデータとフレーム長を受信します。

R_{Config_DALI}_Create_UserInit

DALI 通信（コントロールデバイス）に関するユーザ独
自の初期化処理を実行します。

r_{Config_DALI}_interrupt_send

DALI 通信（コントロールデバイス）送信時の 32 ビットデータ終了割り込み（INTTD）に伴う処理を実行します。

r_{Config_DALI}_interrupt_receive

DALI 通信（コントロールデバイス）受信時の 32 ビットデータ終了割り込み（INTTD）に伴う処理を実行します。

r_{Config_DALI}_interrupt_error

DALI 通信（コントロールデバイス）の受信エラー割り込み（INTED）に伴う処理を実行します。

r_{Config_DALI}_interrupt_falling_edge_

DALI 通信（コントロールデバイス）の立ち下がりエッ

detection

ジ割り込み（INTFED）に伴う処理を実行します。

r_{Config_DALI}_interrupt_power_down

DALI 通信（コントロールデバイス）のパワーダウン割_detection

り込み（INTBPD）に伴う処理を実行します。

r_{Config_DALI}_interrupt_collision_det

DALI 通信（コントロールデバイス）のコリジョン検出

ection割り込み（INTCLD）に伴う処理を実行します。

r_{Config_DALI}_interrupt_stop_bit_det

DALI 通信（コントロールデバイス）のストップビット

ection

検出割り込み（INTSDD）に伴う処理を実行します。

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 605 of 771

スマート・コンフィグレータ.

4. API 関数

表 4.56 API 関数
API 関数名

周辺機能

r_{Config_DALI}_callback_sendend

DALI

機能概要
送信完了の検出に伴う処理を実行します。

r_{Config_DALI}_callback_receiveend

受信完了の検出に伴う処理を実行します。

r_{Config_DALI}_callback_error

受信エラーの検出に伴う処理を実行します。

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 606 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_DALI}_Create
DALI 通信（コントロールデバイス）モジュールを制御する前に必要な初期化処理を実行します。
備考

この API 関数は、main()関数を実行する前に、R_Systeminit から呼び出されます。

［指定形式］
void

R_{Config_DALI}_Create(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 607 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_DALI}_StartDALI 通信（コントロールデバイス）モジュールの動作を開始します。

［指定形式］
void

R_{Config_DALI}_Start(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 608 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_DALI}_Stop
DALI 通信（コントロールデバイス）モジュールの動作を終了します。

［指定形式］
void

R_{Config_DALI}_Stop(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 609 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_DALI}_SoftwareResetDALI 通信（コントロールデバイス）モジュールをリセットします。

［指定形式］
void

R_{Config_DALI}_SoftwareReset(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 610 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_DALI}_EnableForceActiveStateDALITxD0 アサートを有効にし、アサートレベル (アクティブ状態) が Low であることを示します。
DALITxD0 端子からの出力を Low にします。

［指定形式］
void

R_{Config_DALI}_ EnableForceActiveState (void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 611 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_DALI}_DisableForceActiveStateDALITxD0 アサートを無効にします。内部送信データを DALITxD0 端子から出力します。

［指定形式］
void

R_{Config_DALI}_ DisableForceActiveState (void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 612 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_DALI}_GetStatus
DALI 通信（コントロールデバイス）の状態を取得します。

［指定形式］
void

R_{Config_DALI}_GetStatus(uint16_t * const status);

［引数］
I/O

引数

O

uint16_t * const status;

説明
DALI 状態レジスタバッファへのポインタ

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 613 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_DALI}_Send
フレームデータを送信します。フレーム長は GUI で設定され、固定値になります。

［指定形式］
void

R_{Config_DALI}_Send(uint16_t * const tx_buf);

［引数］
I/O

引数

I

uint8_t * const tx_buf;

備考

説明
送信バッファへのポインタ

以下に、フレーム長と tx_buf 長の関係を示します。
フレーム長

tx_buf[] 長

8 bits1

16 bits

1

17 bits

2

20 bits

2

24 bits

2

32 bits

2

64 bits

4

128 bits

8

256 bits

16

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 614 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_DALI}_GetReceivedFrame
フレームデータとフレーム長を受信します。

［指定形式］
MD_STATUS
rx_num);R_{Config_DALI}_GetReceivedFrame(uint32_t * const rx_buf, uint16_t * const

［引数］
I/O

引数

説明

O

uint32_t * const rx_buf;

受信バッファへのポインタI

uint16_t tx_num;

バッファフレーム長

［戻り値］
マクロ

説明

MD_OK

正常終了

MD_ARGERROR

引数の指定が不正

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 615 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_DALI}_Create_UserInit
DALI 通信（コントロールデバイス）に関するユーザ独自の初期化処理を実行します。
備考

この API 関数は、R_{Config_DALI}_Create のコールバック・ルーチンとして呼び出されます。

［指定形式］
void

R_{Config_DALI}_Create_UserInit(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 616 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_DALI}_interrupt_send
DALI 通信（コントロールデバイス）送信時の 32 ビットデータ終了割り込み（INTTD）に伴う処理を実行します。
備考
本 API 関数は、送信データ長が 32bit より大きい場合にのみ有効です。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_DALI}_interrupt_send(void);

LLVM ツールチェーンの場合
void

r_{Config_DALI}_interrupt_send(void);

IAR ツールチェーンの場合__interrupt static voidr_{Config_DALI}_interrupt_send(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 617 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_DALI}_interrupt_receive
DALI 通信（コントロールデバイス）受信時の 32 ビットデータ終了割り込み（INTTD）に伴う処理を実行します。
備考
本 API 関数は、送信データ長が 32bit より大きい場合にのみ有効です。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_DALI}_interrupt_receive(void);

LLVM ツールチェーンの場合
void

r_{Config_DALI}_interrupt_receive(void);

IAR ツールチェーンの場合__interrupt static voidr_{Config_DALI}_interrupt_receive(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 618 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_DALI}_interrupt_error
DALI 通信（コントロールデバイス）の受信エラー割り込み（INTED）に伴う処理を実行します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_DALI}_interrupt_error(void);

LLVM ツールチェーンの場合
void

r_{Config_DALI}_interrupt_error(void);

IAR ツールチェーンの場合__interrupt static voidr_{Config_DALI}_interrupt_error(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 619 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_DALI}_interrupt_falling_edge_detection
DALI 通信（コントロールデバイス）の立ち下がりエッジ割り込み（INTFED）に伴う処理を実行します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_DALI}_interrupt_falling_edge_detection(void);

LLVM ツールチェーンの場合
void

r_{Config_DALI}_interrupt_falling_edge_detection(void);

IAR ツールチェーンの場合__interrupt static voidr_{Config_DALI}_interrupt_falling_edge_detection(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 620 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_DALI}_interrupt_power_down_detection
DALI 通信（コントロールデバイス）のパワーダウン割り込み（INTBPD）に伴う処理を実行します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_DALI}_interrupt_power_down_detection(void);

LLVM ツールチェーンの場合
void

r_{Config_DALI}_interrupt_power_down_detection(void);

IAR ツールチェーンの場合__interrupt static voidr_{Config_DALI}_interrupt_power_down_detection(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 621 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_DALI}_interrupt_collision_detection
DALI 通信（コントロールデバイス）のコリジョン検出割り込み（INTCLD）に伴う処理を実行します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_DALI}_interrupt_collision_detection(void);

LLVM ツールチェーンの場合
void

r_{Config_DALI}_interrupt_collision_detection(void);

IAR ツールチェーンの場合__interrupt static voidr_{Config_DALI}_interrupt_collision_detection(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 622 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_DALI}_interrupt_stop_bit_detection
DALI 通信（コントロールデバイス）のストップビット検出割り込み（INTSDD）に伴う処理を実行します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_DALI}_interrupt_stop_bit_detection(void);

LLVM ツールチェーンの場合
void

r_{Config_DALI}_interrupt_stop_bit_detection(void);

IAR ツールチェーンの場合__interrupt static voidr_{Config_DALI}_interrupt_stop_bit_detection(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 623 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_DALI}_callback_sendend
ストップビット割込みの検出に伴う処理を実行します。
備考 1

この API 関数は、DALI 通信（コントロールデバイス）ストップビット検出割り込みに伴う処理 r_{Config_DALI}_interrupt_stop_bit_detection のコールバック・ルーチンとして呼び出されます。

備考 2

コールバック関数で必要なフラグの設定／クリアのみを保持し、他の処理コードは、コールバックおよび割り込み関数から移動する必要があります。 それ以外は、割り込みが正しいタイミングで処理されません。

［指定形式］
static voidr_{Config_DALI}_callback_sendend(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 624 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_DALI}_callback_receiveend
ストップビット割込みの検出に伴う処理を実行します。
備考 1

この API 関数は、DALI 通信（コントロールデバイス）ストップビット割り込みに伴う処
理 r_{Config_DALI}_interrupt_stop_bit_detection のコールバック・ルーチンとして呼び出
されます。

備考 2

コールバック関数で必要なフラグの設定／クリアのみを保持し、他の処理コードは、コールバックおよび割り込み関数から移動する必要があります。 それ以外は、割り込みが正しいタイミングで処理されません。

［指定形式］
static voidr_{Config_DALI}_callback_receiveend(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 625 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_DALI}_callback_error
受信エラーの検出に伴う処理を実行します。
備考 1

この API 関数は、DALI 通信（コントロールデバイス）受信エラー割り込みに伴う処理
r_{Config_DALI}_interrupt_error のコールバック・ルーチンとして呼び出されます。

備考 2

コールバック関数で必要なフラグの設定／クリアのみを保持し、他の処理コードは、コールバックおよび割り込み関数から移動する必要があります。 それ以外は、割り込みが正しいタイミングで処理されません。

［指定形式］
static voidr_{Config_DALI}_callback_error(uint16_t err_type);

［引数］
引数

I/O
I

uint16_t err_type;

説明

エラー種別を示す値
Bit 0：マンチェスタフレーミング・エラー
Bit 1：オーバラン・エラー
Bit 2：フレームサイズ違反・エラー
Bit 3：ビットタイミング違反・エラー
Bit 4 ~ 7：0

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 626 of 771

スマート・コンフィグレータ.

4. API 関数

使用例
DALI 通信（コントロールデバイス）が 16 ビットフレームデータを送信し、DALI 通信（コントロール
ギア）がデータを受信する例です。
main.c（DALI 通信（コントロールデバイス））#include "r_smc_entry.h"
uint16_t tx_buf0[] = {0xFF66};
volatile uint8_t sendend_flag = 0U;
void main(void);void main(void){
EI();
R_Config_DALI_Device_Start();
R_Config_DALI_Send(tx_buf0);
while(1U != sendend_flag);
R_Config_DALI_Device_Stop();}main.c（DALI 通信（コントロールギア））#include "r_smc_entry.h"
uint8_t rx_buf0[];
uint8_t rx_buf1[100];
uint8_t p_rx_num = 0U;
uint8_t rx_num = 0U;
volatile uint8_t receiveend_flag = 0U;
void main(void);void main(void){
EI();
R_Config_DALI_Gear_Start();while(1U != receiveend_flag);
if(R_Config_DALI1_GetReceivedFrame(&rx_buf0,&p_rx_num) == MD_OK){
rx_buf1[rx_num]= rx_buf0;
rx_num++;}R_Config_ DALI1_Gear_Stop();}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 627 of 771

スマート・コンフィグレータ.

4. API 関数

Config_DALI_Device_user.c/* Start user code for global. Do not edit comment generated here */extern volatile uint8_t sendend_flag;/* End user code. Do not edit comment generated here */static void r_Config_DALI_Device_callback_sendend (void){/* Start user code for r_Config_DALI_Device_callback_sendend. Do not edit comment generated
here */
sendend_flag++;/* End user code. Do not edit comment generated here */}Config_DALI1_Gear_user.c/* Start user code for global. Do not edit comment generated here */extern volatile uint8_t receiveend_flag;/* End user code. Do not edit comment generated here */static void r_Config_DALI_Gear_callback_receiveend (void){/* Start user code for r_Config_DALI_Gear_callback_receiveend. Do not edit comment generated
here */
receiveend_flag++;/* End user code. Do not edit comment generated here */}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 628 of 771

スマート・コンフィグレータ.

4. API 関数

DALI 通信（コントロールギア）

4.2.50以下に、スマート・コンフィグレータが DALI 通信（コントロールギア）モジュール用として出力する API 関数の一覧を示します。
表 4.57 API 関数
API 関数名

周辺機能
DALI

R_{Config_DALI}_Create

機能概要
DALI 通信（コントロールギア）モジュールを制御する
前に必要な初期化処理を実行します。
DALI 通信（コントロールギア）モジュールの動作を開R_{Config_DALI}_Start

始します。
DALI 通信（コントロールギア）モジュールの動作を終R_{Config_DALI}_Stop

了します。
R_{Config_DALI}_SoftwareResetDALI 通信（コントロールギア）モジュールをリセットします。

R_{Config_DALI}_EnableForceActiveSt

DALITxD0 アサートを有効にし、アサートレベル (アクate

ティブ状態) が Low であることを示します。 DALITxD0端子からの出力を Low にします。

R_{Config_DALI}_DisableForceActiveSt

DALITxD0 アサートを無効にします。内部送信データを

ate

DALITxD0 端子から出力します。

R_{Config_DALI}_GetStatus

DALI 通信（コントロールギア）の状態を取得します。

R_{Config_DALI}_Send

フレームデータを送信します。フレーム長は GUI で設定され、固定値になります。

R_{Config_DALI}_GetReceivedFrame

フレームデータとフレーム長を受信します。

R_{Config_DALI}_Create_UserInit

DALI 通信（コントロールギア）に関するユーザ独自の初期化処理を実行します。

r_{Config_DALI}_interrupt_send

DALI 通信（コントロールギア）送信時の 32 ビットデータ終了割り込み（INTTD）に伴う処理を実行します。

r_{Config_DALI}_interrupt_receive

DALI 通信（コントロールギア）受信時の 32 ビットデータ終了割り込み（INTTD）に伴う処理を実行します。

r_{Config_DALI}_interrupt_error

DALI 通信（コントロールギア）の受信エラー割り込み（INTED）に伴う処理を実行します。

r_{Config_DALI}_interrupt_falling_edge_

DALI 通信（コントロールギア）の立ち下がりエッジ割

detection

り込み（INTFED）に伴う処理を実行します。

r_{Config_DALI}_interrupt_power_down

DALI 通信（コントロールギア）のパワーダウン割り込_detection

み（INTBPD）に伴う処理を実行します。

r_{Config_DALI}_interrupt_collision_det

DALI 通信（コントロールギア）のコリジョン検出割り

ection込み（INTCLD）に伴う処理を実行します。

r_{Config_DALI}_interrupt_stop_bit_det

DALI 通信（コントロールギア）のストップビット検出

ection割り込み（INTSDD）に伴う処理を実行します。

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 629 of 771

スマート・コンフィグレータ.

4. API 関数

表 4.58 API 関数
API 関数名

周辺機能

r_{Config_DALI}_callback_sendend

DALI

機能概要
送信完了の検出に伴う処理を実行します。

r_{Config_DALI}_callback_receiveend

受信完了の検出に伴う処理を実行します。

r_{Config_DALI}_callback_error

受信エラーの検出に伴う処理を実行します。

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 630 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_DALI}_Create
DALI 通信（コントロールギア）モジュールを制御する前に必要な初期化処理を実行します。
備考

この API 関数は、main()関数を実行する前に、R_Systeminit から呼び出されます。

［指定形式］
void

R_{Config_DALI}_Create(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 631 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_DALI}_StartDALI 通信（コントロールギア）モジュールの動作を開始します。

［指定形式］
void

R_{Config_DALI}_Start(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 632 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_DALI}_Stop
DALI 通信（コントロールギア）モジュールの動作を終了します。

［指定形式］
void

R_{Config_DALI}_Stop(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 633 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_DALI}_SoftwareResetDALI 通信（コントロールギア）モジュールをリセットします。

［指定形式］
void

R_{Config_DALI}_SoftwareReset(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 634 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_DALI}_EnableForceActiveStateDALITxD0 アサートを有効にし、アサートレベル (アクティブ状態) が Low であることを示します。
DALITxD0 端子からの出力を Low にします。

［指定形式］
void

R_{Config_DALI}_ EnableForceActiveState (void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 635 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_DALI}_DisableForceActiveStateDALITxD0 アサートを無効にします。内部送信データを DALITxD0 端子から出力します。

［指定形式］
void

R_{Config_DALI}_ DisableForceActiveState (void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 636 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_DALI}_GetStatus
DALI 通信（コントロールギア）の状態を取得します。

［指定形式］
void

R_{Config_DALI}_GetStatus(uint16_t * const status);

［引数］
I/O

引数

O

uint16_t * const status;

説明
DALI 状態レジスタバッファへのポインタ

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 637 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_DALI}_Send
フレームデータを送信します。フレーム長は 8 ビット固定値になります。
備考

この API 関数は、引数 tx_buf で指定されたバッファのデータをレジスタ TDR1L に設定します。 そして、レジスタ TDR1L の送信が完了後、
r_{Config_DALI}_interrupt_stop_bit_detection に入ります。

［指定形式］
void

R_{Config_DALI}_Send(uint8_t tx_buf);

［引数］
引数

I/O
I

説明
送信バッファ

uint8_t tx_buf;

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 638 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_DALI}_GetReceivedFrame
フレームデータとフレーム長を受信します。

［指定形式］
MD_STATUS
rx_num);R_{Config_DALI}_GetReceivedFrame(uint32_t * const rx_buf, uint16_t * const

［引数］
I/O

引数

説明

O

Uint32_t * const rx_buf;

受信バッファへのポインタI

uint16_t tx_num;

バッファフレーム長

［戻り値］
マクロ

説明

MD_OK

正常終了

MD_ARGERROR

引数の指定が不正

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 639 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_DALI}_Create_UserInit
DALI 通信（コントロールギア）に関するユーザ独自の初期化処理を実行します。
備考

この API 関数は、R_{Config_DALI}_Create のコールバック・ルーチンとして呼び出されます。

［指定形式］
void

R_{Config_DALI}_Create_UserInit(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 640 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_DALI}_interrupt_error
DALI 通信（コントロールギア）の受信エラー割り込み（INTED）に伴う処理を実行します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_DALI}_interrupt_error(void);

LLVM ツールチェーンの場合
void

r_{Config_DALI}_interrupt_error(void);

IAR ツールチェーンの場合__interrupt static voidr_{Config_DALI}_interrupt_error(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 641 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_DALI}_interrupt_falling_edge_detection
DALI 通信（コントロールギア）の立ち下がりエッジ割り込み（INTFED）に伴う処理を実行します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_DALI}_interrupt_falling_edge_detection(void);

LLVM ツールチェーンの場合
void

r_{Config_DALI}_interrupt_falling_edge_detection(void);

IAR ツールチェーンの場合__interrupt static voidr_{Config_DALI}_interrupt_falling_edge_detection(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 642 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_DALI}_interrupt_power_down_detection
DALI 通信（コントロールギア）のパワーダウン割り込み（INTBPD）に伴う処理を実行します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_DALI}_interrupt_power_down_detection(void);

LLVM ツールチェーンの場合
void

r_{Config_DALI}_interrupt_power_down_detection(void);

IAR ツールチェーンの場合__interrupt static voidr_{Config_DALI}_interrupt_power_down_detection(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 643 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_DALI}_interrupt_stop_bit_detection
DALI 通信（コントロールギア）のストップビット検出割り込み（INTSDD）に伴う処理を実行します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_DALI}_interrupt_stop_bit_detection(void);

LLVM ツールチェーンの場合
void

r_{Config_DALI}_interrupt_stop_bit_detection(void);

IAR ツールチェーンの場合__interrupt static voidr_{Config_DALI}_interrupt_stop_bit_detection(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 644 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_DALI}_callback_sendend
ストップビット割込みの検出に伴う処理を実行します。
備考 1

この API 関数は、DALI 通信（コントロールギア）ストップビット割り込みに伴う処理
r_{Config_DALI}_interrupt_stop_bit_detection のコールバック・ルーチンとして呼び出さ
れます。

備考 2

コールバック関数で必要なフラグの設定／クリアのみを保持し、他の処理コードは、コールバックおよび割り込み関数から移動する必要があります。 それ以外は、割り込みが正しいタイミングで処理されません。

［指定形式］
static voidr_{Config_DALI}_callback_sendend(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 645 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_DALI}_callback_receiveend
ストップビット割り込みの検出に伴う処理を実行します。
備考 1

この API 関数は、DALI 通信（コントロールギア）ストップビット割り込みに伴う処理
r_{Config_DALI}_interrupt_stop_bit_detection のコールバック・ルーチンとして呼び出さ
れます。

備考 2

コールバック関数で必要なフラグの設定／クリアのみを保持し、他の処理コードは、コールバックおよび割り込み関数から移動する必要があります。 それ以外は、割り込みが正しいタイミングで処理されません。

［指定形式］
static voidr_{Config_DALI}_callback_receiveend(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 646 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_DALI}_callback_error
受信エラーの検出に伴う処理を実行します。
備考 1

この API 関数は、DALI 通信（コントロールギア）受信エラー割り込みに伴う処理
r_{Config_DALI}_interrupt_error のコールバック・ルーチンとして呼び出されます。

備考 2

コールバック関数で必要なフラグの設定／クリアのみを保持し、他の処理コードは、コールバックおよび割り込み関数から移動する必要があります。 それ以外は、割り込みが正しいタイミングで処理されません。

［指定形式］
static voidr_{Config_DALI}_callback_error(uint16_t err_type);

［引数］
引数

I/O
I

uint16_t err_type;

説明

エラー種別を示す値
Bit 0：マンチェスタフレーミング・エラー
Bit 1：オーバラン・エラー
Bit 2：フレームサイズ違反・エラー
Bit 3：ビットタイミング違反・エラー
Bit 4 ~ 7：0

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 647 of 771

スマート・コンフィグレータ.

4. API 関数

使用例
DALI 通信（コントロールデバイス）が 16 ビットフレームデータを送信し、DALI 通信（コントロール
ギア）がデータを受信する例です。
main.c（DALI 通信（コントロールデバイス））#include "r_smc_entry.h"
uint16_t tx_buf0[] = {0xFF66};
volatile uint8_t sendend_flag = 0U;
void main(void);void main(void){
EI();
R_Config_DALI_Device_Start();
R_Config_DALI_Send(tx_buf0);
while(1U != sendend_flag);
R_Config_DALI_Device_Stop();}main.c（DALI 通信（コントロールギア））#include "r_smc_entry.h"
uint8_t rx_buf0[];
uint8_t rx_buf1[100];
uint8_t p_rx_num = 0U;
uint8_t rx_num = 0U;
volatile uint8_t receiveend_flag = 0U;
void main(void);void main(void){
EI();
R_Config_DALI_Gear_Start();while(1U != receiveend_flag);
if(R_Config_DALI1_GetReceivedFrame(&rx_buf0,&p_rx_num) == MD_OK){
rx_buf1[rx_num]= rx_buf0;
rx_num++;}R_Config_ DALI1_Gear_Stop();}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 648 of 771

スマート・コンフィグレータ.

4. API 関数

Config_DALI_Device_user.c/* Start user code for global. Do not edit comment generated here */extern volatile uint8_t sendend_flag;/* End user code. Do not edit comment generated here */static void r_Config_DALI_Device_callback_sendend (void){/* Start user code for r_Config_DALI_Device_callback_sendend. Do not edit comment generated
here */
sendend_flag++;/* End user code. Do not edit comment generated here */}Config_DALI1_Gear_user.c/* Start user code for global. Do not edit comment generated here */extern volatile uint8_t receiveend_flag;/* End user code. Do not edit comment generated here */static void r_Config_DALI_Gear_callback_receiveend (void){/* Start user code for r_Config_DALI_Gear_callback_receiveend. Do not edit comment generated
here */
receiveend_flag++;/* End user code. Do not edit comment generated here */}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 649 of 771

スマート・コンフィグレータ.

4.2.51

4. API 関数

IIC 通信(マスタ・モード)（シリアル・アレイ・ユニット）

以下に、スマート・コンフィグレータが IIC 通信の簡易 IIC 用として出力する API 関数の一覧を示します。
表 4.59 IIC 通信(マスタ・モード)（シリアル・アレイ・ユニット）用 API 関数
API 関数名
R_{Config_IICr}_Create

周辺機能

機能概要

シリアル・アレ

IICr マスタ・モジュールを制御する前に必要な初期化処

イ・ユニット理を実行します。

R_{Config_IICr}_StartCondition

IICr スタート・コンディションを発行します。

R_{Config_IICr}_StopCondition

IICr ストップ・コンディションを発行します。

R_{Config_IICr}_Stop

IICr モジュールを停止します。

R_{Config_IICr}_Master_Send

マスタ・モードで IICr データ送信を開始します。

R_{Config_IICr}_Master_Receive

マスタ・モードで IICr データ受信を開始します。

R_{Config_IICr}_Create_UserInit

IICr に関するユーザ独自の初期化処理を実行します。

r_{Config_IICr}_interrupt

INTIICr 転送完了割り込みに伴う処理を実行します。

r_{Config_IICr}_callback_master_sende

IICr マスタ送信完了の検出に伴う処理を実行します。

ndr_{Config_IICr}_callback_master_receiv

IICr マスタ受信完了の検出に伴う処理を実行します。

eendr_{Config_IICr}_callback_master_error

R20UT4852JJ0105
2024.07.22

Rev.1.05

IICr マスタ転送エラーの検出に伴う処理を実行します。

Page 650 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_IICr}_Create
IICr マスタ・モードを制御する前に必要な初期化処理を実行します。
備考 1.

この API 関数は、R_SAUm_Create から呼び出されます。

備考 2.

m＝0 のとき r＝00, 01, 10, 11
m＝1 のとき r＝20, 21, 30, 31［指定形式］
void

R_{Config_IICr}_Create(void);

備考

r＝00, 01, 10, 11, 20, 21, 30, 31

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 651 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_IICr}_StartCondition
IICr スタート・コンディションを発行します。
備考

この API 関数は、R_{Config_IICr}_StartCondition および R_{Config_IICr}_StopConditionの内部関数として使用されます。

［指定形式］
void

R_{Config_IICr}_StartCondition(void);

備考

r＝00, 01, 10, 11, 20, 21, 30, 31

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 652 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_IICr}_StopCondition
IICr ストップ・コンディションを発行します。

［指定形式］
void

R_{Config_IICr}_StopCondition(void);

備考

r＝00, 01, 10, 11, 20, 21, 30, 31

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 653 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_IICr}_Stop
IICr モジュールを停止します。

［指定形式］
void

R_{Config_IICr}_Stop(void);

備考

r＝00, 01, 10, 11, 20, 21, 30, 31

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 654 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_IICr}_Master_Send
マスタ・モードで IICr データ送信を開始します。
備考 1.

この API 関数は、引数 tx_buf で指定されたバッファから 1 バイト単位の IICA マスタ送
信を、引数 tx_num で指定された回数分繰り返します。

備考 2.

この API を呼び出す前に、通信が停止／一時停止され、SDA／SCL がハイ・レベルであることを確認してください。

［指定形式］
void

R_{Config_IICr}_Master_Send(uint8_t adr, uint8_t * const tx_buf, uint16_t tx_num);

備考

r＝00, 01, 10, 11, 20, 21, 30, 31

［引数］
引数

I/O

説明

I

uint8_t adr;

スレーブ・アドレスI

uint8_t * const tx_buf;

送信するデータを格納したバッファへのポインタI

uint16_t tx_num;

送信するデータの総数

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 655 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_IICr}_Master_Receive
マスタ・モードで IICr データ受信を開始します。
備考 1.

この API 関数は、1 バイト単位の IICA マスタ受信を引数 rx_num で指定された回数分繰
り返し、引数 rx_buf で指定されたバッファに格納します。

備考 2.

この API を呼び出す前に、通信が停止／一時停止され、SDA／SCL がハイ・レベルであることを確認してください。

［指定形式］
void

R_{Config_IICr}_Master_Receive(uint8_t adr, uint8_t * const rx_buf, uint16_t rx_num);

備考

r＝00, 01, 10, 11, 20, 21, 30, 31

［引数］
引数

I/O

説明

I

uint8_t adr;

スレーブ・アドレスO

uint8_t * const rx_buf;

受信したデータを格納するバッファへのポインタ

O

uint16_t rx_num;

受信するデータの総数

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 656 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_IICr}_Create_UserInit
IICr に関するユーザ独自の初期化処理を実行します。
備考

この API 関数は、R_{Config_IICr}_Create のコールバック・ルーチンとして呼び出されます。

［指定形式］
void

R_{Config_IICr}_Create_UserInit(void);

備考

r＝00, 01, 10, 11, 20, 21, 30, 31

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 657 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_IICr}_interrupt
INTIICr 転送完了割り込みに伴う処理を実行します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_IICr}_interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_IICr}_interrupt(void);

IAR ツールチェーンの場合__interrupt static void
備考

r_{Config_IICr}_interrupt(void);

r＝00, 01, 10, 11, 20, 21, 30, 31

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 658 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_IICr}_callback_master_sendend
IICr マスタ送信完了の検出に伴う処理を実行します。
備考 1

この API 関数は、INTIICr 転送完了割り込み処理 r_{Config_IICr}_interrupt のコールバッ
ク・ルーチンとして呼び出されます。

備考 2

コールバック関数で必要なフラグの設定／クリアを維持し、他の処理コードをコールバ
ックおよび割り込み関数から移動することに注意してください。それ以外は、割り込みが正しいタイミングで処理されません。

［指定形式］
static voidr_{Config_IICr}_callback_master_sendend(void);

備考

r＝00, 01, 10, 11, 20, 21, 30, 31

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 659 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_IICr}_callback_master_receiveend
IICr マスタ受信完了の検出に伴う処理を実行します。
備考 1

この API 関数は、INTIICr 転送完了割り込み処理 r_{Config_IICr}_interrupt のコールバッ
ク・ルーチンとして呼び出されます。

備考 2

コールバック関数で必要なフラグの設定／クリアを維持し、他の処理コードをコールバ
ックおよび割り込み関数から移動することに注意してください。それ以外は、割り込みが正しいタイミングで処理されません。

［指定形式］
static voidr_{Config_IICr}_callback_master_receiveend(void);

備考

r＝00, 01, 10, 11, 20, 21, 30, 31

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 660 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_IICr}_callback_master_error
IICr マスタ転送エラーの検出に伴う処理を実行します。
備考 1

この API 関数は、INTIICr 転送完了割り込み処理 r_{Config_IICr}_interrupt のコールバッ
ク・ルーチンとして呼び出されます。

備考 2

コールバック関数で必要なフラグの設定／クリアを維持し、他の処理コードをコールバ
ックおよび割り込み関数から移動することに注意してください。それ以外は、割り込みが正しいタイミングで処理されません。

［指定形式］
static voidr_{Config_IICr}_callback_error(MD_STATUS flag);

備考

r＝00, 01, 10, 11, 20, 21, 30, 31

［引数］
引数

I/O
I

MD_STATUS flag;

説明ステータス・フラグ
MD_NACK：NACK エラー
MD_OVERRUN：オーバラン・エラー

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 661 of 771

スマート・コンフィグレータ.

4. API 関数

使用例
IICA0 スレーブとの IIC0 マスタ通信例です（IIC0 マスタ送信およびマスタ受信モードを含む）。
main.c#include "r_smc_entry.h"
uint8_t tx_buf[6] = {0xA5,0x3F,0xC0,0x5C,0xB6,0x37};
uint8_t rx_buf1[6] = {0x00,0x00,0x00,0x00,0x00,0x00};
uint8_t rx_buf2[6] = {0x00,0x00,0x00,0x00,0x00,0x00};
volatile uint8_t transmitend_flag = 0U;
volatile uint8_t receiveend_flag = 0U;
void main(void);void main(void){
EI();
R_Config_IIC00_StartCondition();
R_Config_IIC00_Master_Receive(0x24,rx_buf1,sizeof(rx1_buf));
R_Config_IICA1_Slave_Send(tx_buf,sizeof(tx_buf));while(receiveend_flag != 1);
transmitend = 0;
receiveend = 0;
R_Config_IIC00_StopCondition();
R_Config_IIC00_StartCondition();
R_Config_IICA1_Slave_Receive(rx_buf2, sizeof(rx_buf2));
R_Config_IIC00_Master_Send(0x24, tx_buf,sizeof(tx_buf));while(receiveend_flag != 1);
transmitend_flag = 0;
receiveend_flag = 0;
R_Config_IIC00_StopCondition();
R_Config_IIC00_Stop();
R_Config_IICA0_Stop();}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 662 of 771

スマート・コンフィグレータ.

4.2.52

4. API 関数

IIC 通信(マスタ・モード)（シリアル・インタフェース IICA）

以下に、スマート・コンフィグレータが IIC 通信の IICA マスタ・モード用として出力する API 関数の一覧を示します。
表 4.60 IIC 通信(マスタ・モード)（シリアル・インタフェース IICA）用 API 関数
API 関数名
R_{Config_IICAn}_Create

周辺機能

機能概要

シリアル・インタ

IICAn マスタ・モジュールを制御する前に必要な初期化

フェース IICA

処理を実行します。

R_{Config_IICAn}_StopCondition

IICAn ストップ・コンディションを発行します。

R_{Config_IICAn}_Stop

IICAn マスタの動作を停止します。

R_{Config_IICAn}_Master_Send

マスタ・モードでデータ送信を開始します。

R_{Config_IICAn}_Master_Receive

マスタ・モードでデータ受信を開始します。

R_{Config_IICAn}_Create_UserInit

IICAn に関するユーザ独自の初期化処理を実行します。

r_{Config_IICAn}_interrupt

IICAn 通信割り込み（INTIICAn）に伴う処理を実行します。

r_{Config_IICAn}_master_handler

マスタ・モードでの IICAn データの送受信およびエラーを制御します。

r_{Config_IICAn}_callback_master_sen

マスタ送信完了の検出に伴う処理を実行します。

dendr_{Config_IICAn}_callback_master_rece

マスタ受信完了の検出に伴う処理を実行します。

iveendr_{Config_IICAn}_callback_master_error

マスタ・モードでのエラー検出に伴う処理を実行します。

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 663 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_IICAn}_Create
IICAn マスタ・モジュールを制御する前に必要な初期化処理を実行します。
備考

この API 関数は、main()関数を実行する前に、R_Systeminit から呼び出されます。

［指定形式］
void

R_{Config_IICAn}_Create(void);

備考

n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 664 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_IICAn}_StopCondition
IICAn ストップ・コンディションを発行します。

［指定形式］
void

R_{Config_IICAn}_StopCondition(void);

備考

n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 665 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_IICAn}_Stop
IICAn マスタの動作を停止します。

［指定形式］
void

R_{Config_IICAn}_Stop(void);

備考

n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 666 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_IICAn}_Master_Send
マスタ・モードでデータ送信を開始します。

［指定形式］
void R_{Config_IICAn}_Master_Send(uint8_t adr, uint8_t * const tx_buf, uint16_t tx_num, uint8_twait);
備考

n はチャネル番号を示します。

［引数］
引数

I/O

説明

I

uint8_t adr;

送信アドレスI

uint8_t * const tx_buf;

送信するデータを格納したバッファへのポインタI

uint16_t tx_num;

送信するバイト数I

uint8_t wait;

スタート・コンディション待ち

［戻り値］
マクロ

説明

MD_OK

正常終了

MD_ERROR1

バスビジー

MD_ERROR2

引数 adr の指定が不正

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 667 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_IICAn}_Master_Receive
マスタ・モードでデータ受信を開始します。

［指定形式］
void
R_{Config_IICAn}_Master_Receive(uint8_t adr, uint8_t * const rx_buf, uint16_t rx_num,
uint8_t wait);
備考

n はチャネル番号を示します。

［引数］
引数

I/O

説明

I

uint8_t adr;

受信アドレスO

uint8_t * const rx_buf;

受信したデータを格納したバッファへのポインタ

O

uint16_t rx_num;

受信するバイト数

uint8_t wait

スタート・コンディション待ち

［戻り値］
マクロ

説明

MD_OK

正常終了

MD_ERROR1

バスビジー

MD_ERROR2

引数 adr の指定が不正

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 668 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_IICAn}_Create_UserInit
IICAn に関するユーザ独自の初期化処理を実行します。
備考

この API 関数は、R_{Config_IICAn}_Create のコールバック・ルーチンとして呼び出されます。

［指定形式］
void

R_{Config_IICAn}_Create_UserInit(void);

備考

n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 669 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_IICAn}_interrupt
IICAn 通信割り込み（INTIICAn）に伴う処理を実行します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_IICAn}_interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_IICAn}_interrupt(void);

IAR ツールチェーンの場合__interrupt static void
備考

r_{Config_IICAn}_interrupt(void);n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 670 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_IICAn}_master_handler
マスタ・モードでの IICAn データの送受信およびエラーを制御します。
備考

この API 関数は、IICAn 通信割り込みに伴う処理 r_{Config_ IICAn}_interrupt のコールバ
ック・ルーチンとして呼び出されます。

［指定形式］
void

R_{Config_IICAn}_master_handler(void);

備考

n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 671 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_IICAn}_callback_master_sendend
マスタ送信完了の検出に伴う処理を実行します。
備考 1

この API 関数は、割り込み処理 r_{Config_IICAn}_slave_handler のコールバック・ルー
チンとして呼び出されます。

備考 2

コールバック関数で必要なフラグの設定／クリアを維持し、他の処理コードをコールバ
ックおよび割り込み関数から移動することに注意してください。それ以外は、割り込みが正しいタイミングで処理されません。

［指定形式］
static voidr_{Config_IICAn}_callback_master_sendend(void);

備考

n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 672 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_IICAn}_callback_master_receiveend
マスタ受信完了の検出に伴う処理を実行します。
備考 1

この API 関数は、割り込み処理 r_{Config_IICAn}_slave_handler のコールバック・ルー
チンとして呼び出されます。

備考 2

コールバック関数で必要なフラグの設定／クリアを維持し、他の処理コードをコールバ
ックおよび割り込み関数から移動することに注意してください。それ以外は、割り込みが正しいタイミングで処理されません。

［指定形式］
static voidr_{Config_IICAn}_callback_master_receiveend(void);

備考

n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 673 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_IICAn}_callback_master_error
マスタ・モードでのエラー検出に伴う処理を実行します。
備考 1

この API 関数は、割り込み処理 r_{Config_IICAn}_slave_handler のコールバック・ルー
チンとして呼び出されます。

備考 2

コールバック関数で必要なフラグの設定／クリアを維持し、他の処理コードをコールバ
ックおよび割り込み関数から移動することに注意してください。それ以外は、割り込みが正しいタイミングで処理されません。

［指定形式］
static voidr_{Config_IICAn}_callback_master_error(MD_STATUS flag);

備考

n はチャネル番号を示します。

［引数］
引数

I/O
I

MD_STATUS flag;

説明ステータス・フラグ
MD_NACK：NACK エラー
MD_SPT：バスビジー・エラー

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 674 of 771

スマート・コンフィグレータ.

4. API 関数

使用例
ICA1 スレーブとの IICA0 マスタ通信例です（送信モードと受信モードの両方を含む）。
main.c#include "r_smc_entry.h"
uint8_t tx_buf[6] = {0xA5,0x3F,0xC0,0x5C,0xB6,0x37};
uint8_t rx_buf1[6] = {0x00,0x00,0x00,0x00,0x00,0x00};
uint8_t rx_buf2[6] = {0x00,0x00,0x00,0x00,0x00,0x00};
volatile uint8_t transmitend_flag = 0U;
volatile uint8_t receiveend_flag = 0U;
void main(void);void main(void){
EI();
R_Config_IICA1_Slave_Receive(rx_buf1, sizeof(tx_buf));
R_Config_IICA0_Master_Send(0x24, tx_buf,sizeof(tx_buf),100);
while(receiveend_flag != 1);
transmitend_flag = 0;
receiveend_flag = 0;
R_Config_IICA0_Master_Receive(0x24, rx_buf2, sizeof(rx_buf2),100);
R_Config_IICA1_Slave_Send(tx_buf, sizeof(tx_buf));while(receiveend_flag != 1);
transmitend_flag = 0;
receiveend_flag = 0;
R_Config_IICA0_Stop();
R_Config_IICA1_Stop();}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 675 of 771

スマート・コンフィグレータ.

4.2.53

4. API 関数

IIC 通信(スレーブ・モード)（シリアル・インタフェース IICA）

以下に、スマート・コンフィグレータが IIC 通信の IICA スレーブ・モード用として出力する API 関数の一覧を示します。
表 4.61 IIC 通信(スレーブ・モード)（シリアル・インタフェース IICA）用 API 関数
API 関数名
R_{Config_IICAn}_Create

周辺機能

機能概要

シリアル・インタ

IICAn スレーブ・モジュールを制御する前に必要な初期フェース IICA

化処理を実行します。

R_{Config_IICAn}_Stop

IICAn スレーブの動作を終了します。

R_{Config_IICAn}_Slave_Send

スレーブ・モードでデータ送信を開始します。

R_{Config_IICAn}_Slave_Receive

スレーブ・モードでデータ受信を開始します。

R_{Config_IICAn}_Set_WakeupOn

STOP モード時のアドレス一致ウエイクアップ機能の動作を許可します。

R_{Config_IICAn}_Set_WakeupOff

STOP モード時のアドレス一致ウエイクアップ機能の動作を停止します。

R_{Config_IICAn}_Create_UserInit

IICAn に関するユーザ独自の初期化処理を実行します。

r_{Config_IICAn}_interrupt

IICAn 通信割り込み（INTIICAn）に伴う処理を実行します。

r_{Config_IICAn}_slave_handler

スレーブ・モードでの IICAn データの送受信およびエラーを制御します。

r_{Config_IICAn}_callback_slave_sende

スレーブ送信完了の検出に伴う処理を実行します。

ndr_{Config_IICAn}_callback_slave_receiv

スレーブ受信完了の検出に伴う処理を実行します。

eendr_{Config_IICAn}_callback_slave_error

スレーブ・モードでのエラー検出に伴う処理を実行します。

r_{Config_IICAn}_callback_getstopcondi

スレーブ停止条件の取得に伴う処理を実行します。

tion

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 676 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_IICAn}_Create
IICAn スレーブ・モジュールを制御する前に必要な初期化処理を実行します。
備考

この API 関数は、main()関数を実行する前に、R_Systeminit から呼び出されます。

［指定形式］
void

R_{Config_IICAn}_Create(void);

備考

n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 677 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_IICAn}_Stop
IICAn モジュールの動作を終了します。

［指定形式］
void

R_{Config_IICAn}_Stop(void);

備考

n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 678 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_IICAn}_Slave_Send
スレーブ・モードでデータ送信を開始します。
備考

通信完了時に停止条件を出さずにマスタを再起動した場合は、スレーブ・デバイスの対応するスレーブ機能の呼び出しに注意してください。
例えば、マスタ・デバイスでは、R_ {Config_IICAn} _Master_Receive 関数が呼び出されて通信が再開され、R_{Config_IICAn}_Slave_Send 関数がスレーブ・デバイスで呼び出されます。つまり、マスタ API とスレーブ API をペアで呼び出す必要があり、それ以外の場合、IICA 操作は保証されません。

［指定形式］
void

R_{Config_IICAn}_Slave_Send(uint8_t * const tx_buf, uint16_t tx_num);

備考

n はチャネル番号を示します。

［引数］
I/O

引数

説明

I

uint8_t * const tx_buf;

送信するデータを格納したバッファへのポインタI

uint16_t tx_num;

送信するバイト数［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 679 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_IICAn}_Slave_Receive
スレーブ・モードでデータ受信を開始します。
備考

通信完了時に停止条件を出さずにマスタを再起動した場合は、スレーブ・デバイスの対応するスレーブ機能の呼び出しに注意してください。
例えば、マスタ・デバイスでは、R_ {Config_IICAn} _Master_Receive 関数が呼び出されて通信が再開され、R_{Config_IICAn}_Slave_Send 関数がスレーブ・デバイスで呼び出されます。つまり、マスタ API とスレーブ API をペアで呼び出す必要があり、それ以外の場合、IICA 操作は保証されません。

［指定形式］
void

R_{Config_IICAn}_Slave_Receive(uint8_t * const rx_buf, uint16_t rx_num);

備考

n はチャネル番号を示します。

［引数］
I/O

引数

説明

O

uint8_t * const rx_buf;

受信したデータを格納したバッファへのポインタ

O

uint16_t rx_num;

受信するバイト数［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 680 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_IICAn}_Set_WakeupOn
STOP モード時のアドレス一致ウエイクアップ機能の動作を許可します。

［指定形式］
void

R_{Config_IICAn}_Set_WakeupOn(void);

備考

n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 681 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_IICAn}_Set_WakeupOff
STOP モード時のアドレス一致ウエイクアップ機能の動作を停止します。

［指定形式］
void

R_{Config_IICAn}_Set_WakeupOff(void);

備考

n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 682 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_IICAn}_Create_UserInit
IICAn に関するユーザ独自の初期化処理を実行します。
備考

この API 関数は、R_{Config_IICAn}_Create のコールバック・ルーチンとして呼び出されます。

［指定形式］
void

R_{Config_IICAn}_Create_UserInit(void);

備考

n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 683 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_IICAn}_interrupt
IICAn 通信割り込み（INTIICAn）に伴う処理を実行します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_IICAn}_interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_IICAn}_interrupt(void);

IAR ツールチェーンの場合__interrupt static void
備考

r_{Config_IICAn}_interrupt(void);n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 684 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_IICAn}_slave_handler
スレーブ・モードでの IICAn データの送受信およびエラーを制御します。
備考 1

この API 関数は、IICAn 通信割り込みに伴う処理 r_{Config_ IICAn}_interrupt のコールバ
ック・ルーチンとして呼び出されます。

備考 2

スマート・コンフィグレータは、g_iican_slave_status_flag を使用してユーザープログラ
ムフローを制御します。g_iica0_slave_status_flag の初期化は、
R_{Config_IICAn}_Slave_Send 関数と R_{Config_IICAn}_Slave_Receive 関数にあります。

［指定形式］
void

R_{Config_IICAn}_slave_handler(void);

備考

n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 685 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_IICAn}_callback_slave_sendend
スレーブ送信完了の検出に伴う処理を実行します。
備考 1

この API 関数は、割り込み処理 r_{Config_IICAn}_slave_handler のコールバック・ルー
チンとして呼び出されます。

備考 2

コールバック関数で必要なフラグの設定／クリアを維持し、他の処理コードをコールバ
ックおよび割り込み関数から移動することに注意してください。 それ以外は、次の割り込みが正しいタイミングで処理されません。

［指定形式］
static voidr_{Config_IICAn}_callback_slave_sendend(void);

備考

n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 686 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_IICAn}_callback_slave_receiveend
スレーブ受信完了の検出に伴う処理を実行します。
備考 1

この API 関数は、割り込み処理 r_{Config_IICAn}_slave_handler のコールバック・ルー
チンとして呼び出されます。

備考 2

コールバック関数で必要なフラグの設定／クリアを維持し、他の処理コードをコールバ
ックおよび割り込み関数から移動することに注意してください。 それ以外は、次の割り込みが正しいタイミングで処理されません。

［指定形式］
static voidr_{Config_IICAn}_callback_slave_receiveend(void);

備考

n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 687 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_IICAn}_callback_slave_error
スレーブ・モードでのエラー検出に伴う処理を実行します。
備考 1

この API 関数は、割り込み処理 r_{Config_IICAn}_slave_handler のコールバック・ルー
チンとして呼び出されます。

備考 2

コールバック関数で必要なフラグの設定／クリアを維持し、他の処理コードをコールバ
ックおよび割り込み関数から移動することに注意してください。 それ以外は、次の割り込みが正しいタイミングで処理されません。

［指定形式］
static voidr_{Config_IICAn}_callback_slave_error(MD_STATUS flag);

備考

n はチャネル番号を示します。

［引数］
引数

I/O
I

MD_STATUS flag;

説明ステータス・フラグ
MD_NACK：ACK エラー検出

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 688 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_IICAn}_callback_getstopcondition
スレーブ停止条件の取得に伴う処理を実行します。
備考 1

この API 関数は、割り込み処理 r_{Config_IICAn}_slave_handler のコールバック・ルー
チンとして呼び出されます。

備考 2

コールバック関数で必要なフラグの設定／クリアを維持し、他の処理コードをコールバ
ックおよび割り込み関数から移動することに注意してください。 それ以外は、次の割り込みが正しいタイミングで処理されません。

［指定形式］
static voidr_{Config_IICAn}_callback_getstopcondition(void);

備考

n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 689 of 771

スマート・コンフィグレータ.

4. API 関数

使用例
シリアル・アレイ・ユニット IIC マスタ・モードの使用例を参照してください。

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 690 of 771

スマート・コンフィグレータ.

4.2.544. API 関数

割り込みコントローラ

以下に、スマート・コンフィグレータが割り込みコントローラ用として出力する API 関数の一覧を示します。
表 4.62 割り込みコントローラ用 API 関数
API 関数名

周辺機能

R_{Config_INTC}_Create

割り込み機能機能概要
INTC モジュールを制御する前に必要な初期化処理を実行します。

R_{Config_INTC}_INTPn_Start

INTPn 割り込みフラグをクリアし、割り込みを許可します。

R_{Config_INTC}_INTPn_Stop

INTPn 割り込みを禁止し、割り込みフラグをクリアします。

R_{Config_INTC}_Create_UserInit

INTC モジュールに関するユーザ独自の初期化処理を実行します。

r_{Config_INTC}_intpn_interrupt

R20UT4852JJ0105
2024.07.22

Rev.1.05

INTPn 割り込みに伴う処理を実行します。

Page 691 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_INTC}_Create
INTC モジュールを制御する前に必要な初期化処理を実行します。
備考

この API 関数は、main()関数を実行する前に、R_Systeminit から呼び出されます。

［指定形式］
void

R_{Config_INTC}_Create(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 692 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_INTC}_INTPn_Start
INTPn 割り込みフラグをクリアし、割り込みを許可します。

［指定形式］
void

R_{Config_INTC}_INTPn_Start(void);

備考

n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 693 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_INTC}_INTPn_Stop
INTPn 割り込みを禁止し、割り込みフラグをクリアします。

［指定形式］
void

R_{Config_INTC}_INTPn_Stop(void);

備考

n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 694 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_INTC}_Create_UserInit
INTC コントローラに関するユーザ独自の初期化処理を実行します。
備考

この API 関数は、R_{Config_INTC}_Create のコールバック・ルーチンとして呼び出されます。

［指定形式］
void

R_{Config_INTC}_Create_UserInit(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 695 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_INTC}_intpn_interrupt
INTPn 割り込みに伴う処理を実行します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_INTC}_intpn_interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_INTC}_intpn_interrupt(void);

IAR ツールチェーンの場合__interrupt static void
備考

r_{Config_INTC}_intpn_interrupt(void);n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 696 of 771

スマート・コンフィグレータ.

4. API 関数

使用例
INTP0 の有効なエッジ入力を検出するときにフラグを設定する例です。
main.c#include "r_smc_entry.h"
extern uint8_t intp0_int_flag;
void main(void);void main(void){
EI();
intp0_int_flag = 0U;
R_Config_INTC_INTP0_Start ();while(intp0_int_flag != 1U);
R_Config_ INTC_INTP0_Stop ();}Config_INTC_user.c/* Start user code for global. Do not edit comment generated here */uint8_t intp0_int_flag = 0U/* End user code. Do not edit comment generated here */static void __near r_Config_INTC_intp0_interrupt(void){/* Start user code for r_Config_INTC_intp0_interrupt. Do not edit comment generated here *//* Set the flag */intp0_int_flag = 1U;/* End user code. Do not edit comment generated here */}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 697 of 771

スマート・コンフィグレータ.

4.2.55

4. API 関数

電圧検出回路以下に、スマート・コンフィグレータが電圧検出回路用として出力する API 関数の一覧を示します。
表 4.63 電圧検出回路用 API 関数
API 関数名

周辺機能

R_{Config_LVDn}_Create

電圧検出回路

機能概要
電圧検出回路モジュールを制御する前に必要な初期化処理を実行します。

R_{Config_LVDn}_Start

電圧検出回路の動作を開始します。

R_{Config_LVDn}_Stop

電圧検出回路の動作を終了します。

R_{Config_LVDn}_Create_UserInit

電圧検出回路に関するユーザ独自の初期化処理を実行します。

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 698 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_LVDn}_Create
電圧検出回路モジュールを制御する前に必要な初期化処理を実行します。
備考

この API 関数は、main()関数を実行する前に、R_Systeminit から呼び出されます。

［指定形式］
void

R_{Config_LVDn}_Create(void);

備考

n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 699 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_LVDn}_Start
電圧検出回路の動作を開始します。

［指定形式］
void

R_{Config_LVDn}_Start(void);

備考

n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 700 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_LVDn}_Stop
電圧検出回路の動作を終了します。

［指定形式］
void

R_{Config_LVDn}_Stop(void);

備考

n はチャネル番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 701 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_LVDn}_Create_UserInit
電圧検出回路に関するユーザ独自の初期化処理を実行します。
備考

この API 関数は、R_{Config_LVDn}_Create のコールバック・ルーチンとして呼び出されます。

［指定形式］
void

R_{Config_LVDn}_Create_UserInit(void);

備考n はユニット番号を示します。

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 702 of 771

スマート・コンフィグレータ.

4. API 関数

使用例
割り込みモードで動作する LVD の例です。
main.c#include "r_smc_entry.h"void main(void);void main(void){
EI();
R_LVD_Start_Interrupt();
R_ Config_LVD1_Start();}r_cg_lvd_common_user.cstatic void __near r_lvd_interrupt(void){/* Start user code for r_lvd_interrupt. Do not edit comment generated here *//*Clear Flag*/DLVD1FCLR = 1U;/* End user code. Do not edit comment generated here */}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 703 of 771

スマート・コンフィグレータ.

4.2.56

4. API 関数

SNOOZE モード・シーケンサ

以下に、スマート・コンフィグレータが SNOOZE モード・シーケンサ用として出力する API 関数の一覧を示します。
表 4.64 SNOOZE モード・シーケンサ用 API 関数
API 関数名
R_{Config_SMS}_Create

周辺機能

機能概要

SNOOZE モード・

SMS の構成、SMS 命令のコピー、SMS データのコピ

シーケンサ

ーなど、SMS モジュールを制御する前に必要な初期化処理を実行します。
引数から SMS データを設定し、SMS モジュールの動

R_{Config_SMS}_Start

作を開始します。
R_{Config_SMS}_Stop

SMS モジュールの動作を終了します。

R_{Config_SMS}_GetStatus

SMS ウエイクアップ・ステータスをチェックします。

R_{Config_SMS}_GetReturn

SMS データを返します。

R_{Config_SMS}_TriggerWait_Disable

トリガ・ウエイト動作を禁止します。

R_{Config_SMS}_TriggerWait_Enable

トリガ・ウエイト動作を許可します。

R_{Config_SMS}_Set_PowerOn

SMS モジュールへのクロック供給を開始します。

R_{Config_SMS}_Set_PowerOff

SMS モジュールへのクロック供給を停止します。

R_{Config_SMS}_Set_Reset

SMS モジュールをリセット状態にします。

R_{Config_SMS}_Release_Reset

SMS モジュールのリセット状態を解除します。

R_{Config_SMS}_Create_UserInit

SMS モジュールに関するユーザ独自の初期化処理を実行します。
INTSMSE 割り込みに伴う処理を実行します。

r_{Config_SMS}_interrupt

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 704 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_SMS}_Create
SMS の構成、SMS 命令のコピー、SMS データのコピーなど、SMS モジュールを制御する前に必要な初期化処理を実行します。
備考

この API 関数は、main()関数を実行する前に、R_Systeminit から呼び出されます。

［指定形式］
void

R_{Config_SMS}_Create(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 705 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_SMS}_Start
引数から SMS データを設定し、SMS モジュールの動作を開始します。

［指定形式］
void

R_{Config_SMS}_Start(void);void

R_{Config_SMS}_Start(uint16_t arg1, uint16_t arg2, ……, uint16_t argn);

備考 1.

備考 2.

本 API 関数の引数の数は、Start Block の設定により異なります。たとえば、Start Block
設定に 3 つの引数があれば、この API 関数は R_{Config_SMS}_Start(uint16_t arg1,
uint16_t arg2, uint16_t arg3)となります。
n≦14

［引数］
引数

I/O
I

SMS 開始データ（n≦14）

uint16_t argn;

備考

説明

n＝1～14［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 706 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_SMS}_Stop
SMS モジュールの動作を終了します。

［指定形式］
void

R_{Config_SMS}_Stop(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 707 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_SMS}_GetStatus
SMS ウエイクアップ・ステータスをチェックします。

［指定形式］
uint8_t

R_{Config_SMS}_GetStatus(void);

［引数］
なし

［戻り値］
マクロ
g_sms_finish_flag

説明
SMS 終了フラグ
0：ウエイクアップしない
1：ウエイクアップする

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 708 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_SMS}_GetReturn
SMS データを返します。

［指定形式］
void

R_{Config_SMS}_GetReturn(void);void

R_{Config_SMS}_GetReturn(uint16_t *p_ret1, uint16_t *p_ret2, …..., uint16_t *p_retn);

備考 1.

備考 2.

本 API 関数の引数の数は、Wake Up Block の設定により異なります。たとえば、Wake
Up Block 設 定 に 2 つ の 引 数 が あ れ ば 、 こ の API 関 数 は
R_{Config_SMS}_GetReturn(uint16_t *p_ret1, uint16_t *p_ret2)となります。
n≦14

［引数］
引数

I/O
I

uint16_t *p_retn;

備考

n＝1～14

説明
SMS が返すデータ（n≦14）

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 709 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_SMS}_TriggerWait_Disable
トリガ・ウエイト動作を禁止します。

［指定形式］
void

R_{Config_SMS}_TriggerWait_Disable(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 710 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_SMS}_TriggerWait_Enable
トリガ・ウエイト動作を許可します。

［指定形式］
void

R_{Config_SMS}_TriggerWait_Enable(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 711 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_SMS}_Set_PowerOn
SMS モジュールへのクロック供給を開始します。

［指定形式］
void

R_{Config_SMS}_Set_PowerOn(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 712 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_SMS}_Set_PowerOff
SMS モジュールへのクロック供給を停止します。

［指定形式］
void

R_{Config_SMS}_Set_PowerOff(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 713 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_SMS}_Set_Reset
SMS モジュールをリセット状態にします。

［指定形式］
void

R_{Config_SMS}_Set_Reset(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 714 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_SMS}_Release_Reset
SMS モジュールのリセット状態を解除します。

［指定形式］
void

R_{Config_SMS}_Release_Reset(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 715 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_SMS}_Create_UserInit
SMS モジュールに関するユーザ独自の初期化処理を実行します。
備考

この API 関数は、R_{Config_SMS}_Create のコールバック・ルーチンとして呼び出されます。

［指定形式］
void

R_{Config_SMS}_Create_UserInit(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 716 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_SMS}_interrupt
INTSMSE 割り込みに伴う処理を実行します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_SMS}_interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_SMS}_interrupt(void);

IAR ツールチェーンの場合__interrupt static voidr_{Config_SMS}_interrupt(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 717 of 771

スマート・コンフィグレータ.

4. API 関数

使用例
SMS を使用して A/D 変換結果を読み取る例です。
main.c#include "r_smc_entry.h"
uint8_t g_sms_finish_flag;
uint16_t adc_single_chl = 0x7890;
void main(void);void main(void){
EI();// Set SMS as sequencer stopped state
R_Config_ SMS_TriggerWait_Enable();R_Config_SMS_Start ((uint16_t)&adc_single_chl, (uint16_t)&adc_single_chl);// Set SMS as sequencer operating state
R_Config_ SMS_TriggerWait_Disable();STOP ();
while (g_sms_finish_flag != 1);
g_sms_finish_flag = 0;
R_Config_SMS_Stop ();}Config_SMS_user.c/* Start user code for global. Do not edit comment generated here */extern volatile uint8_ t g_sms_finish_flag;/* End user code. Do not edit comment generated here */static void __near r_Config_SMS_interrupt(void){/* Start user code for r_Config_SMS_interrupt. Do not edit comment generated here */g_sms_finish_flag = 1;/* End user code. Do not edit comment generated here */}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 718 of 771

スマート・コンフィグレータ.

4. API 関数

キー割り込み4.2.57以下に、スマート・コンフィグレータがキー割り込み用として出力する API 関数の一覧を示します。
表 4.65 キー割り込み用 API 関数
API 関数名

周辺機能
キー割り込みR_{Config_KR}_Create

機能概要
キー割り込みモジュールを制御する前に必要な初期化処理を実行します。
INTKR 割り込みフラグをクリアし、割り込みを許可し

R_{Config_KR}_Start

ます。
INTKR 割り込みを禁止し、割り込みフラグをクリアしR_{Config_KR}_Stop

ます。
R_{Config_KR}_Create_UserInit

キー割り込み機能に関するユーザ独自の初期化処理を実行します。
INTKR 割り込みに伴う処理を実行します。

r_{Config_KR}_interrupt

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 719 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_KR}_Create
キー割り込みモジュールを制御する前に必要な初期化処理を実行します。
備考

この API 関数は、main()関数を実行する前に、R_Systeminit から呼び出されます。

［指定形式］
void

R_{Config_KR}_Create(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 720 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_KR}_Start
INTKR 割り込みフラグをクリアし、割り込みを許可します。

［指定形式］
void

R_{Config_KR}_Start(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 721 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_KR}_Stop
INTKR 割り込みを禁止し、割り込みフラグをクリアします。

［指定形式］
void

R_{Config_KR}_Stop(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 722 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_KR}_Create_UserInit
キー割り込み機能に関するユーザ独自の初期化処理を実行します。
備考

この API 関数は、R_{Config_KR}_Create のコールバック・ルーチンとして呼び出されます。

［指定形式］
void

R_{Config_KR}_Create_UserInit(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 723 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_KR}_interrupt
INTKR 割り込みに伴う処理を実行します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_KR}_interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_KR}_interrupt(void);

IAR ツールチェーンの場合__interrupt static voidr_{Config_KR}_interrupt(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 724 of 771

スマート・コンフィグレータ.

4. API 関数

使用例
KR 割り込みを検出するときにフラグを設定するための例です。
main.c#include "r_smc_entry.h"
extern uint8_t kr_int_flag;
void main(void);void main(void){EI();
kr_int_flag = 0U;
R_Config_KR_Start ();while(kr_int_flag != 1U);
R_Config_ KR_Stop ();}Config_KR_user.c/* Start user code for global. Do not edit comment generated here */uint8_t kr_int_flag = 0U/* End user code. Do not edit comment generated here */static void __near r_Config_KR_interrupt(void){/* Start user code for r_Config_KR_interrupt. Do not edit comment generated here *//* Set the flag */kr_int_flag = 1U;/* End user code. Do not edit comment generated here */}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 725 of 771

スマート・コンフィグレータ.

4.2.584. API 関数

リモコン信号受信機能

以下に、スマート・コンフィグレータがリモコン信号受信機能用として出力する API 関数の一覧を示します。
表 4.66 リモコン信号受信機能用 API 関数
API 関数名
R_{Config_REMC}_Create

周辺機能

機能概要

リモコン信号受信

REMC ジュールを制御する前に必要な初期化処理を実

機能

行します。

R_{Config_REMC}_Start

リモコン信号受信機能の動作を開始します。

R_{Config_REMC}_Stop

リモコン信号受信機能の動作を停止します。

R_{Config_SMS}_Read

受信データの格納先と受信するバイト数を指定します。

R_{Config_REMC}_Create_UserInit

リモコン信号受信機能に関するユーザ独自の初期化処理を実行します。

r_{Config_REMC}_interrupt

INTREMC 割り込みに伴う処理を実行します。

r_{Config_REMC}_callback_receiveend

データ受信完了割り込みに伴う処理を実行します。

r_{Config_REMC}_callback_comparema

コンペア一致割り込みに伴う処理を実行します。

tchr_{Config_REMC}_callback_receiveerror

受信エラー割り込みに伴う処理を実行します。

r_{Config_REMC}_callback_bufferfull

受信バッファ・フル割り込みに伴う処理を実行します。

r_{Config_REMC}_callback_header

ヘッダ・パターン一致割り込みに伴う処理を実行します。

r_{Config_REMC}_callback_data0

データ"0"パターン一致割り込みに伴う処理を実行します。

r_{Config_REMC}_callback_data1

データ"1"パターン一致割り込みに伴う処理を実行します。

r_{Config_REMC}_callback_specialdata

特殊データ・パターン一致割り込みに伴う処理を実行します。

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 726 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_REMC}_Create
REMC ジュールを制御する前に必要な初期化処理を実行します。
備考

この API 関数は、main()関数を実行する前に、R_Systeminit から呼び出されます。

［指定形式］
void

R_{Config_REMC}_Create(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 727 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_REMC}_Start
リモコン信号受信機能の動作を開始します。

［指定形式］
void

R_{Config_REMC}_Start(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 728 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_REMC}_Stop
リモコン信号受信機能の動作を停止します。

［指定形式］
void

R_{Config_REMC}_Stop(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 729 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_SMS}_Read
受信データの格納先と受信するバイト数を指定します。
備考

この API 関数は、データ受信の最後に REMC 割り込みによって読み取られた受信データの保存先を指定します。

［指定形式］
MD_STATUS

R_{Config_SMS}_Read(uint8_t * const rx_buf, uint8_t rx_num);

［引数］
I/O

引数

説明

O

uint8_t * const rx_buf;

受信したデータを格納したバッファへのポインタ

O

Uint8_t rx_num;

受信するバイト数

［戻り値］
マクロ

説明

MD_OK

正常終了

MD_ERROR1

引数 rx_num の指定が無効

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 730 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_REMC}_Create_UserInit
リモコン信号受信機能に関するユーザ独自の初期化処理を実行します。
備考

この API 関数は、R_{Config_REMC}_Create のコールバック・ルーチンとして呼び出されます。

［指定形式］
void

R_{Config_REMC}_Create_UserInit(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 731 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_REMC}_interrupt
INTREMC 割り込みに伴う処理を実行します。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_REMC}_interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_REMC}_interrupt(void);

IAR ツールチェーンの場合__interrupt static voidr_{Config_REMC}_interrupt(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 732 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_REMC}_callback_receiveend
データ受信完了割り込みに伴う処理を実行します。
備考

この API 関数は、INTREMC 割り込みに伴う処理 r_{Config_REMC}_interrupt のコールバ
ック・ルーチンとして呼び出されます。

［指定形式］
static voidr_{Config_REMC}_callback_receiveend(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 733 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_REMC}_callback_comparematch
コンペア一致割り込みに伴う処理を実行します。
備考

この API 関数は、INTREMC 割り込みに伴う処理 r_{Config_REMC}_interrupt のコールバ
ック・ルーチンとして呼び出されます。

［指定形式］
static voidr_{Config_REMC}_callback_comparematch(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 734 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_REMC}_callback_receiveerror
受信エラー割り込みに伴う処理を実行します。
備考

この API 関数は、INTREMC 割り込みに伴う処理 r_{Config_REMC}_interrupt のコールバ
ック・ルーチンとして呼び出されます。

［指定形式］
static voidr_{Config_REMC}_callback_receiveerror(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 735 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_REMC}_callback_bufferfull
受信バッファ・フル割り込みに伴う処理を実行します。
備考

この API 関数は、INTREMC 割り込みに伴う処理 r_{Config_REMC}_interrupt のコールバ
ック・ルーチンとして呼び出されます。

［指定形式］
static voidr_{Config_REMC}_callback_bufferfull(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 736 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_REMC}_callback_header
ヘッダ・パターン一致割り込みに伴う処理を実行します。
備考

この API 関数は、INTREMC 割り込みに伴う処理 r_{Config_REMC}_interrupt のコールバ
ック・ルーチンとして呼び出されます。

［指定形式］
static voidr_{Config_REMC}_callback_header(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 737 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_REMC}_callback_data0
データ"0"パターン一致割り込みに伴う処理を実行します。
備考

この API 関数は、REMC 割り込みに伴う処理 r_{Config_REMC}_interrupt のコールバッ
ク・ルーチンとして呼び出されます。

［指定形式］
static voidr_{Config_REMC}_callback_data0(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 738 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_REMC}_callback_data1
データ"1"パターン一致割り込みに伴う処理を実行します。
備考

この API 関数は、INTREMC 割り込みに伴う処理 r_{Config_REMC}_interrupt のコールバ
ック・ルーチンとして呼び出されます。

［指定形式］
static voidr_{Config_REMC}_callback_data1(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 739 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_REMC}_callback_specialdata
特殊データ・パターン一致割り込みに伴う処理を実行します。
備考

この API 関数は、INTREMC 割り込みに伴う処理 r_{Config_REMC}_interrupt のコールバ
ック・ルーチンとして呼び出されます。

［指定形式］
static voidr_{Config_REMC}_callback_specialdata(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 740 of 771

スマート・コンフィグレータ.

4. API 関数

使用例
データ受信終了時にリモコン信号受信機能の動作を停止する例です。
main.c#include "r_smc_entry.h"volatile uint8_t g_remc_rx_buf[8];void main(void);void main(void){
EI();/* Start the REMC operation */R_Config_REMC_Start();/* Read data from receive data buffer */R_Config_REMC_Read((uint8_t *)g_remc_rx_buf, 8U);}
Config_REMC_user.cstatic void r_Config_REMC_callback_receiveend(void){/* Start user code for r_Config_REMC_callback_receiveend. Do not edit comment generated here */R_Config_REMC_Stop();/* End user code. Do not edit comment generated here */}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 741 of 771

スマート・コンフィグレータ.

4.2.594. API 関数

ウォッチドッグ・タイマ

以下に、スマート・コンフィグレータがウォッチドッグ・タイマ用として出力する API 関数の一覧を示します。
表 4.67 ウォッチドッグ・タイマ用 API 関数
API 関数名
R_{Config_WDT}_Create

周辺機能

機能概要

ウォッチドッグ・

ウォッチドッグ・タイマ・モジュールを制御する前にタイマ必要な初期化処理を実行します。
ウォッチドッグ・タイマのカウンタをクリアしてかR_{Config_WDT}_Restart

ら、カウントを再開します。
R_{Config_WDT}_Create_UserInit

ウォッチドッグ・タイマに関するユーザ独自の初期化処理を実行します。

r_{Config_WDT}_interrupt

R20UT4852JJ0105
2024.07.22

Rev.1.05

INTWDTI 割り込みに伴う処理を実行します。

Page 742 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_WDT}_Create
ウォッチドッグ・タイマ・モジュールを制御する前に必要な初期化処理を実行します。
備考

この API 関数は、main()関数を実行する前に、R_Systeminit から呼び出されます。

［指定形式］
void

R_{Config_WDT}_Create(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 743 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_WDT}_Restart
ウォッチドッグ・タイマのカウンタをクリアしてから、カウントを再開します。

［指定形式］
void

R_{Config_WDT}_Restart(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 744 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_WDT}_Create_UserInit
ウォッチドッグ・タイマに関するユーザ独自の初期化処理を実行します。
備考

この API 関数は、R_{Config_WDT}_Create のコールバック・ルーチンとして呼び出されます。

［指定形式］
void

R_{Config_WDT}_Create_UserInit(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 745 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_WDT}_interrupt
INTWDTI 割り込みに伴う処理を実行します。
備考

この API 関数は、オーバーフロー時間の 75％ + 1/4 fIL に達したときに、マスカブル割り
込みの割り込みハンドラとして呼び出されます。

［指定形式］CCRL78 ツールチェーンの場合
static void __nearr_{Config_WDT}_interrupt(void);

LLVM ツールチェーンの場合
void

r_{Config_WDT}_interrupt(void);

IAR ツールチェーンの場合__interrupt static voidr_{Config_WDT}_interrupt(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 746 of 771

スマート・コンフィグレータ.

4. API 関数

使用例
メイン関数のすべてのループでカウンタ値を更新し、カウンタのアンダーフローに対してソフトウェ
ア・リセットを発行する例です。
main.c#include "r_smc_entry.h"void main(void);void main(void){
EI();
while (1U){/* Restarts WDT module */R_Config_WDT_Restart();}}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 747 of 771

スマート・コンフィグレータ.

4.2.604. API 関数

ロジック＆イベント・リンク・コントローラ (ELCL)

以下に、スマート・コンフィグレータがロジック＆イベント・リンク・コントローラ (ELCL) 用として出力する API 関数の一覧を示します。
表 4.68 ロジック＆イベント・リンク・コントローラ (ELCL) API 関数
API 関数名
R_{Config_xxx}_Create
R_{ConfigL_xxx}_Start

周辺機能

機能概要

ロジック＆イベン

ELCL モジュールを制御する前に必要な初期化処理を実ト・リンク・コン

行します。

トローラ

ELCL 出力を有効にします。

R_{Config_xxx}_Stop

ELCL 出力を無効にします。

R_{Config_xxx}_Create_UserInit

ELCL のユーザ独自の初期化処理を実行します。

r_{Config_xxx}_interrupt

INTELCL 割り込みに応答して処理を実行します。

注1 xxx は ELCL モジュール名です。
注2 R_ {Config_xxx} _interrupt 関数は、ELCL コンポーネントで ELCL 出力信号が INTELCL として使用されている場合にのみ生成されます。

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 748 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_xxx}_Create
ELCL モジュールを制御する前に必要な初期化処理を実行します。
備考

この API 関数は、main() 関数が実行される前に R_Systeminit から呼び出されます。

［指定形式］
void

R_{Config_xxx}_Create(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 749 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_xxx}_Start
ELCL 割り込みフラグをクリアし、ELCL 出力を有効にします。

［指定形式］
void

R_{Config_xxx}_Start(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 750 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_xxx}_Stop
INTELCL 割り込みの無効および割り込みフラグをクリアし、ELCL 出力を無効にします。

［指定形式］
void

R_{Config_xxx}_Stop(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 751 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_xxx}_Create_UserInit
ELCL のユーザ独自の初期化処理を実行します。
備考

この API 関数は、R_{Config_xxx}_Create のコールバック・ルーチンとして呼び出されます。

［指定形式］
void

R_{Config_xxx}_Create_UserInit(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 752 of 771

スマート・コンフィグレータ.

4. API 関数

r_{Config_xxx}_interrupt
INTELCL 割り込みに応答して処理を実行します。

［指定形式］CCRL78 ツールチェーンの場合:
static void __near

r_{ Config_xxx}_interrupt(void);

LLVM ツールチェーンの場合:
void

r_{Config_xxx}_interrupt(void);

IAR ツールチェーンの場合:__interrupt static void

r_{ Config_xxx}_interrupt(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 753 of 771

スマート・コンフィグレータ.

4. API 関数

使用例
ELCL を使用して 2 ポートの単一 AND ロジックを実装する例です。
main.c#include "r_smc_entry.h"void main(void);void main(void){
EI();
R_Config_AND_Start();}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 754 of 771

スマート・コンフィグレータ.

4.2.61

4. API 関数

イベント・リンク・コントローラ

以下に、スマート・コンフィグレータがイベント・リンク・コントローラ用として出力する API 関数の一覧を示します。
表 4.69 イベント・リンク・コントローラ API 関数
API 関数名
R_{Config_ELC}_Create

周辺機能

機能概要

イベント・リン

ELC モジュールを制御する前に必要な初期化処理を実

ク・コントローラ

行します。

R_{Config_ELC}_Stop

ELC 出力を無効にします。

R_{Config_ELC}_Create_UserInit

ELC のユーザ独自の初期化処理を実行します。

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 755 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_ELC}_Create
ELC モジュールを制御する前に必要な初期化処理を実行します。
備考

この API 関数は、main() 関数が実行される前に R_Systeminit から呼び出されます。

［指定形式］
void

R_{Config_ELC}_Create(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 756 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_ELC}_Stop
INTELCL 割り込みの無効および割り込みフラグをクリアし、ELC 出力を無効にします。

［指定形式］
void

R_{Config_ELC}_Stop(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 757 of 771

スマート・コンフィグレータ.

4. API 関数

R_{Config_ELC}_Create_UserInit
ELC のユーザ独自の初期化処理を実行します。
備考

この API 関数は、R_{Config_ELC}_Create のコールバック・ルーチンとして呼び出されます。

［指定形式］
void

R_{Config_ELC}_Create_UserInit(void);

［引数］
なし

［戻り値］
なし

R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 758 of 771

スマート・コンフィグレータ.

4. API 関数

使用例
ELC を使用して、キーリターン信号検出イベントの生成を停止する例です。
main.c#include "r_smc_entry.h"void main(void);void main(void){
uint32_t stp_event = 0x00000020;
EI();
R_Config_ELC_Stop(stp_even);
while(1);}R20UT4852JJ0105
2024.07.22

Rev.1.05

Page 759 of 771

スマート・コンフィグレータ.

Appedix A: API 関数の比較

Appedix A: API 関数の比較
コード生成ツールによって出力される API 関数とスマート・コンフィグレータによって出力される
API 関数の比較表です。 コード生成ツールの API 関数に対応するスマート・コンフィグレータの API 関
数を理解できます。
表 A.1

コード生成ツールとスマート・コンフィグレータの API（1/5）

周辺機能
共通

クロック発生回路

ポート機能
タ イ マ ・アレイ・ユ
ニット

リ ア ル タイム・クロック

ク ロ ッ ク出力／ブザー出力制御回路

R20UT4852JJ0105
2024.07.22

コード生成ツール API 関数

スマート・コンフィグレータ API 関数

main
R_MAIN_UserserInit
hdwinit
R_Systeminit
low_level_init
HardwareSetup
R_CGC_Create
R_CGC_Set_ClockMode
R_CGC_Create_UserInit
R_CGC_Get_ResetSource
R_PORT_Create
R_PORT_Create_UserInit
R_TAUm_Create
R_TAUm_Channeln_Start
R_TAUm_Channeln_Higher8bits_Start
R_TAUm_Channeln_Lower8bits_Start
R_TAUm_Channeln_Stop
R_TAUm_Channeln_Higher8bits_Stop
R_TAUm_Channeln_Lower8bits_Stop
R_TAUm_Reset
R_TAUm_Set_PowerOff
R_TAUm_Channeln_Get_PulseWidth
R_TAUm_Channeln_Set_SoftwareTriggerOn
R_TAUm_Create_UserInit
r_taum_channeln_interrupt
r_taum_channeln_higher8bits_interrupt
R_RTC_Create
R_RTC_Start
R_RTC_Stop
R_RTC_Set_PowerOff
R_RTC_Set_HourSystem
R_RTC_Set_CounterValue
R_RTC_Get_CounterValue
R_RTC_Set_ConstPeriodInterruptOn
R_RTC_Set_ConstPeriodInterruptOff
R_RTC_Set_AlarmOn
R_RTC_Set_AlarmOff
R_RTC_Set_AlarmValue
R_RTC_Get_AlarmValue
R_RTC_Set_RTC1HZOn
R_RTC_Set_RTC1HZOff
R_RTC_Create_UserInit
r_rtc_interrupt
r_rtc_callback_constperiod
r_rtc_callback_alarm
R_PCLBUZn_Create
R_PCLBUZn_Start
R_PCLBUZn_Stop
R_PCLBUZn_Create_UserInit

main
R_Systeminit
R_{Config_PORT}_Create
R_{Config_PORT}_Create_UserInit
R_TAUm_Create
R_{Config_TAUm_n}_Start
R_{Config_TAUm_n}_Higher8bits_Start
R_{Config_TAUm_n}_Lower8bits_Start
R_{Config_TAUm_n}_Stop
R_{Config_TAUm_n}_Higher8bits_Stop
R_{Config_TAUm_n}_Lower8bits_Stop
R_TAUm_Set_Reset
R_TAUm_Set_PowerOff
R_{Config_TAUm_n}_Get_PulseWidth
R_{Config_TAUm_n}_Set_SoftwareTriggerOn
R_{Config_TAUm_n}_Create_UserInit
r_{Config_TAUm_n}_interrupt
r_{Config_TAUm_n}_higher8bits_interrupt
R_{Config_RTC}_Create
R_{Config_RTC}_Start
R_{Config_RTC}_Stop
R_RTC_Set_PowerOff
R_{Config_RTC}_Set_HourSystem
R_{Config_RTC}_Set_CounterValue
R_{Config_RTC}_Get_CounterValue
R_{Config_RTC}_Set_ConstPeriodInterruptOn
R_{Config_RTC}_Set_ConstPeriodInterruptOff
R_{Config_RTC}_Set_AlarmOn
R_{Config_RTC}_Set_AlarmOff
R_{Config_RTC}_Set_AlarmValue
R_{Config_RTC}_Get_AlarmValue
R_{Config_RTC}_Set_RTC1HZOn
R_{Config_RTC}_Set_RTC1HZOff
R_{Config_RTC}_Create_UserInit
r_{Config_RTC}_interrupt
r_{Config_RTC}_callback_constperiod
r_{Config_RTC}_callback_alarm
R_{Config_PCLBUZn}_Create
R_{Config_PCLBUZn}_Start
R_{Config_PCLBUZn}_Stop
R_{Config_PCLBUZn}_Create_UserInit

Rev.1.05

Page 760 of 771

スマート・コンフィグレータ.
表 A.2

Appedix A: API 関数の比較

コード生成ツールとスマート・コンフィグレータの API（2/5）

周辺機能ウ ォ ッ チドッグ・タ
イマ

A/D コンバータ

D/A コンバータ

コンパレータプ ロ グ ラマブル・ゲ
イン・アンプシ リ ア ル・アレイ・ユニット

R20UT4852JJ0105
2024.07.22

コード生成ツール API 関数
R_WDT_Create
R_WDT_Restart
R_WDT_Create_UserInit
r_wdt_interrupt
R_ADC_Create
R_ADC_Start
R_ADC_Stop
R_ADC_Set_OperationOn
R_ADC_Set_OperationOff
R_ADC_Reset
R_ADC_Set_PowerOff
R_ADC_Set_ADChannel
R_ADC_Set_SnoozeOn
R_ADC_Set_SnoozeOff
R_ADC_Set_TestChannel
R_ADC_Get_Result
R_ADC_Get_Result_8bit
R_ADC_Create_UserInit
r_adc_interrupt
R_DAC_Create
R_DACn_Start
R_DACn_Stop
R_DAC_Set_PowerOff
R_DACn_Set_ConversionValueR_DAC_Reset
R_DACn_Create_UserInit
R_COMP_Create
R_COMPn_Start
R_COMPn_Stop
R_COMP_Reset
R_COMP_Set_PowerOff
R_COMP_Create_UserInit
r_compn_interrupt
R_PGA_Create
R_PGA_Start
R_PGA_Stop
R_PGA_Create_UserInit
R_SAUm_Create
R_SAUm_Reset
R_SAUm_Set_PowerOff
R_SAUm_Set_SnoozeOn
R_SAUm_Set_SnoozeOff
R_UARTn_Create
R_UARTn_Start
R_UARTn_Stop
R_UARTn_Send
R_UARTn_Receive
R_CSImn_Create
R_CSImn_Start
R_CSImn_Stop
R_CSImn_Send
R_CSImn_Receive
R_CSImn_Send_Receive
R_IICmn_Create
R_IICmn_StartCondition
R_IICmn_StopCondition
R_IICmn_Stop
R_IICmn_Master_Send
R_IICmn_Master_Receive
R_SAUm_Create_UserInit

Rev.1.05

スマート・コンフィグレータ API 関数
R_{Config_WDT}_Create
R_{Config_WDT}_Restart
R_{Config_WDT}_Create_UserInit
r_{Config_WDT}_interrupt
R_{Config_ADC}_Create
R_{Config_ADC}_Start
R_{Config_ADC}_Stop
R_{Config_ADC}_Set_OperationOn
R_{Config_ADC}_Set_OperationOff
R_ADC_Set_Reset
R_ADC_Set_PowerOff
R_{Config_ADC}_Set_ADChannel
R_{Config_ADC}_Set_SnoozeOn
R_{Config_ADC}_Set_SnoozeOff
R_{Config_ADC}_Set_TestChannel
R_{Config_ADC}_Get_Result_10bit
R_{Config_ADC}_Get_Result_8bit
R_{Config_ADC}_Create_UserInit
r_{Config_ADC}_interrupt
R_DAC_Create
R_{Config_DACn}_Start
R_{Config_DACn}_Stop
R_DAC_Set_PowerOff
R_{Config_DACn}_Set_ConversionValueR_DAC_Set_Reset
R_{Config_DACn}_Create_UserInit
R_COMP_Create
R_{Config_COMPn}_Start
R_{Config_COMPn}_Stop
R_COMP_Set_Reset
R_COMP_Set_PowerOff
R_{Config_COMPn}_Create_UserInit
r_{Config_COMPn}_interrupt
R_{Config_PGA}_Create
R_{Config_PAG}_Start
R_{Config_PAG}_Stop
R_{Config_PGA}_Create_UserInit
R_SAUm_Create
R_SAUm_Set_Reset
R_SAUm_Set_PowerOff
R_SAUm_Set_SnoozeOn
R_SAUm_Set_SnoozeOff
R_{Config_UARTq}_Create
R_{Config_UARTq}_Start
R_{Config_UARTq}_Stop
R_{Config_UARTq}_Send
R_{Config_UARTq}_Receive
R_{Config_CSIp}_Create
R_{Config_CSIp}_Start
R_{Config_CSIp}_Stop
R_{Config_CSIp}_Send
R_{Config_CSIp}_Receive
R_{Config_CSIp}_Send_Receive
R_{Config_IICr}_Create
R_{Config_IICr}_StartCondition
R_{Config_IICr}_StopCondition
R_{Config_IICr}_Stop
R_{Config_IICr}_Master_Send
R_{Config_IICr}_Master_Receive-

Page 761 of 771

スマート・コンフィグレータ.
表 A.3

Appedix A: API 関数の比較

コード生成ツールとスマート・コンフィグレータの API（3/5）

周辺機能
シリアル・アレイ・ユニット

シリアル・インタフ
ェース IICA

データ・トランスフ
ァ・コントローラ

イベント・リンク・コントローラ
割り込み機能キー割り込み機能

電圧検出回路R20UT4852JJ0105
2024.07.22

コード生成ツール API 関数
r_uartn_interrupt_send
r_uartn_interrupt_receive
r_uartn_interrupt_error
r_uartn_callback_sendend
r_uartn_callback_receiveend
r_uartn_callback_error
r_uartn_callback_softwareoverrun
r_csimn_interrupt
r_csimn_callback_sendend
r_csimn_callback_receiveend
r_csimn_callback_error
r_iicmn_interrupt
r_iicmn_callback_master_sendend
r_iicmn_callback_master_receiveend
r_iicmn_callback_master_error
R_IICAn_Create
R_IICAn_StopCondition
R_IICAn_Stop
R_IICAn_Reset
R_IICAn_Set_PowerOff
R_IICAn_Master_Send
R_IICAn_Master_Receive
R_IICAn_Slave_Send
R_IICAn_Slave_Receive
R_IICAn_Set_SnoozeOn
R_IICAn_Set_SnoozeOff
R_IICAn_Set_WakeupOn
R_IICAn_Set_WakeupOff
R_IICAn_Create_UserInit
r_iican_interrupt
r_iican_callback_master_sendend
r_iican_callback_master_receiveend
r_iican_callback_master_error
r_iican_callback_slave_sendend
r_iican_callback_slave_receiveend
r_iican_callback_slave_error
r_iican_callback_getstopcondition
R_DTC_Create
R_DTCn_Start
R_DTCn_Stop
R_DTC_Set_PowerOff
R_DTC_Create_UserInit
R_ELC_Create
R_ELC_Stop
R_ELC_Create_UserInit
R_INTC_Create
R_INTCn_Start
R_INTCn_Stop
R_INTC_Create_UserInit
r_intcn_interrupt
R_KEY_Create
R_KEY_Start
R_KEY_Stop
R_KEY_Create_UserInit
r_key_interrupt
R_LVD_Create
R_LVD_InterruptMode_Start
R_LVD_Create_UserInit
r_lvd_interrupt

Rev.1.05

スマート・コンフィグレータ API 関数
r_{Config_UARTq}_interrupt_send
r_{Config_UARTq}_interrupt_receiver_{Config_UARTq}_interrupt_error
r_{Config_UARTq}_callback_sendend
r_{Config_UARTq}_callback_receiveendr_{Config_UARTq}_callback_error
r_{Config_UARTq}_callback_softwareoverrun
r_{Config_CSIp}_interrupt
r_{Config_CSIp}_callback_sendend
r_{Config_CSIp}_callback_receiveendr_{Config_CSIp}_callback_error
r_{Config_IICr}_interrupt
r_{Config_IICr}_callback_master_sendend
r_{Config_IICr}_callback_master_receiveendr_{Config_IICr}_callback_master_error
R_{Config_IICAn}_Create
R_{Config_IICAn}_StopCondition
R_{Config_IICAn}_Stop
R_IICAn_Set_Reset
R_IICAn_Set_PowerOff
R_{Config_IICAn}_Master_Send
R_{Config_IICAn}_Master_Receive
R_{Config_IICAn}_Slave_Send
R_{Config_IICAn}_Slave_Receive
R_{Config_IICAn}_Set_WakeupOn
R_{Config_IICAn}_Set_WakeupOff
R_{Config_IICAn}_Create_UserInit
r_{Config_IICAn}_interrupt
r_{Config_IICAn}_callback_master_sendend
r_{Config_IICAn}_callback_master_receiveendr_{Config_IICAn}_callback_master_error
r_{Config_IICAn}_callback_slave_sendend
r_{Config_IICAn}_callback_slave_receiveendr_{Config_IICAn}_callback_slave_error
r_{Config_IICAn}_callback_getstopcondition
R_{Config_DTC}_Create
R_{Config_DTCDn}_Start
R_{Config_DTCDn}_Stop
R_DTC_Set_PowerOff
R_{Config_DTC}_Create_UserInit
R_{Config_ELC}_Create
R_{Config_ELC}_Stop
R_{Config_ELC}_Create_UserInit
R_{Config_INTC}_Create
R_{Config_INTC}_INTPn_Start
R_{Config_INTC}_INTPn_Stop
R_{Config_INTC}_Create_UserInit
r_{Config_INTC}_intpn_interrupt
R_{Config_KR}_Create
R_{Config_KR}_Start
R_{Config_KR}_Stop
R_{Config_KR}_Create_UserInit
r_{Config_KR}_interrupt
R_{Config_LVDn}_Create
R_LVD_Start_Interrupt
R_{Config_LVDn}_Create_UserInit
r_lvd_interrupt

Page 762 of 771

スマート・コンフィグレータ.
表 A.4

Appedix A: API 関数の比較

コード生成ツールとスマート・コンフィグレータの API（4/5）

周辺機能
タイマ RD

タイマ RJ

インターバル・タイ
マ（12 ビット・イン
ターバル・タイマ）

タイマ RG

タイマ RX

R20UT4852JJ0105
2024.07.22

コード生成ツール API 関数
R_TMRDn_Create
R_TMRDn_Start
R_TMRDn_Stop
R_TMRDn_Set_PowerOff
R_TMRDn_ForcedOutput_Start
R_TMRDn_ForcedOutput_Stop
R_TMRDn_Get_PulseWidth
R_TMRD_PWMOP_ForcedOutput_Stop
R_TMRD_PWMOP_Set_PowerOff
R_TMRDn_Create_UserInit
r_tmrdn_interrupt
R_TMRJn_Create
R_TMRJn_Create_UserInit
r_tmrjn_interrupt
R_TMRJn_Start
R_TMRJn_Stop
R_TMRJn_Set_PowerOff
R_TMRJn_Get_PulseWidth
R_IT_Create
R_IT_Create_UserInit
r_it_interrupt
R_IT_Start
R_IT_Stop
R_IT_Set_PowerOff
R_TMRGn_Create
R_TMRGn_Create_UserInit
r_tmrgn_interrupt
R_TMRGn_Start
R_TMRGn_Stop
R_TMRGn_Set_PowerOff
R_TMRGn_Get_PulseWidth
R_TMRX_Create
R_TMRX_Create_UserInit
r_tmrx_interrupt
R_TMRX_Start
R_TMRX_Stop
R_TMRX_Set_PowerOff
R_TMRX_Get_BufferValue

Rev.1.05

スマート・コンフィグレータ API 関数
R_TRD_Create
R_{Config_TRDn}_Start
R_{Config_TRDn}_Stop
R_TRD_Set_PowerOff
R_TRD_ ForcedOutput_Enable
R_TRD_ ForcedOutput_Disable
R_{Config_TRDn}_Get_PulseWidth
R_{Config_PWMOPA}_Software_Release
R_PWMOPA_Set_PowerOff
R_{Config_TRDn}_Create_UserInit
r_{Config_TRDn}_trdn_interrupt
R_{Config_TRJn}_Create
R_{Config_TRJn}_Create_UserInit
r_{Config_TRJn}_interrupt
R_{Config_TRJn}_Start
R_{Config_TRJn}_Stop
R_TRJ_Set_PowerOff
R_{Config_TRJn}_Get_PulseWidth
R_{Config_IT}_Create
R_{Config_IT_Create_UserInit
r_{Config_IT}_interrupt
R_{Config_IT}_Start
R_{Config_IT}_Stop
R_IT_Set_PowerOff
R_{Config_TRG}_Create
R_{Config_TRG}_Create_UserInit
r_{Config_TRG}_interrupt
R_{Config_TRG}_Start
R_{Config_TRG}_Stop
R_TRG_Set_PowerOff
R_{Config_TRG}_Get_PulseWidth
R_{Config_TRX}_Create
R_{Config_TRX}_Create_UserInit
r_{Config_TRX}_interrupt
R_{Config_TRX}_Start
R_{Config_TRX}_Stop
R_TRX_Set_PowerOff
R_{Config_TRX}_Get_BufferValue

Page 763 of 771

スマート・コンフィグレータ.
表 A.5

コード生成ツールとスマート・コンフィグレータの API（5/5）

周辺機能
タイマ KB

Appedix A: API 関数の比較

コード生成ツール API 関数
R_KBn_Create
R_KBn_Start
R_KBn_Stop
R_KBn_Simultaneous_Start
R_KBn_Simultaneous_Stop
R_KBn_Synchronous_Start
R_KBn_Synchronous_Stop
R_KBn_TKBOm0_SmoothStartFunction_Start
R_KBn_TKBOm0_SmoothStartFunction_Stop
R_KBn_TKBOm1_SmoothStartFunction_Start
R_KBn_TKBOm1_SmoothStartFunction_Stop
R_KBn_Set_BatchOverwriteRequestOn
R_KBn_TKBOm0_Forced_Output_Stop_Function1_Start
R_KBn_TKBOm0_Forced_Output_Stop_Function1_Stop
R_KBn_TKBOm1_Forced_Output_Stop_Function1_Start
R_KBn_TKBOm1_Forced_Output_Stop_Function1_Stop
R_KBn_Set_PowerOff
R_KBn_Create_UserInit
r_kbn_interrupt

R20UT4852JJ0105
2024.07.22

Rev.1.05

スマート・コンフィグレータ API 関数
R_{Config_TKBn}_Create
R_{Config_TKBn}_Start
R_{Config_TKBn}_Stop
R_{Config_TKBn}_TKBOn0_SmoothStart
Function_Start
R_{Config_TKBn}_TKBOn0_SmoothStart
Function_Stop
R_{Config_TKBn}_TKBOn1_SmoothStart
Function_Start
R_{Config_TKBn}_TKBOn1_SmoothStart
Function_Stop
R_{Config_TKBn}_Set_BatchOverwrite
RequestOn
R_{Config_TKBn}_TKBOn0_Forced_
Output_Stop_Function1_Start
R_{Config_TKBn}_TKBOn0_Forced_
Output_Stop_Function1_Stop
R_{Config_TKBn}_TKBOn1_Forced_
Output_Stop_Function1_Start
R_{Config_TKBn}_TKBOn1_Forced_
Output_Stop_Function1_Stop
R_TKB_Set_PowerOff
R_{Config_TKBn}_Create_UserInit
r_{Config_TKBn}_end_count_interrupt

Page 764 of 771

改訂記録
Rev.

セクション

ポイント

1.00

2021.04.01

初版発行

1.01

2.1 説明r_{Config_UARTAn}_PollingEnd_UserCode()を追加
r_{Config_UARTAn}_send_1byte() と R_{Config_UARTAn}_Send_Polling()を削除

4.2 関数リフ
ァレンス
1.02

全章
4.2 関数リフ
ァレンスR_{Config_ELCL_xxx}_Create()の備考を更新
r_{Config_ELCL_xxx}_interrupt()を追加
コールバック関数の備考 更新
表 4.1／表 4.2 共通用 API 関数 更新
4.2.6 外部イベント・カウンタ（タイマ RJ）追加
4.2.8 入力信号のハイ／ロウ・レベル幅測定（タイマ RJ）追加
4.2.10 PWM 出力（PWM モードを使用したタイマ RD／拡張 PWM モード）追加
4.2.11 PWM 出力（PWM モードを使用したタイマ RD／PWM3 モード／拡張 PWM モード）追加
4.2.12 入力パルス間隔／周期測定（タイマ・アレイ・ユニット）更新
4.2.13 入力パルス間隔／周期測定（タイマ RJ）追加
4.2.15 インターバル・タイマ（タイマ RJ）追加
4.2.18 方形波出力（タイマ RJ）追加
4.2.22 インプットキャプチャ機能（タイマ RJ）追加
4.2.23 アウトプットコンペア機能（タイマ RJ）追加
4.2.24 三相 PWM 出力（タイマ RJ）追加
4.2.25 PWM オプション・ユニット A（タイマ RJ）追加
4.2.29 12 ビット A/D シングル・スキャン 追加
4.2.30 12 ビット A/D 連続スキャン 追加
4.2.31 12 ビット A/D グループ・スキャン 追加
4.2.38 UART 通信（LIN/UART モジュール）追加
4.2.41 I2C 通信(スレーブ・モード)（シリアル・インタフェース IICA）更新
R_{Config_IICAn}_Slave_Send, R_{Config_IICAn}_Slave_Receive,r_{Config_IICAn}_slave_handler
4.2.49 イベントリンクコントロール 追加

Appedix A:
API 関数の比較Appedix A 更新

Rev.

セクション

1.03

2.1 説

ポイント

明

表 2.2 出力ファイル (2/14) 更新

4.2 関数リフ

表 2.6 出力ファイル (6/14) 更新ァレンス

表 2.14 出力ファイル (14/14) 更新
表 4.1 共通用 API 関数（1/3）更新
表 4.2 共通用 API 関数（2/3）更新
4.2.1 共通 R_ITL_Start_Interrupt 更新
4.2.1 共通 R_TRD_ForcedOutput_Enable 追加
4.2.1 共通 R_TRD_ForcedOutput_disable 追加
4.2.1 共通 R_IT_Set_PowerOn 追加
4.2.1 共通 R_IT_Set_PowerOff 追加
4.2.16 インターバル・タイマ (12 ビット・インターバル・タイマ) 追加
4.2.17 ワンショット・パルス出力 R_{Config_TAUm_n}_Get_PulseWidth 追加
4.2.20 インターバル・タイマ（8 ビット・カウント・モード）
R_{Config_ITLn}_Start 更新
4.2.21 インターバル・タイマ（16 ビット・カウント・モード）
R_{Config_ITLn_ITLm}}_Start 更新
4.2.22 インターバル・タイマ（32 ビット・カウント・モード）
R_{Config_ITL000_ITL001_ITL012_ITL013}_Start 更新
4.2.49 ロジック＆イベント・リンク・コントローラ (ELCL) 更新

Appedix A:

表 A.4 コード生成ツールとスマート・コンフィグレータの API（4/4）更新

API 関数の比
較
1.04

2.1 説

明

4.2 関数リフ
ァレンス

表 2.2 出力ファイル (2/14) 更新
4.2.1 共通

R_TRD_Set_Reset, R_TRD_Release_Reset, R_PWMOPA_Set_Reset,

R_PWMOPA_Release_Reset, R_TRJ_Set_Reset, R_TRJ_Release_Reset,
R_TRG_Set_PowerOn, R_TRG_Set_PowerOff, R_TRG_Set_Reset, R_TRG_Release_Reset,
R_TRX_Set_PowerOn, R_TRX_Set_PowerOff, R_TRX_Set_Reset, R_TRX_Release_Reset,
R_TKB_Create, R_TKB_Set_PowerOn, R_TKB_Set_PowerOff, R_TKB_Set_Reset,
R_TKB_Release_Reset, R_PGACOMP_Create, R_PGACOMP_Set_PowerOn,
R_PGACOMP_Set_PowerOff, R_PGACOMP_Set_Reset, R_PGACOMP_Release_Reset,
R_DALI_Set_PowerOn, R_DALI_Set_PowerOff, R_DALI_Set_Reset,
R_DALI_Release_Reset

追加

4.2.7 入力信号のハイ／ロウ・レベル幅測定（タイマ・アレイ・ユニット）更新
4.2.11 PWM 出力（PWM モードを使用したタイマ RD0 と RD1／PWM3 モード／拡張 PWM
モード／タイマ KB3 PWM 出力ゲートモード）にタイマ KB3 追加
4.2.12 PWM 出力（PWM モードを使用したタイマ RG／PWM2 モード）追加
4.2.13 PWM 出力（タイマ KB を使用した同時スタート／ストップ・モード（TKBCRn0 レジ
スタによる周期制御）／同時スタート／ストップ・モード（外部トリガ入力による周期制御）／同時スタート／ストップ・モード（マスタによる周期制御）追加

Rev.

セクション

ポイント

1.04

4.2 関数リフ

4.2.14 PWM 出力（タイマ KB を使用した同時スタート／ストップ・モード（TKBCRn0 レジァレンススタによる周期制御）／同時スタート／ストップ・モード（外部トリガ入力による周期制御）／同時スタート／ストップ・モード（マスタによる周期制御））（1 つスレーブ）追加
4.2.15 PWM 出力（タイマ KB を使用した同時スタート／ストップ・モード（TKBCRn0 レジ
スタによる周期制御）／同時スタート／ストップ・モード（外部トリガ入力による周期制御）／同時スタート／ストップ・モード（マスタによる周期制御））（2 つスレーブ）追加
4.2.16 入力パルス間隔／周期測定（タイマ・アレイ・ユニット）備考リンク更新
4.2.18 インターバル・タイマ（タイマ・アレイ・ユニット）の使用例を更新
4.2.22 方形波出力（タイマ・アレイ・ユニット）と使用例の更新
4.2.28 インプットキャプチャ機能（タイマ RG）追加
4.2.29 インプットキャプチャ機能（タイマ RX）追加
4.2.31 アウトプットコンペア機能（タイマ RG）追加
4.2.34 位相計数モード追加
4.2.37A/D コンバータの API 追加
4.2.42 データ・トランスファ・コントローラ 備考リンク 更新
4.2.43 コンパレータ 備考リンク 更新
4.2.44 プログラマブル・ゲイン・アンプ追加
4.2.46 UART 通信（シリアル・アレイ・ユニット）説明と使用例 更新
4.2.47 UART 通信（シリアル・インタフェース UARTA）R_{Config_UARTq}_Send に説明とR_{Config_UARTAn}_Create_UserInit の備考リンクを更新
4.2.48 UART 通信（LIN/UART モジュール）R_{Config_RLIN3n}_Send に説明と
r_{Config_RLIN3n}_callback_receiveend の備考リンクを更新
4.2.49 DALI 通信（コントロールデバイス）追加
4.2.50 DALI 通信（コントロールギア）追加

Appedix A:
API 関数の比較

表 A.1, 表 A.4, 表 A.5 更新

Rev.

セクション

1.05

2.1 説明ポイント
表 2.7 出力ファイル（7/22）:以下の API 削除
R_{Config_TKBn}_TKBOn0_DitheringFunction_Start,
R_{Config_TKBn}_TKBOn0_DitheringFunction_Stop,
R_{Config_TKBn}_TKBOn1_DitheringFunction_Start,
R_{Config_TKBn}_TKBOn1_DitheringFunction_Stop
表 2.8 出力ファイル（8/22）:以下の API 削除
R_{Config_TKB0_TKBn}_TKBOm0_DitheringFunction_Start,
R_{Config_TKB0_TKBn}_TKBOm0_DitheringFunction_Stop,
R_{Config_TKB0_TKBn}_TKBOm1_DitheringFunction_Start,
R_{Config_TKB0_TKBn}_TKBOm1_DitheringFunction_Stop
表 2.9 出力ファイル（9/22）:以下の API 削除
R_{Config_TKB0_TKB1_TKB2}_TKBOn0_DitheringFunction_Start,
R_{Config_TKB0_TKB1_TKB2}_TKBOn0_DitheringFunction_Stop,
R_{Config_TKB0_TKB1_TKB2}_TKBOn1_DitheringFunction_Start,
R_{Config_TKB0_TKB1_TKB2}_TKBOn1_DitheringFunction_Stop

4.2 関数リフ

4.2.13 PWM 出力（タイマ KB を使用した単体動作モード（TKBCRn0 レジスタによる周期制ァレンス御）／単体動作モード（外部トリガ入力による周期制御）／インターリーブ PFC 出力モード）:以下の API 削除
R_{Config_TKBn}_TKBOn0_DitheringFunction_Start,
R_{Config_TKBn}_TKBOn0_DitheringFunction_Stop,
R_{Config_TKBn}_TKBOn1_DitheringFunction_Start,
R_{Config_TKBn}_TKBOn1_DitheringFunction_Stop
4.2.14 PWM 出力（タイマ KB を使用した同時スタート／ストップ・モード（TKBCRn0 レジ
スタによる周期制御）／同時スタート／ストップ・モード（外部トリガ入力による周期制御）／同時スタート／ストップ・モード（マスタによる周期制御））（1 つスレーブ）:以下の API 削除
R_{Config_TKB0_TKBn}_TKBOm0_DitheringFunction_Start,
R_{Config_TKB0_TKBn}_TKBOm0_DitheringFunction_Stop,
R_{Config_TKB0_TKBn}_TKBOm1_DitheringFunction_Start,
R_{Config_TKB0_TKBn}_TKBOm1_DitheringFunction_Stop
4.2.15 PWM 出力（タイマ KB を使用した同時スタート／ストップ・モード（TKBCRn0 レジ
スタによる周期制御）／同時スタート／ストップ・モード（外部トリガ入力による周期制御）／同時スタート／ストップ・モード（マスタによる周期制御））（2 つスレーブ）:以下の API 削除
R_{Config_TKB0_TKB1_TKB2}_TKBOn0_DitheringFunction_Start,
R_{Config_TKB0_TKB1_TKB2}_TKBOn0_DitheringFunction_Stop,
R_{Config_TKB0_TKB1_TKB2}_TKBOn1_DitheringFunction_Start,
R_{Config_TKB0_TKB1_TKB2}_TKBOn1_DitheringFunction_Stop
4.2.48 UART 通信（LIN/UART モジュール）チャネル番号 n (n = 0, 1, 2)の更新
4.2.55 電圧検出回路 :以下の API 更新
R_{Config_LVDn}_Start
R_{Config_LVDn}_Stop

Appedix A:
API 関数の比較

表 A.5 コード生成ツールとスマート・コンフィグレータの API（5/5）の更新

スマート・コンフィグレータ ユーザーズマニュアル
RL78 APIリファレンス編
発行年月日

2021年04月01日
2024年07月22日

発行

ルネサス エレクトロニクス株式会社〒135-0061 東京都江東区豊洲3-2-24（豊洲フォレシア）Rev.1.00
Rev.1.05

スマート・コンフィグレータ

R20UT4852JJ0105