• 検索結果がありません。

RX113グループ アプリケーションノート CTSU 相互容量方式タッチ計測

N/A
N/A
Protected

Academic year: 2021

シェア "RX113グループ アプリケーションノート CTSU 相互容量方式タッチ計測"

Copied!
77
0
0

読み込み中.... (全文を見る)

全文

(1)

RX113 グループ

CTSU 相互容量方式タッチ計測

要旨

RX113 グループは、タッチ電極と人体の間に発生する静電容量を測定することで人体の接触を感知する ハードウェア(Capacitive Touch Sensor Unit :CTSU)を内蔵しています。

本アプリケーションノートでは CTSU に実装された相互容量方式タッチキーのソフトウェアについて説明 します。

対象デバイス

RX113 グループ 本アプリケーションノートを他のマイコンへ適用する場合、そのマイコンの仕様にあわせて変更し、十分 評価してください。 R30AN0217JJ0101 Rev.1.01 2015.05.29

(2)

目次

1. 仕様 ... 4 2. 動作確認条件 ... 5 3. ハードウェア説明 ... 6 3.1 ハードウェア構成 ... 6 3.2 使用端子一覧 ... 6 4. ソフトウェア説明 ... 7 4.1 システムブロック ... 7 4.2 動作概要 ... 8 4.3 ファイル構成 ... 9 4.4 オプション設定メモリ ... 9 4.5 定数一覧 ... 10 4.6 構造体/共用体一覧 ... 18 4.7 変数一覧 ... 24 4.8 関数一覧 ... 29 4.9 関数仕様 ... 32 4.9.1 main ... 32 4.9.2 touch_parameter_address_set ... 32 4.9.3 touch_parameter_set ... 33 4.9.4 touch_sensor_index_set ... 34 4.9.5 touch_calibration ... 34 4.9.6 touch_initial_reference_set ... 34 4.9.7 touch_key_decode ... 35 4.9.8 touch_judgement_parameter_create ... 35 4.9.9 touch_judgement ... 36 4.9.10 touch_drift_correction... 37 4.9.11 touch_key_function_check ... 37 4.9.12 offset_tuning_stop_judgement ... 37 4.9.13 ctsu_sensor_average_address_set ... 38 4.9.14 CTSU_register_initial_value_ram_set ... 38 4.9.15 DTC_transmit_data_set ... 39 4.9.16 R_Set_CTSU_All_Register ... 39 4.9.17 R_Set_CTSU_Module_Operation ... 40 4.9.18 R_Set_CTSU_Power_Supply ... 40 4.9.19 R_Set_CTSU_Power_Operation_Mode ... 40 4.9.20 R_Set_CTSU_Power_Capacity_Adjustment ... 41 4.9.21 R_Set_CTSU_Operation_Clock ... 41 4.9.22 R_Set_CTSU_Measurement_Mode ... 41 4.9.23 R_Set_CTSU_Synchronous_Noise_Reduction ... 42 4.9.24 R_Set_CTSU_Sensor_Stabilization_Wait_Time ... 42 4.9.25 R_Set_CTSU_Measurement_Channel ... 42 4.9.26 R_Set_CTSU_Channel_Enable0 ... 43 4.9.27 R_Set_CTSU_Channel_Transmit_Receive0 ... 43 4.9.28 R_Set_CTSU_High_Pass_Noise_Reduction ... 43 4.9.29 touch_data_moving_average ... 44 4.9.30 initial_offset_tuning ... 44 4.9.31 touch_internal_tuning ... 45 4.9.32 touch_offset_tuning ... 45 4.9.33 CTSUInterrupt ... 45 4.9.34 DTC_Set_Initial_of_CTSU ... 46 4.9.35 DTC_Set_Start_of_CTSU ... 46

(3)

5.1 Main 関数:main() ... 47 5.2 タッチパラメータアドレス設定関数:touch_parameter_address_set() ... 48 5.3 タッチパラメータ設定関数:touch_parameter_set() ... 49 5.4 タッチセンサ番号に計測チャネル番号を割り当て関数:touch_sensor_index_set() ... 50 5.5 タッチキャリブレーション処理関数:touch_calibration() ... 51 5.6 タッチ初期基準値設定関数:touch_initial_reference_set() ... 52 5.7 タッチデコード処理関数:touch_key_decode() ... 53 5.8 タッチ/非タッチ判断パラメータ生成関数:touch_judgement_parameter_create() ... 54 5.9 タッチ/非タッチ判断処理関数:touch_judgement() ... 55 5.10 タッチドリフト補正処理関数:touch_drift_correction() ... 56 5.11 タッチキー機能有効/無効確認処理関数:touch_key_function_check() ... 57 5.12 電流オフセットチューニング停止判断処理関数:offset_tuning_stop_judgement() ... 58 5.13 CTSU センサデータアドレス設定関数:ctsu_sensor_average_address_set() ... 59

5.14 CTSU レジスタ初期値 RAM 設定関数:CTSU_register_initial_value_ram_set() ... 60

5.15 DTC 転送用、CTSU 計測レジスタ値設定関数:DTC_transmit_data_set() ... 61 5.16 タッチ計測データ移動加算処理関数:touch_data_moving_average() ... 62 5.17 初期電流オフセットチューニング処理関数:initial_offset_tuning() ... 63 5.18 内部電流オフセットチューニング開始/停止判断処理関数:touch_internal_tuning() ... 64 5.19 内部電流オフセットチューニング処理関数:touch_offset_tuning() ... 65 5.20 CTSU 計測完了割り込み処理関数:CTSUInterrupt() ... 66 5.21 DTC レジスタ初期設定関数:DTC_Set_Initial_of_CTSU() ... 67 5.22 DTC 転送開始設定関数:DTC_Set_Start_of_CTSU() ... 68 5.23 タッチセンサ(TS)機能設定関数:MPC_CTSU_set() ... 69 6. タッチ機能動作詳細説明 ... 70 6.1 タッチ判断データ生成 ... 70 6.2 移動平均 ... 71 6.3 タッチ/非タッチ判断 ... 72 6.4 ドリフト補正 ... 73

(4)

1. 仕様

表 1.1に使用する周辺機能と用途を示します。 表1.1 使用する周辺機能と用途 周辺機能 用途 静電容量式タッチセンサ(以下:CTSU) タッチ電極に発生する容量の計測を行う。 データトランスファコントローラ(以下:DTC) RAM へ CTSU が計測した値の転送を行う。 コンペアマッチタイマ(以下:CMT) タッチ計測周期タイマ(20ms) 相互容量方式は、対の電極を用意し一方を送信電極、もう一方を受信電極とし送信電極側からパルスを 送出し受信電極と間に容量結合による電磁界を形成します。指が電極間に接近すると導体である人体へ電 磁界の一部が移動する。この変化を定期的に観測する事で人体の接近を検知します。 図1.1 相互容量方式の原理

図 1.2にルネサス相互容量方式の原理を示します。CTSU(Capacitive Touch Sensing Unit)はスイッチドキャパ シタフィルタ(SCF)を利用した容量-電流変換器と電流検出器で構成され、マイコン外部に接続された容量を 数値に変換する機能があります。更に SCF に同期してパルス出力可能なパルスジェネレータがあり、SCF と パルスジェネレータ出力間に対の電極を配置すると相互容量方式による容量計測が可能です。 図1.2 ルネサス相互容量方式の原理

CTSU

Pulse generater Current detecter Driving pulse Parasitic Capacitance (Cp) Parasitic Capacitance (Cp) Capacitance-Current Convertor Mutual Capacitance (Cm) Transmitting electrode Receiving electrode Driving Voltage (Vd) Converting Voltage (Vt)

Transmitting electrode Receiving electrode Driving pulse

Electromagnetic field

PCB

(5)

2. 動作確認条件

本アプリケーションノートのサンプルコードは、下記の条件で動作を確認しています。 表2.1 動作確認条件 項目 内容 使用マイコン RX113 動作周波数 32MHz 動作電圧 3.3V 統合開発環境 e2 studio Ver3.1.1.08 CS+ for CC V3.00.00 [22 Aug 2014] C コンパイラ RX ビルド・ツール CC-RX(V2.02.00.04) 動作モード 相互容量フルスキャンモード サンプルコードのバージョン Ver.1.00 使用デバイス R5F51136AxFP(256K)

(6)

3. ハードウェア説明

3.1

ハードウェア構成

図 3.1に相互容量基板構成を示します。 図3.1 相互容量基板構成

3.2

使用端子一覧

表 3.1に使用端子と機能を示します。 表3.1 使用端子と機能 端子名 入出力 内容 TSCAP 入出力 タッチドライバ用 2 次電源 TS0,TS1,TS2 入出力 静電容量接触検出端子(受信端子) TS7,TS8,TS9,10 入出力 静電容量接触検出端子(送信端子) TS7 TS8 TS9 TS10 TS0 TS1 TS2

(7)

4. ソフトウェア説明

4.1

システムブロック

図 4.1に示すシステムブロック図中 を説明します。 Application H/W RX113 CTSU Control Touch API

Application

Middleware

Hardware Layer

Workbench6

API

CS+ USB COM Driver USB driver

PC Software

e2studio E1 Debugger TOOL I/F USB I/F

Physical Driver

Physical driver User Application Workbench I/F Workbench module Workbench module 図4.1 システムブロック図

(8)

4.2

動作概要

図 4.2に動作概要図を示します。 通常動作モード (CTSU_READY_MODE) (計測前) 電源 ON 初期設定 (CTSU_FINISH_MODE) (計測前) モード (S/W:タッチ計測モード) (H/W:CTSUステータス) キャリブレーションモード (CTSU_READY_MODE) (計測前) 割込み処理 (CTSU_FINISH_MODE) (計測終了) 計測モード (CTSU_RUN_MODE) (計測中) 計測周期 20ms CTSU計測終了割込み 連続4回計測(計測周期無し) 図4.2 動作概要図

