抵抗膜式タッチコンポーネントをemWinにバインドする-KBA230114 - Community Translated (JA)
- RSS フィードを購読する
- 新着としてマーク
- 既読としてマーク
- ブックマーク
- 購読
- 印刷用ページ
- 不適切なコンテンツを報告
Community Translated by NoTa_4591161 Version: **
Translation - English: Binding the Resistive Touch Component with emWin - KBA230114
PSoC用の抵抗タッチコンポーネントのPSoC® 3/ PSoC 5LPデバイスは、4線式抵抗性タッチスクリーンとインターフェイスするために使用されます。このコンポーネントは、SEGGER emWinグラフィックライブラリのタッチスクリーン機能へのアクセスを提供し、抵抗を画面座標に変換します。詳細については、コンポーネントのデータシートを参照してください。
このKBAでは、使用しているディスプレイにベースとして、プロジェクトにemWinグラフィックライブラリが設定されていることを前提としています。Segger emWin Graphics Libraryのマニュアルを参照してください。
emWinグラフィックライブラリを設定するときにタッチスクリーン機能を許可するには、次の手順を実行します。
1. 図1に示すように、RTOSサポートが必要かどうかによって、適切なライブラリフォルダを選択します。どちらもタッチスクリーン(ts)をサポートしますが、1つはRTOSサポート(os)をサポートし、もう1つはサポートしません(nos)。
図1. EmWinライブラリ
2. 手順1で選択したライブラリによって、パスにnostsまたはostsフォルダのヘッダーファイル(図2に示す)を含めます。
- PSoC 5LPの場合:
- PSoC 3の場合:\emWinGraphics_v5_46\Code\Include\PSoC3
図2. インクルードディレクトリ
3. GUIConf.hファイルでタッチのサポートを有効にします。以下に示すように、マクロGUI_SUPPORT_TOUCH を「1」に設定します。
/*********************************************************************
*
* Configuration of touch support
*/
#define GUI_SUPPORT_TOUCH (1) // Support a touch screen (req. win-manager)
/*********************************************************************
これでタッチをサポートするようにemWinライブラリを設定できましたので、ResistiveTouchコンポーネントをTopDesign回路図に追加し、アプリケーションをビルドします。
GeneratedSourceディレクトリのコンポーネントに対して生成されている.c / .hファイルに注意してください。図3に示すようにResistiveTouch.hのファイルはemWinライブラリ固有のマクロを含んでいます。
図3.抵抗膜式タッチemWinマクロ
以下を実行して、emWinライブラリをResistiveTouchコンポーネントにバインドします。
1. emWinGraphics_v5_46\Code\Source\PSoC3\Graphics LCD Controller\ のGUI_X_Touch.cファイルをプロジェクトの.cydsnディレクトリにコピーします。たとえば、PSoC Creatorプロジェクトに「TouchScreen」という名前を付けた場合、図4に示すように、GUI_X_Touch.cファイルをTouchScreen.cydsnディレクトリに配置します。
図4. プロジェクトディレクトリ
2. PSoC Creatorで、ソースファイルを右クリックし、図5に示すように、Add > Existing Item を選択します。
図5. GUI_X_Touch.cファイルの追加
GUI_X_Touch.cのファイルには、抵抗膜方式タッチインタフェースを実装するためのハードウェア・ルーチンを提供します。プロジェクトターゲットがPSoC 3デバイスである場合、このファイルを変更する必要はありません。
PSoC 5LPデバイスの場合、このファイルを編集し、#include “device.h” を #include “project.h”に変更して、アプリケーションをビルドします。
このファイルのToughルーチンは、図6に示すように、ResistiveTouch.hで定義されたマクロを使用していることがわかります。
図6. Toughルーチン
これで、ResistiveTouchコンポーネントを操作するためのemWinライブラリのセットアップが完了しました。
タッチスクリーンを調整するには、emWinGraphics_v5_46\Documentation\ にあるEmWinユーザーおよびリファレンスガイドのセクション26.4 Touch screen driver の手順に従ってください。
emWinGraphics_v5_46\Resources\Samples\ ディレクトリのPSoC3およびPSoC4_5のフォルダは、PSoC 3およびPSoC 5LPデバイスのリファレンスとしてそれぞれ使用できるTOUCH_Sample.cおよびTOUCH_Calibrate.c があります。