Texas Instruments 技術情報

XDS110 JTAGエミュレータでGPIO制御してみた

[最終更新日 : 2017/10/30]


Texas Instruments(以降、TI)社の組み込みマイコン/プロセッサ製品向けJTAGエミュレータとしてXDS110という製品が新たに加わりました。XDS110には今までの同型JTAGエミュレータにはなかった、GPIOやUARTの機能が追加されています。今回は本製品の紹介と併せて新機能のGPIO制御を試してみたいと思います。

XDS110について

XDS110は、以前販売されていたXDS100v2の代替品として低価格帯のJTAGエミュレータラインナップとしてリリースされました。JTAGクロック(TCK)の最大動作周波数は2.5MHzで、データスループットはXDS100v2を上回っています。(こちらを参照)また、XDS100v2は基板むき出しの状態でしたが、XDS110はちゃんと筐体に収まっており、旧来品と比べてしっかりとしたつくりとなっています。

XDS100v2 vs XDS110

以下は各JTAGエミュレータが対応しているマイコン/プロセッサなどあらわした表です。

JTAGエミュレータ表

XDS110は以下のパッケージで提供されています。

XDS110内容物

  1. XDS110 debug pod(本体)
  2. JTAG用 20-pin ケーブル
  3. AUX.Function用 14-pin ケーブル
  4. TI-20pin to TI 14-pin 変換アダプタ
  5. TI-20pin to ARM cortex 20-pin 変換アダプタ
  6. TI-20pin to ARM cortex 10-pin 変換アダプタ
  7. AUX Function用 ブレークボード
  8. USBケーブル

XDS110でGPIO制御する

それではXDS110のGPIO機能を動かしてみたいと思います。GPIO機能は、AUX.Functionとして割り当てられています。

ハードウェアとソフトウェアの準備

使用するハードウェア:

使用するソフトウェア:

ハードウェアのセットアップ

評価ボードと接続

USBケーブルとJTAG、AUX.FunctionケーブルをXDS110本体に接続します。USBケーブルはPC、JTAGケーブルは評価ボードのJTAGヘッダへつなぎ、評価ボードの電源を入れておきます。そして、AUX.Functionケーブルの先はブレークボードを取り付けてください。

AUX.Functionからは、GPIO機能としてGPIOOUT0(GPIO0)、GPIOOUT1(GPIO1)、GPIOIN0(GPIO2)、GPIOIN1(GPIO3)の4本のIOピンがでています。

XDS110コネクタ

XDS110ブレークアウトボード

ブレークアウトボードのGPIOIN0とGPIOOUT0、GPIOIN1とGPIOOUT1のそれぞれを接続し、GPIOの出力ピンの状態を入力ピンで読んでみます。

 

 

 

 

 

デバイスマネージャー

Code Composer Studio v7をインストール済みのPCとUSBケーブルで接続し、デバイスマネージャを開き、XDS110が表示されていることを確認します。

GPIOの動作確認

まずはXDS110とAM335x評価ボードが接続されているかどうかを確認するために接続テストを行ってみましょう。

コマンドプロンプトを開き、以下のようにコマンドを実行してください。

> cd C:\ti\ccsv7\ccs_base\common\uscif
> dbgjtag.exe -f @xds110 -S integrity

“scan-test has succeeded.”と表示されていればOKです。

XDS110スキャン成功

GPIOは以下のコマンドで制御します。

dbgjtag -f @xds110 -Y gpiopins, config=number, write=number, read=boolean, mask=number

  • config : GPIOピンの入出力方向の設定(0=入力設定、1=出力設定)
  • bit3 : GPIOIN1(GPIO3)
    bit2 : GPIOIN0(GPIO2)
    bit1 : GPIOOUT1(GPIO1)
    bit0 : GPIOOUT0(GPIO0)

  • wirte : 各GPIOピンの出力値設定
  • read : 各GPIOピンの状態をリード時する際に使用
  • mask : マスク設定

では、実際に以下のコマンドを実行してみてください。GPIOOUT0(GPIO0)とGPIOOUT1(GPIO1)を出力設定にして、それぞれ”Low”出力にするコマンドです。

> dbgjtag.exe -f @xds110 -Y gpiopins, config=0x3, write=0x0
> dbgjtag.exe -f @xds110 -Y gpiopins, read=yes

出力設定はGPIOOUT0、GPIOOUT1ともに”Low”設定なので、リード値は、”0x00”が返ってくるはずです。

XDS110 GPIO Low出力

では次に、GPIOOUT0を”High”に変更してみましょう。以下のコマンドを実行してください。

> dbgjtag.exe -f @xds110 -Y gpiopins, config=0x3, write=0x1
> dbgjtag.exe -f @xds110 -Y gpiopins, read=yes

GPIOOUT0(GPIO0)と、GPIOIN0(GPIO2)が”High”になるので、”0x05”が返ってきます。ちなみに、”High”の電圧レベルは3Vくらいの電圧が出力されていました。

XDS110 GPIO High出力

おわりに

今回はXDS110の製品紹介をかねてGPIO機能を動かしてみましたが、意外と簡単に扱えることがわかりました。制御方法もシンプルですので、立ち上がりエッジの信号の入力、出力ポートの状態確認など、簡単なデバッグツールとして使えるかもしれません。

本製品に関するより詳細な情報をお求めの方は弊社の問い合わせフォームからお問い合わせください。

関連情報はこちら



取り扱いメーカー

お問い合わせ