(9)

4.3

ファイル構成

表 4.1にソースファイル、表 4.2にヘッダファイルを示します。なお、統合開発環境で自動生成されるファ イルは除きます。 表4.1 ソースファイル ファイル名 概要 備考 r_main.c Main ソースファイル r_touch_API.c タッチ API ソースファイル r_touch.c タッチ制御ソースファイル r_ctsu.c CTSU 制御ソースファイル r_ctsu_physical_driver.c CTSU フィジカルドライバソースファイル r_dtc.c DTC 制御ソースファイル r_cgc.c 動作クロック設定ソースファイル r_mpc.c ピンファンクション設定ソースファイル 表4.2 ヘッダファイル ファイル名 概要 備考 r_touch_API.h タッチ API ヘッダファイル r_touch.h タッチ制御ヘッダファイル r_ctsu.h CTSU 制御ヘッダファイル r_dtc.h DTC 制御ヘッダファイル r_cgc.h 動作クロック設定ヘッダファイル r_mpc.h ピンファンクション設定ヘッダファイル

4.4

オプション設定メモリ

表 4.3に設定メモリの状態を示します。必要に応じて、お客様のシステムに最適な値を設定してください。 表4.3 設定メモリ シンボル アドレス 設定値 内容 DTC.DTCVBR 0x00007C00 dtc_vector60 (0x00007CF0) dtc_vector61 (0x00007CF4) DTC 転送アドレス

(10)

4.5

定数一覧

表 4.4に定数一覧を示します。 表4.4 定数一覧(r_touch_API.h) r_touch_API.h 定数名 設定値 内容 SET_OK 0 設定完了 SET_NG 1 設定エラー INIT_TUNING_RUN 0 初期化チューニング中 INIT_TUNING_FINISH 1 初期化チューニング終了 TUNING_STOP 0 チューニング停止 TUNING_START 1 チューニング開始 CALIB_RUN 0 キャリブレーション中 CALIB_FINISH 1 キャリブレーション終了 CALIB_NOT_FUNC 2 キャリブレーション機能未使用 TOUCH_INIT_RUN 0 タッチデータ初期化中 TOUCH_INIT_FINISH 1 タッチデータ初期化終了 INITIAL_NOW 0 初期化中 INITIAL_END 1 初期化終了 METHOD_CHANGE_NG 0xFF 計測方式切換えエラー GET_OK 0 取得可能 GET_NG 1 取得不可能 SENS_CNT_OVER_NG 2 センサカウンタオーバーフローのため、取得不可能 REF_CNT_OVER_NG 3 リファレンスカウンタオーバーフローのため、取得不 可能 SENS_REF_CNT_OVER_NG 4 センサとリファレンスカウンタオーバーフローのた め、取得不可能 TSCAP_ERR_NG 5 TSCAP エラーのため、取得す可能 SELF_TUNING_NG 6 自己チューニングエラー BUTTON 0 ボタン(自己容量キー機能) MATRIX 1 マトリクス(相互容量キー機能) SLIDER 2 スライダ WHEEL 3 ホイール DATA_GET_ERROR 0 データ取得エラー

(11)

表4.5 定数一覧(r_touch.h) 注:グレーアウトされている項目は、自己容量使用項目です。 r_touch.h 定数名 設定値 内容 KEY_USE - キー機能コンパイルオプション SLIDER_USE - スライダ機能コンパイルオプション WHEEL_USE - ホイール機能コンパイルオプション TOUCH_MAIN_CYCLE_US 20000(2ms) 静電容量タッチ計測周期 SELF_KEY_USE_xx※1 0,1 自己容量キー機能フラグ 0:有効、1:無効 SELF_KEY_USE_GROUPn※5 0-3 自己容量キー機能フラググループ SELF_KEY_NUM 0-36 自己容量キー機能有効数 SELF_TSxx_THR※1 0-65535 自己容量タッチ/非タッチ判断しきい値 SELF_TSxx_HYS※1 0-65535 自己容量ヒステリシス値 MUTUALm_KEYyy_USE ※2,4 0,1 相互容量キー機能フラグ 0:有効、1:無効 MUTUALm_KEY_USE_GROUPn 0-3 相互容量キー機能フラググループ MUTUALm_KEY_NUM ※4 0-64 相互容量キー機能有効数 MUTUALm_KEYyy_THR ※4 0-65535 相互容量タッチ/非タッチ判断値 MUTUALm_KEYyy_HYS ※4 0-65535 相互容量ヒステリシス値 NO_SENSOR 255 タッチセンサ割り当て無し DUMMY_ID 1 スライダ、ホイール未使用のダミーID SLIDER_NUMBER 0-8 スライダ数 SLIDER_SENSOR_MAX 10 スライダ構成最大タッチセンサ数 SLIDERm_zz ※3,4 NO_SENSOR, 0-35 スライダ構成タッチセンサ番号 SLIDERm_SENSOR_NUMBER※4 0-10 スライダタッチセンサ数 SLIDERm_THRESHOLD※4 0-65535 スライダタッチポジション演算しきい値 SLIDERm_RESOLUTION※4 1,2,4,5,10 スライダ 1 電極あたりの解像度(ポジション数) (1=100,2=50,4=25,5=20,10=10) WHEEL_NUMBER 0-8 ホイール数 WHEEL_SENSOR_MAX 8 ホイール構成最大タッチセンサ数 WHEELm_zz※3,4 NO_SENSOR, 0-35 ホイール構成タッチセンサ番号 WHEELm_SENSOR_NUMBER※4 4,8 ホイールタッチセンサ数 WHEELm_THRESHOLD※4 0-65535 ホイールタッチポジション演算しきい値 WHEELm_RESOLUTION※4 1,2,3,5,9 ホイール 1 電極あたりの解像度(ポジション数) (1=90,2=45,3=30,5=18,9=10) ※1 xx…00-35 ※2 yy…00-63 ※3 zz…00-09 ※4 m…0-7 ※5 n…0-3

(12)

注:グレーアウトされている項目は、自己容量使用項目です。 r_touch.h 定数名 設定値 内容 CALIB_TIME 4 キャリブレーションデータ蓄積回数 DRIFT_OK 0 ドリフト補正処理完了 DRIFT_ERROR 1 ドリフト補正処理エラー DRIFT_OFF 2 ドリフト補正機能無効 KEY_DISENABLE 0 キー機能無効 KEY_ENABLE 1 キー機能有効 KEY_GROUP0 16 キーグループ 0 の最大タッチセンサ番号 KEY_GROUP1 32 キーグループ 1 の最大タッチセンサ番号 KEY_GROUP2 48 キーグループ 2 の最大タッチセンサ番号 KEY_GROUP3 64 キーグループ 3 の最大タッチセンサ番号 TS_NON 255 タッチセンサ番号割り当て無し SELF_TOUCH_ON 0-65535 自己容量連続タッチ判断値 SELF_TOUCH_OFF 0-65535 自己容量連続非タッチ判断値 SELF_MSA 0-65535 自己容量連続タッチキャンセル値 SELF_DRIFT_ENABLE 0,1 自己容量ドリフト補正機能有効/無効値 SELF_DRIFT_FREQUENCY 0-65535 自己容量ドリフト補正回数値 MUTUALm_TOUCH_ON ※4 0-65535 相互容量連続タッチ判断値 MUTUALm_TOUCH_OFF ※4 0-65535 相互容量連続非タッチ判断値 MUTUALm_MSA ※4 0-65535 相互容量連続タッチキャンセル値 MUTUALm_DRIFT_ENABLE ※4 0,1 相互容量ドリフト補正機能有効/無効値 MUTUALm_DRIFT_FREQUENCY ※4 0-65535 相互容量ドリフト補正機能無効値 ※4 m…0-7

(13)

表4.6 定数一覧(r_ctsu.h) 注:グレーアウトされている項目は、自己容量使用項目です。 r_ctsu.h 定数名 設定値 内容 SELF_METHOD_NUM 0,1 自己容量計測方式数 MUTUAL_METHOD_NUM 0-8 相互容量計測方式数 RECEPTION_FUNCITON 0 受信機能(相互容量端子設定) TRANSMISSION_FUNCITON 1 送信機能(相互容量端子設定) _0_MSTPD10_CTSU_ENABLE 0 CTSU モジュール電力供給有効 _1_MSTPD10_CTSU_DISABLE 1 CTSU モジュール電力供給無効 _0_CTSUCAP_0_SOFT_TRIGGER 0 CTSU 計測動作開始トリガ、ソフトウェアトリガ _1_CTSUCAP_1_EXTERNAL_TRI GGER 1 CTSU 計測動作開始トリガ、外部トリガ _0_CTSUPON_HW_POWER_OFF 0 CTSU モジュール電源 OFF

_1_CTSUPON_HW_POWER_ON 1 CTSU モジュール電源 ON _0_CTSUCSW_OFF 0 容量スイッチ OFF _1_CTSUCSW_ON 1 容量スイッチ ON _0_CTSUATUNE0_NORMAL 0 通常動作モード _1_CTSUATUNE0_LOW 1 低電圧動作モード SELF_CTSUATUNE0 0,1 自己容量:電源動作モード (_0_CTSUATUNE0_NORMAL, _1_CTSUATUNE0_LOW) MUTUALm_CTSUATUNE0 ※4 0,1 相互容量:電源動作モード (_0_CTSUATUNE0_NORMAL, _1_CTSUATUNE0_LOW) _0_CTSUATUNE1_NORMAL 0 通常出力 _1_CTSUATUNE1_HIGH 1 高出力 SELF_CTSUATUNE1 0,1 自己容量:電源能力 (_0_CTSUATUNE1_NORMAL, _1_CTSUATUNE1_HIGH) MUTUALm_CTSUATUNE1 ※4 0,1 相互容量:電源能力 (_0_CTSUATUNE1_NORMAL, _1_CTSUATUNE1_HIGH) _00_CTSUCLK_PCLK 0 CTSU 動作クロック=PCLK _01_CTSUCLK_PCLK_DIV2 1 CTSU 動作クロック=PCLK/2 _10_CTSUCLK_PCLK_DIV4 2 CTSU 動作クロック=PCLK/4 _11_CTSUCLK_PROHIBITION 3 設定不可 _00_CTSUMD_SELF_SINGLE 0 自己容量シングルスキャンモード _01_CTSUMD_SELF_MULTI 1 自己容量マルチスキャンモード _10_CTSUMD_PROHIBITION 2 設定不可 _11_CTSUMD_MUTUAL 3 相互容量フルスキャンモード _0011_CTSUPRRATIO_RECOMM END 3 CTSU 計測時間、計測パルス数調整値 設定値 3=推奨値 SELF_CTSUPRRATIO 3 _0011_CTSUPRRATIO_RECOMMEND MUTUALm_CTSUPRRATIO ※4 3 _0011_CTSUPRRATIO_RECOMMEND ※4 m…0-7

(14)

注:グレーアウトされている項目は、相互容量使用項目です。 r_ctsu.h 定数名 設定値 内容 _00_CTSUPRMODE_510_PULSES 0 CTSU 基本周期、計測パルス数調整値 510 パルス _01_CTSUPRMODE_126_PULSES 1 CTSU 基本周期、計測パルス数調整値 126 パルス _10_CTSUPRMODE_62_PULSES 2 CTSU 基本周期、計測パルス数調整値 62 パルス _11_CTSUPRMODE_3_PULSES 3 設定禁止 SELF_CTSUPRMODE 2 自己容量:CTSU 基本周期、計測パルス数調整値 (_10_CTSUPRMODE_62_PULSES)設定値 2=推奨値 MUTUALm_CTSUPRMODE 2 相互容量:CTSU 基本周期、計測パルス数調整値 (_10_CTSUPRMODE_62_PULSES)設定値 2=推奨値 _0_CTSUSOFF_ON 0 高域ノイズ低減機能 ON _1_CTSUSOFF_OFF 1 高域ノイズ低減機能 OFF SELF_CTSUSOFF 0,1 自己容量:高域ノイズ低減機能 (_0_CTSUSOFF_ON, _1_CTSUSOFF_OFF) MUTUALm_CTSUSOFF ※4 0,1 相互容量:高域ノイズ低減機能 (_0_CTSUSOFF_ON, _1_CTSUSOFF_OFF) _00010000_CTSUSST_RECOMMEN D 16 CTSU センサ安定待ち時間 _0000_CTSUMCH0_TS00 0 自己容量シングルモード計測対象タッチセンサ番号 0 _0001_CTSUMCH0_TS01 1 自己容量シングルモード計測対象タッチセンサ番号 1 _0010_CTSUMCH0_TS02 2 自己容量シングルモード計測対象タッチセンサ番号 2 _0011_CTSUMCH0_TS03 3 自己容量シングルモード計測対象タッチセンサ番号 3 _0100_CTSUMCH0_TS04 4 自己容量シングルモード計測対象タッチセンサ番号 4 _0101_CTSUMCH0_TS05 5 自己容量シングルモード計測対象タッチセンサ番号 5 _0110_CTSUMCH0_TS06 6 自己容量シングルモード計測対象タッチセンサ番号 6 _0111_CTSUMCH0_TS07 7 自己容量シングルモード計測対象タッチセンサ番号 7 _1000_CTSUMCH0_TS08 8 自己容量シングルモード計測対象タッチセンサ番号 8 _1001_CTSUMCH0_TS09 9 自己容量シングルモード計測対象タッチセンサ番号 9 _1010_CTSUMCH0_TS10 10 自己容量シングルモード計測対象タッチセンサ番号 10 _1011_CTSUMCH0_TS11 11 自己容量シングルモード計測対象タッチセンサ番号 11 _00_CTSUSSMOD 0(固定) CTSU 拡散クロックモード 設定値 0 固定 _11_CTSUSSCNT 3(固定) CTSU 拡散クロック制御値 設置値 3 固定 SELF_ENABLE_TSxx※1 0,1 自己容量:計測対象フラグ (0:計測対象外、1:計測対象) CTSUCHACi_SELF_ENABLE_TS ※6 0x0001-0xFFFF 自己容量:CTSUCHACi レジスタ設定値 SELF_ENABLE_NUM 1-12 自己容量:計測対象タッチセンサ数 CTSUSSDIV_TSxx※1 0000b-1111b 自己容量:CTSU スペクトラム拡散分周設定値 CTSUSSC_TSxx※1 - 自己容量:CTSUSSC レジスタ設定値 CTSUSO_TSxx※1 0x000-0x3FF 自己容量:CTSU センサオフセット調整値 CTSUSNUM_TSxx※1 0x00-0x3F 自己容量:CTSU 計測回数設定値 CTSUSO0_TSxx※1 - 自己容量:CTSUSO0 レジスタ設置値

CTSURICOA_TSxx※1 0x00-0xFF 自己容量:CTSU リファレンス ICO 電流調整値

CTSUSDPA_TSxx※1 0x00-0x1F 自己容量:CTSU ベースクロック設定値 CTSUICOG_TSxx※1 0-3 自己容量:CTSUICO ゲイン調整値 CTSUSO1_TSxx※1 - 自己容量:CTSUSO1 レジスタ設定値 ※1 xx…00-35 ※4 m…0-7 ※6 i…0-4

(15)

注:グレーアウトされている項目は、相互容量使用項目です。 r_ctsu.h 定数名 設定値 内容 MUTUALm_ENABLE_TSyy ※2,4 0,1 相互容量:計測対象フラグ (0:計測対象外、1:計測対象) CTSUCHACi_MUTUALm_ENABLE _TS ※4,6 0x0001-0xFFFF 相互容量:CTSUCHACi レジスタ設定値 MUTUALm_ENABLE_NUM ※4 1-12 相互容量:計測対象タッチセンサ数 MUTUALm_FUNCTION_TSyy ※2,4 0,1 相互容量:端子機能設定値 (RECEPTION_FUNCITON, TRANSMISSION_FUNCITON) CTSUCHTRCi_MUTUALm_TRANS MIT_TS ※4,6 0x0001-0xFFFF 相互容量:CTSUCHTRCi レジスタ設定値 TRANSMISSIONm_NUM ※4 1-63 相互容量:送信端子数 RECEPTIONm_NUM ※4 1-63 相互容量:受信端子数 MUTUALm_NUM ※4 1-64 相互容量:キー数 CTSUSSDIV_MUTUALm_TSyy ※2,4 0000b-1111b 相互容量:CTSU スペクトラム拡散分周設定値 CTSUSSC_MUTUALm_TSyy ※2,4 - 相互容量:CTSUSSC レジスタ設定値 CTSUSO_MUTUALm_TSyy ※2,4 0x000-0x3FF 相互容量:CTSU センサオフセット調整値 CTSUSNUM_MUTUALm_TSyy ※2,4 0x00-0x3F 相互容量:CTSU 計測回数設定値 CTSUSO0_MUTUALm_TSyy ※2,4 - 相互容量:CTSUSO0 レジスタ設置値 CTSURICOA_MUTUALm_TSyy ※ 2,4 0x00-0xFF 相互容量:CTSU リファレンス ICO 電流調整値 CTSUSDPA_MUTUALm_TSyy ※2,4 0x00-0x1F 相互容量:CTSU ベースクロック設定値 CTSUICOG_MUTUALm_TSyy ※2,4 0-3 相互容量:CTSUICO ゲイン調整値 CTSUSO1_ MUTUALm_TSyy ※2,4 - 相互容量:CTSUSO1 レジスタ設定値

SELF_WR_SIZE 3*SELF_ENABLE _NUM 自己容量:書き込みデータサイズ SELF_RD_SIZE SELF_ENABLE_N UM 自己容量:読み出しデータ数 MUTUALm_WR_SIZE 3*MUTUALm_NU M 相互容量:書き込みデータ数 MUTUALm_RD_SIZE MUTUALm_NUM 相互容量:読み出しデータ数 SENS_OK 0 タッチセンサ計測正常 SENS_OVER 1 タッチセンサ計測オーバーフロー REF_OVER 2 リファレンス計測オーバーフロー SENS_REF_OVER 3 タッチセンサとリファレンス計測共にオーバーフロー GAIN_100 0,1 ゲイン 100%コンパイルオプション TUNING_UPPER_LIMIT 150,200 内部チューニング上限 TUNING_LOWER_LIMIT 50,100 内部チューニング下限 OFFSET_UPPER_LIMIT 200 電流オフセット上限カウント OFFSET_LOWER_LIMIT 150 電流オフセット下限カウント ADD_TIME 4 移動平均回数 SET_SUCCESS 0 設定完了 SET_ERROR 1 設定エラー PHYSICAL_TS_ERR 0 TS 番号エラー ※2 yy…00-63 ※4 m…0-7

(16)

表4.7 定数一覧(r_dtc.h) r_dtc.h 定数名 設定値 内容 _00_SM_FIXED 0 転送元アドレッシングモード:SAR レジスタアドレス固定 _01_SM_FIXEDb 1 転送元アドレッシングモード:SAR レジスタアドレス固定 _10_SM_INC 2 転送元アドレッシングモード:SAR レジスタインクリメント _11_SM_DEC 3 転送元アドレッシングモード:SAR レジスタデクリメント _00_SZ_BYTE 0 DTC データ点灯サイズ:バイト転送 _01_SZ_WORD 1 DTC データ点灯サイズ:ワード転送 _10_SZ_LONG 2 DTC データ点灯サイズ:ロングワード転送 _11_SZ_PROHIBITION 3 DTC データ点灯サイズ:設定禁止 _00_MD_NORMAL 0 DTC 転送モード:ノーマル転送モード _01_MD_REPEAT 1 DTC 転送モード:リピート転送モード _10_MD_BLOCK 2 DTC 転送モード:ブロック転送モード _11_MD_PROHIBITION 3 DTC 転送モード:設定禁止 _00_DM_FIXED 0 転送先アドレッシングモード:DAR レジスタアドレス固定 _01_DM_FIXEDb 1 転送先アドレッシングモード:DAR レジスタアドレス固定 _10_DM_INC 2 転送先アドレッシングモード:DAR レジスタインクリメント _11_DM_DEC 3 転送先アドレッシングモード:DAR レジスタデクリメント _0_DTS_DESTINATION 0 DTC 転送モード:転送先がリピート領域、ブロック領域 _1_DTS_SOURCE 1 DTC 転元モード:転送先がリピート領域、ブロック領域 _0_DISEL_COMPLETED 0 DTC 割り込み:データ転送終了時、CPU 割り込み _1_DISEL_EACH 1 DTC 割り込み:データ転送のたび、CPU 割り込み _0_CHNS_CONTINUE 0 DTC チェーン:連続チェーン転送 _1_CHNS_CONTER 1 DTC チェーン:転送カウンタ 1→0、1→CRAH となったとき、 チェーン転送 _0_CHNE_DISABLE 0 DTC チェーン転送許可:チェーン転送禁止 _1_CHNE_ENABLE 1 DTC チェーン転送許可:チェーン転送許可 _0_RRS_NOTSKIP 0 DTC 転送情報リードスキップ:リードスキップしない _1_RRS_SKIP 1 DTC 転送情報リードスキップ:リードスキップする _0_SHORT_FULL 0 ショートアドレスモード:フルアドレスモード _1_SHORT_SHORT 1 ショートアドレスモード:ショートアドレスモード _0_DTCST_STOP 0 DTC モジュール起動:DTC モジュール停止 _1_DTCST_START 1 DTC モジュール起動:DTC モジュール動作 CTSU_DTC_WR_CNT 0x0303 DTC 書き込み用データ繰り返し回数 CTSU_DTC_RD_CNT 0x0202 DTC 読み出し用データ繰り返し回数

(17)

表4.8 定数一覧(r_mpc.h) r_mpc.h 定数名 設定値 内容 PRCR1_ENA 0xA502 プロテクトビット 1(PRC1)プロテクト解除設定値 PRCR1_DIS 0xA500 プロテクトビット 1(PRC1)プロテクト設定値 P02PFS_TS2 0x19 P02 端子機能制御レジスタ設定値 0x19:TS2 P04PFS_TS1 0x19 P04 端子機能制御レジスタ設定値 0x19:TS1 P07PFS_TS0 0x19 P07 端子機能制御レジスタ設定値 0x19:TS0 P20PFS_TS9 0x19 P20 端子機能制御レジスタ設定値 0x19:TS9 P21PFS_TS8 0x19 P21 端子機能制御レジスタ設定値 0x19:TS8 P22PFS_TS7 0x19 P22 端子機能制御レジスタ設定値 0x19:TS7 P23PFS_TS6 0x19 P23 端子機能制御レジスタ設定値 0x19:TS6 P24PFS_TS5 0x19 P24 端子機能制御レジスタ設定値 0x19:TS5 P25PFS_TS4 0x19 P25 端子機能制御レジスタ設定値 0x19:TS4 P26PFS_TSCAP 0x19 P26 端子機能制御レジスタ設定値 0x19:TSCAP P27PFS_TS10 0x19 P27 端子機能制御レジスタ設定値 0x19:TS10 P32PFS_TS11 0x19 P32 端子機能制御レジスタ設定値 0x19:TS11 PJ3PFS_TS3 0x19 PJ3 端子機能制御レジスタ設定値 0x19:TS3

(18)

4.6

構造体/共用体一覧

図 4.3にタッチシステム制御フラグ構造体/共用体を示します。 図4.3 タッチシステム制御フラグ構造体/共用体 図 4.4にタッチ機能制御フラグ構造体/共用体を示します。 図4.4 タッチ機能制御フラグ構造体/共用体 図 4.5にタッチ機能パラメータ構造体を示します。 図4.5 タッチ機能パラメータ構造体

(19)

図 4.6にタッチキーパラメータ情報構造体を示します。 図4.6 タッチキーパラメータ情報構造体 図 4.7に電流オフセットチューニング情報構造体を示します。 図4.7 電流オフセットチューニング情報構造体 図 4.8にキャリブレーション情報構造体を示します。 図4.8 キャリブレーション情報構造体 図 4.9にユーザー設定値格納構造体を示します。 図4.9 ユーザー設定値格納構造体

(20)

図 4.10にボタン、スライダ、ホイール、マトリクスタッチ/非タッチ情報構造体を示します。

図4.10 ボタン、スライダ、ホイール、マトリクスタッチ/非タッチ情報構造体 図 4.11にタッチセンサ番号情報構造体を示します。

(21)

図 4.12に CTSU 計測モード構造体を示します。 図4.12 CTSU 計測モード構造体 図 4.13にタッチセンサ計測状態情報構造体を示します。 図4.13 タッチセンサ計測状態情報構造体 図 4.14に CTSU レジスタ設定エラー情報構造体を示します。 図4.14 CTSU レジスタ設定エラー情報構造体

(22)

図 4.15に CTSU レジスタ設定情報構造体を示します。 図4.15 CTSU レジスタ設定情報構造体 図 4.16に DTC 転送 CTSU レジスタ設定情報構造体を示します。 図4.16 DTC 転送 CTSU レジスタ設定情報構造体 図 4.17に CTSU 自己容量計測データ構造体を示します。 図4.17 CTSU 自己容量計測データ構造体 図 4.18に CTSU 相互容量計測データ構造体を示します。 図4.18 CTSU 相互容量計測データ構造体

(23)

図 4.19に DTC レジスタ設定構造体を示します。

(24)

4.7

変数一覧

表 4.9から表 4.11にグローバル変数を、表 4.12にstatic 型変数を、表 4.13にconst 型変数を示します。 表4.9 グローバル変数(r_touch_API.h) r_touch_API.h 型 変数名 内容 uint8_t g_ctsu_offset_mode 内部電流オフセットチューニングモード uint16_t g_tuning_counter 内部電流オフセットチューニングカウンタ uint16_t g_offset_time 内部電流オフセットチューニング周期 uint16_t g_touch_main_cycle タッチ計測周期 表4.10 グローバル変数(r_touch.h) 注:グレーアウトされている項目は、相互容量使用項目です。 r_touch.h 型 変数名 内容 touch_system_t g_touch_system タッチシステム制御フラグ touch_func_flag_t g_touch_function[] タッチ機能制御フラグ touch_func_param_t g_touch_paramter[] タッチ機能パラメータ key_info_t g_key_info[] タッチキーパラメータ touch_tuning_t g_touch_tuning_info[] 内部電流オフセットチューニング calib_info_t g_calib_info[] キャリブレーションデータ key_user_param_t g_key_user_parameter[] ユーザー設定値 touch_group_param_t g_touch_key_group[] タッチキーグループ touch_result_t g_touch_all_result[] ボタン(自己容量キー)、スライダ、ホイール、マトリ クス(相互容量キー)タッチ結果

uint8_t g_ctsu_soft_mode CTSU 計測ボード

uint8_t g_data_tim キャリブレーションデータ格納回数 uint16_t g_self_ref[] 自己容量:タッチ基準値 uint16_t g_self_thr[] 自己容量:タッチ/非タッチ判断しきい値 (g_self_ref[] + g_self_user_thr[]) uint16_t g_self_user_thr[] 自己容量:ユーザー設定タッチ/非タッチ判断しきい値 uint16_t g_self_hys[] 自己容量:ヒステリシス値 uint16_t g_self_delta[] 自己容量:タッチ変化量 uint16_t g_self_touch_cnt[] 自己容量:連続タッチカウンタ uint16_t g_self_non_touch_cnt[] 自己容量:連続タッチカウンタ uint16_t g_self_in_touch[] 自己容量:内部タッチ/非タッチフラグ uint16_t g_self_out_touch[] 自己容量:外部タッチ/非タッチフラグ uint16_t g_self_touch_result[] 自己容量:タッチ/非タッチフラグ uint16_t g_self_drift_permission[] 自己容量:ドリフト補正有効/無効フラグ uint32_t g_self_drift_ref[] 自己容量:ドリフト補正基準値 uint16_t g_self_drift_cnt[] 自己容量:ドリフト補正カウンタ uint16_t g_self_key_uesd_info[] 自己容量:キー有効/無効フラグ uint16_t g_self_calib[][] 自己容量:キャリブレーションデータ uint8_t g_self_sensor_index[] 自己容量:センサインデックス uint16_t g_self_tune_ctsuso[] 自己容量:電流オフセットレジスタデータ uint8_t g_self_tune_result[] 自己容量:電流オフセット完了フラグ

(25)

注:グレーアウトされている項目は、相互容量使用項目です。 r_touch.h 型 変数名 内容 uint16_t g_mutualxx_ref[] 相互容量:タッチ基準値 uint16_t g_mutualxx_thr[] 相互容量:タッチ/非タッチ判断しきい値 (g_self_ref[] + g_self_user_thr[]) uint16_t g_mutualxx_user_thr[] 相互容量:ユーザー設定タッチ/非タッチ判断しきい値 uint16_t g_mutualxx_hys[] 相互容量:ヒステリシス値 uint16_t g_mutualxx_delta[] 相互容量:タッチ変化量 uint16_t g_mutualxx_touch_cnt[] 相互容量:連続タッチカウンタ uint16_t g_mutualxx_non_touch_cnt[] 相互容量:連続タッチカウンタ uint16_t g_mutualxx_in_touch[] 相互容量:内部タッチ/非タッチフラグ uint16_t g_mutualxx_out_touch[] 相互容量:外部タッチ/非タッチフラグ uint16_t g_mutualxx_touch_result[] 相互容量:タッチ/非タッチフラグ uint16_t g_mutualxx_drift_permission[] 相互容量:ドリフト補正有効/無効フラグ uint32_t g_mutualxx_drift_ref[] 相互容量:ドリフト補正基準値 uint16_t g_mutualxx_drift_cnt[] 相互容量:ドリフト補正カウンタ uint16_t g_mutualxx_key_uesd_info[] 相互容量:キー有効/無効フラグ uint16_t g_mutualxx_calib[][] 相互容量:キャリブレーションデータ uint8_t g_mutualxx_sensor_index[] 相互容量:センサインデックス uint16_t g_mutualxx_tune_ctsuso[] 相互容量:電流オフセットレジスタデータ uint8_t g_mutualxx_tune_result[] 相互容量:電流オフセット完了フラグ slider_info_t g_sliderInfo[] スライダ電極構成情報 uint16_t g_slider_data[] スライダ構成電極計測データ uint16_t g_slider_dsum[] スライダタッチ変化量 uint16_t g_slider_pos[] スライダタッチポジション index_info_t g_slider_index[] スライダインデックス wheel_info_t g_wheelInfo[] ホイール電極構成情報 uint16_t g_wheel_data[] ホイール構成電極計測データ uint16_t g_wheel_dsum[] ホイールタッチ変化量 uint16_t g_wheel_pos[] ホイールタッチポジション index_info_t g_wheel_index[] ホイールインデックス ※1 xx…0-7

(26)

表4.11 グローバル変数(r_ctsu.h) 注:グレーアウトされている項目は、相互容量使用項目です。

r_ctsu.h

型 変数名 内容

ctsu_status_t g_ctsu_status[] CTSU 計測ステータス

ctsu_set_error_t g_ctsu_set_status CTSU レジスタ設定エラーステータス ctsu_register_data_t g_ctsu_parameter[] CTSU レジスタ設定パラメータ

ctsu_transmit_data_t g_ctsu_transmit_register_data[] CTSU 各タッチセンサ計測転送パラメータ uint16_t *g_dtc_write_data[] CTSU レジスタ DTC 転送データ

self_ico_t *g_self_ico_data_pt[] 自己容量:ICO データ uint16_t *g_self_ico_sensor_pt[] 自己容量:センサ ICO データ uint16_t *g_self_ico_reference_pt[] 自己容量:リファレンス ICO データ

uint16_t *g_self_add_sensor_pt[] 自己容量:センサ加算平均データ uint16_t *g_self_add_reference_pt[] 自己容量:リファレンス加算平均データ uint16_t *g_self_sensor_cnt_pt[] 自己容量:センサデータ uint16_t *g_self_reference_cnt_pt[] 自己容量:リファレンスデータ uint16_t g_mpc_set_sensor0 マルチピンファンクション設定値 0 uint16_t g_mpc_set_sensor1 マルチピンファンクション設定値 1 uint16_t g_mpc_set_sensor2 マルチピンファンクション設定値 2 uint8_t g_method_stor 計測方式番号

mutual_ico_t *g_mutual_ico_data_pt[] 相互容量:ICO データ

uint16_t *g_mutual_ico_pri_sensor_pt[] 相互容量:プライマリセンサ ICO データ uint16_t *g_mutual_ico_pri_reference_pt[] 相互容量:プライマリリファレンス ICO データ uint16_t *g_mutual_ico_snd_sensor_pt[] 相互容量:セカンダリセンサ ICO データ uint16_t *g_mutual_ico_snd_reference_pt[] 相互容量:セカンダリリファレンス ICO データ uint16_t *g_mutual_add_pri_sensor_pt[] 相互容量:プライマリセンサ加算平均データ uint16_t *g_mutual_add_pri_reference_pt[] 相互容量:プライマリリファレンス加算平均 データ uint16_t *g_mutual_add_snd_sensor_pt[] 相互容量:セカンダリセンサ加算平均データ uint16_t *g_mutual_add_snd_reference_pt[] 相互容量:セカンダリリファレンス加算平均 データ uint16_t *g_mutual_sensor_diff_pt[] 相互容量:セカンダリ-プライマリセンサデータ uint16_t *g_mutual_reference_diff_pt[] 相互容量:セカンダリ-プライマリリファレンス データ uint16_t g_self_write[] 自己容量:DTC 書き込みデータ

self_ico_t g_self_ico_data[] 自己容量:センサ ICO データ

uint16_t g_self_add_sensor[] 自己容量:センサ加算平均データ

uint16_t g_self_add_reference[] 自己容量:リファレンス加算平均データ

uint16_t g_self_sensor_cnt[] 自己容量:センサデータ

uint16_t g_self_reference_cnt[] 自己容量:リファレンスデータ

uint16_t g_mutualxx_write[] 相互容量:DTC 書き込みデータ mutual_ico_t g_mutualxx_ico_data[] 相互容量:ICO データ

uint16_t g_mutualxx_add_pri_sensor[] 相互容量:プライマリセンサ加算平均データ uint16_t g_mutualxx_add_pri_reference[] 相互容量:プライマリリファレンス加算平均 データ uint16_t g_mutualxx_add_snd_sensor[] 相互容量:セカンダリセンサ加算平均データ uint16_t g_mutualxx_add_snd_reference[] 相互容量:セカンダリリファレンス加算平均 データ

(27)

uint16_t g_mutualxx_sensor_diff[] 相互容量:セカンダリ-プライマリセンサデータ uint16_t g_mutualxx_reference_diff[] 相互容量:セカンダリ-プライマリリファレンス データ ※1 xx…0-7 表4.12 static 型変数 型 変数名 内容 - - -

(28)

表4.13 const 型変数 注:グレーアウトされている項目は、相互容量使用項目です。 型 変数名 内容 uint16_t g_self_thrbuff [] 自己容量:ユーザー設定タッチ/非タッチ判断しきい値(初期値) uint16_t g_self_hysbuff [] 自己容量:ユーザー設定ヒステリシス値(初期値) uint16_t g_mutualxx_thrbuff[] 相互容量:ユーザー設定タッチ/非タッチ判断しきい値(初期値) uint16_t g_mutualxx_hysbuff[] 相互容量:ユーザー設定ヒステリシス値(初期値) uint16_t g_self_group[] 自己容量:キーグループ(初期値) uint16_t g_mutual0_group[] 相互容量:キーグループ(初期値) uint8_t g_touch_on[] 連続タッチ比較値(初期値) uint8_t g_touch_off[] 連続非タッチ比較値(初期値) uint16_t g_touch_msa[] 連続タッチキャンセル比較値(初期値) uint8_t g_touch_drift_enable[] ドリフト補正有効/無効フラグ比較値(初期値) uint16_t g_touch_drift_freq[] ドリフト補正回数比較値(初期値) slider_info_t g_sliderInfoRom[] スライダパラメータ値(初期値) wheel_info_t g_wheelInfoRom[] ホイールパラメータ値(初期値)

uint8_t g_ctsu_atune0[] CTSUATUNE0(初期値) uint8_t g_ctsu_atune1[] CTSUATUNE1(初期値) uint8_t g_ctsu_prratio[] CTSUPRRATIO(初期値) uint8_t g_ctsu_prmode[] CTSUPRMODE(初期値) uint8_t g_ctsu_soff[] CTSUSOFF(初期値)

uint16_t g_self_ctsussc[] 自己容量:CTSUSSC レジスタ値 uint16_t g_self_ctsuso0[] 自己容量:CTSUSO0 レジスタ値 uint16_t g_self_ctsuso1[] 自己容量:CTSUSO1 レジスタ値 uint16_t g_mutualxx_ctsussc[] 相互容量:CTSUSSC レジスタ値 uint16_t g_mutualxx_ctsuso0[] 相互容量:CTSUSO0 レジスタ値 uint16_t g_mutualxx_ctsuso1[] 相互容量:CTSUSO1 レジスタ値

(29)

4.8

関数一覧

表 4.14、表 4.15、表 4.16、表 4.17、表 4.18に、ヘッダファイルごとの関数を示します。 表4.14 r_touch.h 宣言関数 r_touch.h 関数名 概要 touch_parameter_address_set() タッチパラメータアドレス設定 touch_parameter_set() タッチパラメータ設定 touch_sensor_index_set() タッチセンサ番号に計測チャネル番号を付与する処理 touch_calibration() タッチキャリブレーション処理 touch_initial_reference_set() タッチ初期基準値設定 touch_key_decode() タッチキーデコード処理 touch_judgement_parameter_create() タッチ/非タッチ判断パラメータ生成処理 touch_judgement() タッチ/非タッチ判断処理 touch_drift_correction() タッチドリフト補正処理 touch_key_function_check() タッチキー機能有効/無効確認処理 offset_tuning_stop_judgement() 電流オフセット停止判断処理

(30)

表4.15 r_ctsu.h 宣言関数

r_ctsu.h

関数名 概要

ctsu_sensor_average_address_set() CTSU センサデータアドレス設定

CTSU_register_initial_value_ram_set() CTSU レジスタ初期値 RAM 設定

DTC_transmit_data_set() DTC 転送用、CTSU 計測レジスタ値設定

R_Set_CTSU_All_Register() CTSU レジスタ設定関数設定

R_Set_CTSU_Module_Operation() ※1 CTSU モジュール電源供給設定

R_Set_CTSU_Power_Supply() ※1 CTSU 電源供給許可ビットと CTSU LPF 容量充電制御 ビット同時設定 R_Set_CTSU_Power_Operation_Mode() ※1 CTSU 電源動作モード設定ビット設定 R_Set_CTSU_Power_Capacity_Adjustment() ※1 CTSU 電源能力調整ビット設定 R_Set_CTSU_Operation_Clock() ※1 CTSU 動作クロック選択ビット設定 R_Set_CTSU_Measurement_Mode() ※1 CTSU 計測モード選択ビット設定 R_Set_CTSU_Synchronous_Noise_Reduction() ※1 CTSU 同期ノイズ低減機能ビット設定 R_Set_CTSU_Sensor_Stabilization_Wait_Time() ※ 1 CTSU センサ安定待ち時間レジスタ設定 R_Set_CTSU_Measurement_Channel() ※1 CTSU 計測チャネルレジスタ 0 設定 R_Set_CTSU_Channel_Enable0() ※1 CTSU チャネル有効制御レジスタ 0-1 設定 R_Set_CTSU_Channel_Transmit_Receive0() ※1 CTSU チャネル送受信制御レジスタ 0-1 設定 R_Set_CTSU_High_Pass_Noise_Reduction() ※1 CTSU 高域ノイズ低減制御レジスタ設定 touch_data_moving_average() ※1 タッチ計測データ移動平均処理 initial_offset_tuning() 初期電流オフセットチューニング処理 touch_internal_tuning() 内部電流オフセットチューニング開始/停止判断処理 touch_offset_tuning() 内部電流オフセットチューニング処理 CTSUInterrupt() CTSU 計測完了割り込み処理 ※1 CTSU レジスタに関する設定関数は、CTSU レジスタへアクセスしているだけのため、5 項のフロー チャートに記載はありません。

(31)

表4.16 r_dtc.h 宣言関数 r_dtc.h 関数名 概要 DTC_Set_Initial_of_CTSU() DTC レジスタ初期設定 DTC_Set_Start_of_CTSU() DTC 転送開始設定 表4.17 r_mpc.h 宣言関数 r_mpc.h 関数名 概要 MPC_CTSU_set() タッチセンサ(TS)機能設定 表4.18 r_touch_API.h 宣言関数 r_touch_API.h 関数名 概要 R_Set_Cap_Touch_Create 詳細は、アプリケーションノート

『R30AN0215JJ0101_rx113 (CTSU API リファレンスガイ ド) 』を参照下さい。 R_Set_Cap_Touch_measurement_start R_Set_Cap_Touch_Next_Method_Change R_Get_Cap_Touch_Initial_status R_Set_Cap_Touch_Offset_Timing R_Set_Cap_Touch_Tuning_Cntrol R_Get_Cap_Touch_Data_Check R_Get_Cap_Touch_Function_Data R_Get_Cap_Touch_Sensor_Data R_Get_Cap_Touch_Reference_Data

(32)

4.9

関数仕様

サンプルコードの関数仕様を示します。

4.9.1

main

main()

概 要 システムメイン関数

宣 言

void

main(

void

)

説 明 この関数は、タッチ API をコールすることでシステム全体の制御を行います。 タッチ計測は、20ms 周期にて行われます。もし、計測時間が 20ms を超えた場合、 毎 2ms 周期で計測開始を確認し、計測を行います。 コール関数 R_Set_Cap_Touch_Create() R_Set_Cap_Touch_measurement_start() R_Get_Cap_Touch_Data_Check() R_Get_Cap_Touch_Initial_status() R_Get_Cap_Touch_Function_Data() R_Set_Cap_Touch_Initial_Tuning() R_Set_Cap_Touch_Next_Method_Change() 引 数 - - リターン値 -

4.9.2

touch_parameter_address_set

touch_parameter_address_set()

概 要 タッチパラメータアドレス設定

宣 言

void

touch_parameter_address_set(

void

)

説 明 この関数は、タッチパラメータのアドレスを設定する関数です。

設定されるパラメータは、g_key_info[]構造体のメンバです。

コール関数 -

引 数 - -

(33)

4.9.3

touch_parameter_set

touch_parameter_set()

概 要 タッチパラメータ設定

宣 言

void

touch_parameter_set(

void

)

説 明 この関数は、タッチパラメータを設定する関数です。 設定されるパラメータは、以下の構造体のメンバです。 g_touch_paramter[] g_touch_function[] g_calib_info[] g_key_info[] g_touch_tuning_info[] g_touch_all_result[] g_sliderInfo[] g_wheelInfo[] コール関数 touch_sensor_index_set() 引 数 - - リターン値 -

(34)

4.9.4

touch_sensor_index_set

touch_sensor_index_set()

概 要 タッチセンサ番号に計測チャネル番号を付与する処理

宣 言

void

touch_sensor_index_set(

method

)

説 明 この関数は、タッチセンサ番号に計測チャネル番号を割り当てます。 コール関数 - 引 数 uint8_t method 計測方式番号 リターン値 -

4.9.5

touch_calibration

touch_calibration()

概 要 タッチキャリブレーション処理

宣 言

void

touch_calibration(

method

)

説 明 この関数は、タッチ/非タッチ判断を行うための基準値を設定するタッチセンサ番号 を判断します。 基準値の設定は、キー機能に割り当てられているタッチセンサにのみ設定されます。 コール関数 touch_key_function_check() touch_initial_reference_set() 引 数 uint8_t method 計測方式番号 リターン値 uint8_t status … CALIB_RUN(0), CALIB_FINISH(1)

4.9.6

touch_initial_reference_set

touch_initial_reference_set()

概 要 タッチ初期基準値設定

宣 言

void

touch_initial_reference_set(

method, loop

)

説 明 この関数は、タッチ/非タッチ判断を行うための基準値を設定します。 基準値は、CALIB_TIME に設定された回数分の計測データを取得し、設定されます。 コール関数 - 引 数 uint8_t method 計測方式番号 uint8_t loop 基準値を設定するキー数 リターン値 -

(35)

4.9.7

touch_key_decode

touch_key_decode()

概 要 タッチデコード処理

宣 言

void

touch_key_decode(

method, value, number

)

説 明 この関数は、タッチ/非タッチ判断を行うための関数を制御します。 コール関数 touch_judgement_parameter_create() touch_judgement() touch_drift_correction() 引 数 uint8_t method 計測方式番号 uint16_t value 計測データ uint8_t number センサ番号 リターン値 -

4.9.8

touch_judgement_parameter_create

touch_judgement_parameter_create()

概 要 タッチ/非タッチ判断パラメータ生成処理

宣 言

void

touch_judgement_parameter_create(

method, value

)

説 明 この関数は、タッチ/非タッチ判断パラメータを生成します。

生成するパラメータは、タッチ/非タッチ判断しきい値とタッチ変化量の 2 パラメー タです。

<相互容量>

タッチ/非タッチ判断しきい値 = 基準値 - ユーザー設定タッチ/非タッチ判断しきい値 g_mutual0_thr[] = g_mutual0_ref[] + g_mutual0_user_thr[]

タッチ変化量 = 計測データ - 基準値 g_mutual0_delta[] = g_mutual0_ref[] - value

コール関数 -

引 数 uint8_t method 計測方式番号 uint16_t value 計測データ

(36)

4.9.9

touch_judgement

touch_judgement()

概 要 タッチ/非タッチ判断処理

宣 言

void

touch_judgement(

method, value, group, offset

)

説 明 この関数は、touch_judgement_parameter_create()にて生成したパラメータを用い て、タッチ/非タッチ判断を行います。 <相互容量> タッチ = タッチ/非タッチ判断しきい値 > 計測データ 非タッチ = タッチ/非タッチ判断しきい値 < 計測データ コール関数 - 引 数 uint8_t method 計測方式番号 uint16_t value 計測データ uint8_t group タッチセンサグループ uint8_t offset タッチセンサ番号オフセット リターン値 - <相互容量> 相互容量計測は、タッチ電極間に発生する容量の減少を検出して判断します。よって、図 4.20に示す通り 計測データは、減少します。 図4.20 相互容量計測データ変化 基準値:g_self_ref[] タッチ/非タッチ判断しきい値:g_self_thr[] 計測データ:value タッチ 非タッチ

(37)

4.9.10

touch_drift_correction

touch_drift_correction()

概 要 タッチドリフト補正処理

宣 言

uint8_t

touch_drift_correction(

method, value, group, offset

)

説 明 この関数は、g_touch_drift_freq[]に設定した回数分の計測データを元に基準値の補正を行い ます。 <ドリフト補正停止条件> ・タッチと判断された場合(タッチに該当するキーのみ停止) ・スライダとホイールは、ドリフト補正対象外 コール関数 - 引 数 uint8_t method 計測方式番号 uint16_t value 計測データ uint8_t group タッチセンサグループ uint8_t offset タッチセンサ番号オフセット リターン値 uint8_t status … DRIFT_OFF(0), DRIFT_ON(1)

4.9.11

touch_key_function_check

touch_key_function_check()

概 要 タッチキー機能有効/無効確認処理

宣 言

uint8_t

touch_key_function_check(

method, loop

)

説 明 この関数は、タッチセンサ(TS)が、キー機能に割り当たっているか確認します。

コール関数 -

引 数 uint8_t method 計測方式番号 uint8_t loop 計測キー数

リターン値 uint8_t status … KEY_DISENABLE(0), KEY_ENABLE(1)

4.9.12

offset_tuning_stop_judgement

offset_tuning_stop_judgement()

概 要 電流オフセットチューニング停止判断処理

宣 言

uint8_t

offset_tuning_stop_judgement(

method

)

説 明 この関数は、タッチ判断データを確認し、電流オフセットチューニング停止判断を行

います。

コール関数

-

引 数 uint8_t method 計測方式番号 リターン値 uint8_t status … OFF(0), ON(1)

(38)

4.9.13

ctsu_sensor_average_address_set

ctsu_sensor_average_address_set()

概 要 CTSU センサデータアドレス設定

宣 言

void

ctsu_sensor_average_address_set(

void

)

説 明 この関数は、CTSU パラメータのアドレスを設定する関数です。 コール関数 - 引 数 - - リターン値 -

4.9.14

CTSU_register_initial_value_ram_set

CTSU_register_initial_value_ram_set()

概 要 CTSU レジスタ初期値 RAM 設定

宣 言

void

CTSU_register_initial_value_ram_set(

void

)

説 明 この関数は、CTSU レジスタ初期値を g_ctsu_parameter[]へ設定します。 <設定されるレジスタ値> ・CTSU 制御レジスタ 0(CTSUCR0) ・CTSU 制御レジスタ 1(CTSUCR1) ・CTSU 同期ノイズ低減設定レジスタ(CTSUSDPRS) ・CTSU センサ安定待ち時間レジスタ(CTSUSST) ・CTSU 計測チャネルレジスタ 0(CTSUMCH0) ・CTSU チャネル有効制御レジスタ 0-1(CTSUCHAC0-1) ・CTSU チャネル送受信制御レジスタ 0-1(CTSUCHTRC0-1) ・CTSU 高域ノイズ低減制御レジスタ(CTSUDCLKC) コール関数 - 引 数 - - リターン値 -

(39)

4.9.15

DTC_transmit_data_set

DTC_transmit_data_set()

概 要 DTC 転送用、CTSU 計測レジスタ値設定

宣 言

void

DTC_transmit_data_set(

void

)

説 明 この関数は、DTC 転送用の各タッチセンサ計測用レジスタ値を転送バッファへ格納 します。 <転送用格納バッファ> g_dtc_write_data[] <転送用 CTSU レジスタ値> ・CTSU 高域ノイズ低減スペクトラム拡散制御レジスタ(CTSUSSC) ・CTSU センサオフセットレジスタ 0(CTSUSO0) ・CTSU センサオフセットレジスタ 1(CTSUSO1) コール関数 - 引 数 - - リターン値 -

4.9.16

R_Set_CTSU_All_Register

R_Set_CTSU_All_Register()

概 要 CTSU レジスタ設定関数制御

宣 言

void

R_Set_CTSU_All_Register(

method

)

説 明 この関数は、CTSU レジスタ設定関数を呼び出します。 コール関数 R_Set_CTSU_Module_Operation() R_Set_CTSU_Power_Supply() R_Set_CTSU_Power_Operation_Mode() R_Set_CTSU_Power_Capacity_Adjustment() R_Set_CTSU_Operation_Clock() R_Set_CTSU_Measurement_Mode() R_Set_CTSU_Synchronous_Noise_Reduction() R_Set_CTSU_Sensor_Stabilization_Wait_Time() R_Set_CTSU_Measurement_Channel() R_Set_CTSU_Channel_Enable0() R_Set_CTSU_Channel_Enable1() R_Set_CTSU_Channel_Enable2() R_Set_CTSU_Channel_Transmit_Receive0() R_Set_CTSU_Channel_Transmit_Receive1() R_Set_CTSU_Channel_Transmit_Receive2() R_Set_CTSU_High_Pass_Noise_Reduction() 引 数 uint8_t method 計測方式番号 リターン値 -

(40)

4.9.17

R_Set_CTSU_Module_Operation

R_Set_CTSU_Module_Operation()

概 要 CTSU モジュール電源供給設定

宣 言

uint8_t

R_Set_CTSU_Module_Operation(

mode

)

説 明 この関数は、CTSU モジュールに電源供給するための設定を行います。

コール関数 -

引 数 uint8_t mode CTSU モジュール電源供給設定値 リターン値 uint8_t status … SET_SUCCESS(0), SET_ERROR(1)

4.9.18

R_Set_CTSU_Power_Supply

R_Set_CTSU_Power_Supply()

概 要 CTSU 電源供給許可ビットと CTSU LPF 容量充電制御ビット同時設定 宣 言

uint8_t

R_Set_CTSU_Power_Supply(

power

)

説 明 この関数は、CTSU 電源供給許可ビットと CTSU LPF 容量充電制御ビットを同時に

設定します。

コール関数 -

引 数 uint8_t power CTSU 電源供給許可ビットと CTSU LPF 容量充電制御 ビット設定値

リターン値 uint8_t status … SET_SUCCESS(0), SET_ERROR(1)

4.9.19

R_Set_CTSU_Power_Operation_Mode

R_Set_CTSU_Power_Operation_Mode()

概 要 CTSU 電源動作モード設定ビット設定

宣 言

uint8_t

R_Set_CTSU_Power_Operation_Mode(

mode

)

説 明 この関数は、CTSU 電源動作モード設定ビットを設定します。

コール関数 -

引 数 uint8_t mode CTSU 電源動作モード設定ビット設定値

(41)

4.9.20

R_Set_CTSU_Power_Capacity_Adjustment

R_Set_CTSU_Power_Capacity_Adjustment()

概 要 CTSU 電源能力調整ビット設定

宣 言

uint8_t

R_Set_CTSU_Power_Capacity_Adjustment(

mode

)

説 明 この関数は、CTSU 電源能力調整ビット設定を行います。

コール関数 -

引 数 uint8_t mode CTSU 電源能力調整ビット設定値

リターン値 uint8_t status … SET_SUCCESS(0), SET_ERROR(1)

4.9.21

R_Set_CTSU_Operation_Clock

R_Set_CTSU_Operation_Clock()

概 要 CTSU 動作クロック選択ビット設定

宣 言

uint8_t

R_Set_CTSU_Operation_Clock(

mode

)

説 明 この関数は、CTSU 動作クロック選択ビット設定を行います。

コール関数 -

引 数 uint8_t mode CTSU 動作クロック選択ビット設定値

リターン値 uint8_t status … SET_SUCCESS(0), SET_ERROR(1)

4.9.22

R_Set_CTSU_Measurement_Mode

R_Set_CTSU_Measurement_Mode()

概 要 CTSU 計測モード選択ビット設定

宣 言

uint8_t

R_Set_CTSU_Measurement_Mode(

mode

)

説 明 この関数は、CTSU 計測モード選択ビット設定を行います。

コール関数 -

引 数 uint8_t mode CTSU 計測モード選択ビット設定値

(42)

4.9.23

R_Set_CTSU_Synchronous_Noise_Reduction

R_Set_CTSU_Synchronous_Noise_Reduction()

概 要 CTSU 同期ノイズ低減機能ビット設定

宣 言

uint8_t

R_Set_CTSU_Synchronous_Noise_Reduction(

cycle, mode, edge

)

説 明 この関数は、下記の CTSU ビットを設定します。

・CTSU計測時間、計測パルス数調整ビット ・CTSU基本周期、基本パルス数設定ビット ・CTSU高域ノイズ低減機能OFF設定ビット

コール関数 -

引 数 uint8_t cycle CTSU 計測時間、計測パルス数調整ビット設定値

uint8_t mode CTSU 基本周期、基本パルス数設定ビット設定値 uint8_t edge CTSU 高域ノイズ低減機能 OFF 設定ビット設定値 リターン値 uint8_t status … SET_SUCCESS(0), SET_ERROR(1)

4.9.24

R_Set_CTSU_Sensor_Stabilization_Wait_Time

R_Set_CTSU_Sensor_Stabilization_Wait_Time()

概 要 CTSU センサ安定待ち時間レジスタ設定

宣 言

uint8_t

R_Set_CTSU_Sensor_Stabilization_Wait_Time(

time

)

説 明 この関数は、CTSU センサ安定待ち時間レジスタ設定を行います。

コール関数 -

引 数 uint8_t time CTSU センサ安定待ち時間レジスタ設定値

リターン値 uint8_t status … SET_SUCCESS(0), SET_ERROR(1)

4.9.25

R_Set_CTSU_Measurement_Channel

R_Set_CTSU_Measurement_Channel()

概 要 CTSU 計測チャネルレジスタ 0 設定

宣 言

uint8_t

R_Set_CTSU_Measurement_Channel(

channel

)

説 明 この関数は、CTSU 計測チャネルレジスタ 0 設定を行います。

コール関数 -

引 数 uint8_t channel CTSU 計測チャネルレジスタ 0 設定値 リターン値 uint8_t status … SET_SUCCESS(0), SET_ERROR(1)

(43)

4.9.26

R_Set_CTSU_Channel_Enable0

R_Set_CTSU_Channel_Enable0()

概 要 CTSU チャネル有効制御レジスタ 0-1 設定

宣 言

uint8_t

R_Set_CTSU_Channel_Enable0(

channel

)

説 明 この関数は、CTSU チャネル有効制御レジスタ 0-1 設定を行います。

コール関数 -

引 数 uint8_t channel 下位 8 ビット:CTSU チャネル有効制御レジスタ 0 設定値 上位 8 ビット:CTSU チャネル有効制御レジスタ 1 設定値 リターン値 uint8_t status … SET_SUCCESS(0), SET_ERROR(1)

4.9.27

R_Set_CTSU_Channel_Transmit_Receive0

R_Set_CTSU_Channel_Transmit_Receive0()

概 要 CTSU チャネル送受信制御レジスタ 0-1 設定

宣 言

uint8_t

R_Set_CTSU_Channel_Transmit_Receive0(

channel

)

説 明 この関数は、CTSU チャネル送受信制御レジスタ 0-1 設定を行います。

コール関数 -

引 数 uint8_t channel 下位 8 ビット:CTSU チャネル送受信制御レジスタ 0 設定値 上位 8 ビット:CTSU チャネル送受信制御レジスタ 1 設定値 リターン値 uint8_t status … SET_SUCCESS(0), SET_ERROR(1)

4.9.28

R_Set_CTSU_High_Pass_Noise_Reduction

R_Set_CTSU_High_Pass_Noise_Reduction()

概 要 CTSU 高域ノイズ低減制御レジスタ設定

宣 言

uint8_t

R_Set_CTSU_High_Pass_Noise_Reduction(

mode, clock

)

説 明 この関数は、CTSU 高域ノイズ低減制御レジスタ設定を行います。

コール関数 -

引 数 uint8_t mode CTSU拡散クロックモード選択ビット設定値 uint8_t clock CTSU 拡散クロック制御ビット設定値 リターン値 uint8_t status … SET_SUCCESS(0), SET_ERROR(1)

(44)

4.9.29

touch_data_moving_average

touch_data_moving_average()

概 要 タッチ計測データ移動平均処理

宣 言

void

touch_data_moving_average(

method

)

説 明 この関数は、CTSU の計測生データを移動平均し、タッチ/非タッチ判断パラメータ を生成します。 移動平均回数は、ADD_TIME に設定した回数となります。 コール関数 - 引 数 uint8_t method 計測方式番号 リターン値 -

4.9.30

initial_offset_tuning

initial_offset_tuning()

概 要 初期電流オフセットチューニング処理

宣 言

uint8_t

initial_offset_tuning(

method, number

)

説 明 この関数は、リファレンスカウント値に電流オフセットチューニングを行い、センサ カウント値を合わせ込みます。 リファレンスカウント値は、CTSU の各レジスタ設定値によって可変します。 例として、動作クロック PCLK32MHz 動作、計測周波数 4MHz の場合と 2MHz の場 合の設定値を下記に記載します。 <4MHz> CTSU ベースクロック設定(CTSUSDPA) :00011b(8 分周) CTSU スペクトラム拡散分周設定(CTSUSSDIV) :0000b CTSU 計測回数設定(CTSUSNUM) :000111b(8 回) CTSU ICO ゲイン調整設定(CTSUICOG) :01b(ゲイン 66%) CTSU リファレンス ICO 電流調整設定(CTSURICOA) :1011111b

<2MHz>

CTSU ベースクロック設定(CTSUSDPA) :00111b(16 分周) CTSU スペクトラム拡散分周設定(CTSUSSDIV) :0001b

CTSU 計測回数設定(CTSUSNUM) :000011b(4 回) CTSU ICO ゲイン調整設定(CTSUICOG) :01b(ゲイン 66%) CTSU リファレンス ICO 電流調整設定(CTSURICOA) :1011111b

※CTSU リファレンス ICO 電流調整設定(CTSURICOA)は、4MHz、2MHz 共に 1011111b 同設定

コール関数 -

引 数 uint8_t method 計測方式番号 uint8_t number 計測番号

(45)

4.9.31

touch_internal_tuning

touch_internal_tuning()

概 要 内部電流オフセットチューニング開始/停止判断処理

宣 言

void

touch_internal_tuning(

method, count

)

説 明 この関数は、電流オフセットチューニング開始、停止を制御します。 コール関数 touch_offset_tuning() 引 数 uint8_t method 計測方式番号 uint16_t count 電流オフセットチューニング開始カウント リターン値 -

4.9.32

touch_offset_tuning

touch_offset_tuning()

概 要 内部電流オフセットチューニング処理

宣 言

void

touch_offset_tuning(

method

)

説 明 この関数は、リファレンスカウント値を基準に、電流オフセットチューニングを行 い、センサカウント値を調整します。 本電流オフセットチューニングは、1 回の処理でリファレンスカウント値を基準に CTSU センサオフセット調整値を±1 ずつ調整します。 コール関数 - 引 数 uint8_t method 計測方式番号 リターン値 -

4.9.33

CTSUInterrupt

CTSUInterrupt()

概 要 CTSU 計測完了割り込み処理

宣 言

void

CTSUInterrupt(

void

)

説 明 この関数は、CTSU 計測終了割り込み処理です。 割り込み終了後、CTSU タッチ計測に下記のエラーを確認してエラーフラグを g_ctsu_statu[]構造体に立てます。 コール関数 - 引 数 - - リターン値 -

(46)

4.9.34

DTC_Set_Initial_of_CTSU

DTC_Set_Initial_of_CTSU()

概 要 DTC レジスタ初期設定

宣 言

uint8_t DTC_Set_Initial_of_CTSU (

method

)

説 明 この関数は、CTSU 計測レジスタ値を、DTC を用いて転送するための初期設定を行 います。 コール関数 - 引 数 uint8_t method 計測方式番号 リターン値 -

4.9.35

DTC_Set_Start_of_CTSU

DTC_Set_Start_of_CTSU()

概 要 DTC 転送開始設定

宣 言

void

DTC_Set_Start_of_CTSU(

void

)

説 明 この関数は、CTSU 計測レジスタ値の DTC 転送開始処理を行います。 コール関数 - 引 数 uint8_t method 計測方式番号 リターン値 -

4.9.36

MPC_CTSU_set

MPC_CTSU_set()

概 要 タッチセンサ(TS)機能設定

宣 言

void

MPC_CTSU_set(

sensor_ena0, sensor_ena1, sensor_ena2

)

説 明 この関数は、端子機能をタッチセンサ(TS)機能に設定を行います。

タッチセンサ機能設定は、CTSU チャネル有効制御レジスタ 0-1(CTSUCHAC0-1) の設定値が、1(計測対象)設定になっているチャネルを確認し、設定します。 0(計測対象外)の端子は、Low レベル出力設定となります。

コール関数 -

引 数 uint16_t sensor_ena0 CTSU チャネル有効制御レジスタ 0-1 設定値 uint16_t sensor_ena1 予約

uint16_t sensor_ena2 予約

(47)

5. フローチャート

5.1

Main 関数:main()

図 5.1にフローチャートを示します。 静電容量タッチ生成 R_Set_Cap_Touch_create() 計測開始確認 タッチ計測ステータス確認 Yes Main() Yes No メインループ No コンペアマッチタイマ生成 R_CMT0_Create() コンペアマッチタイマスタート R_CMT0_Start() タッチフィードバック処理 タッチ計測方式切り換え処理 SliderProcess() 初期計測方式設定 計測開始フラグクリア g_touch_system.flag.timing = 0 静電容量タッチ計測開始 R_Set_Cap_Touch_measurement_start() タッチ初期終了確認 タッチ機能データ取得確認 Yes Yes No タッチ初期チューニング処理 R_Set_Cap_Touch_Initial_Tuning() No

(48)

5.2

タッチパラメータアドレス設定関数:touch_parameter_address_set()

図 5.2にフローチャートを示します。 タッチパラメータアドレス設定 touch_parameter_address_set() 下記のパラメータアドレスをg_key_info[]構造体へセット  ・計測モード  ・キー機能数  ・計測タッチセンサ数  ・キー最大グループ  ・基準値  ・タッチ/非タッチ判断しきい値  ・ユーザー設定タッチ/非タッチ判断しきい値  ・ヒステリシス値  ・タッチ変化量  ・タッチカウンタ値  ・非タッチカウンタ値  ・内部タッチ/非タッチフラグ  ・外部タッチ/非タッチフラグ  ・タッチ/非タッチ結果  ・ドリフト補正有効/無効フラグ  ・ドリフト補正カウンタ  ・キー機能データ  ・タッチセンサ、キー割り当てデータ 下記のパラメータアドレスをg_calib_info[]構造体へセット  ・キャリブレーションデータ 下記のパラメータアドレスをg_touch_tuning_info[]構造体 へセット  ・CTSUセンサオフセット調整ビット値  ・電流オフセットチューニング結果フラグ 終了 図5.2 タッチパラメータアドレス設定関数

(49)

5.3

タッチパラメータ設定関数:touch_parameter_set()

図 5.3にフローチャートを示します。 タッチパラメータ設定 touch_parameter_set() タッチシステムフラグ初期化(0クリア) 終了 計測方式数ループ method = 0,1,2…METHOD_NUM 計測方式数ループ タッチパラメータ初期設定 タッチ機能初期設定 タッチキャリブレーションデータ初期化(0クリア) タッチ/非タッチ結果クリア(0クリア) キーパラメータ初期設定 スライダパラメータ初期設定 ホイールパラメータ初期設定 タッチセンサ番号に計測チャネル番号 割り当て処理 touch_sensor_index_set() 図5.3 タッチパラメータ設定関数

(50)

5.4

タッチセンサ番号に計測チャネル番号を付与する処理:touch_sensor_index_set()

図 5.4にフローチャートを示します。 タッチセンサ番号に計測 チャネル番号割り当て処理 touch_sensor_index_set() 計測モードチェック タッチセンサグループループ タッチセンサ数設定 自己容量 タッチセンサ数確認 タッチセンサ数ループ タッチセンサ機能 有効チェック キー番号設定 タッチセンサ未使用設定 タッチセンサ数ループ タッチセンサグループ切り換え タッチセンサグループループ 終了 有効 無効 相互容量 マトリクス数設定 マトリクス数ループ マトリクスキー機能 有効チェック キー番号設定 タッチセンサ未使用設定 マトリクス数ループ 有効 無効 図5.4 タッチセンサ番号に計測チャネル番号を付与する処理関数

参照

関連したドキュメント

発電量調整受電計画差対応補給電力量は,30(電力および電力量の算

高効率熱源システム  マイクロコージェネレーションシステム (25kW×2台)  外気冷房・外気量CO 2 制御  太陽 光発電システム

接続対象計画差対応補給電力量は,30分ごとの接続対象電力量がその 30分における接続対象計画電力量を上回る場合に,30分ごとに,次の式

接続対象計画差対応補給電力量は,30分ごとの接続対象電力量がその 30分における接続対象計画電力量を上回る場合に,30分ごとに,次の式

1 つの Cin に接続できるタイルの数は、 Cin − Cdrv 間 静電量の,計~によって決9されます。1つのCin に許される Cdrv への静電量は最”で 8 pF

You agree to indemnify, defend and hold harmless onsemi, its directors, officers, employees, representatives, agents, subsidiaries, affiliates, distributors, and assigns, against

電気設備保守グループ 設備電源グループ 所内電源グループ 配電・電路グループ 冷却・監視設備計装グループ 水処理・滞留水計装グループ

電気設備保守グループ 設備電源グループ 所内電源グループ 配電・電路グループ 冷却・監視設備計装グループ 水処理・滞留水計装グループ