• No : 6674
  • 公開日時 : 2021/01/13 08:58
  • 更新日時 : 2021/05/19 16:25
  • 印刷

【TI: プロセッサ】 CCSv10の使用方法:CCSv10 実行/デバッグ

CCSv10の使用方法:CCSv10 実行/デバッグの方法を教えてください。
カテゴリー : 

回答

 
CCSv10実行環境構築
 
① Target Configuration Fileを新規作成する。
 

② Target Configuration Fileを開いて、ターゲットデバイス/接続方法
(JTAGデバッガの指定)/スタートアップ時のGELファイルを指定する。
 

③ “Target Configuration”を押すか、左下のAdvancedタブを選択し、実行するコアを選択する。
 
 
 
※この時点までに、ターゲットの電源を入れJTAGデバッガをUSBケーブルで接続しておくこと。
④ Basicタブを押して②の画面に戻り、Saveボタンを押して“Target Configuration File”を保存する。
  Test Connectionボタンを押して、設定の確認を行う。
 
 
 
デバッガの起動
 
 
 

ターゲットコア接続
 
 
GELスクリプトについて

• GELスクリプトはCCSが標準に備えている実行補佐のためのもので、テキストで記述された拡張子“.gel”の
 ファイルのこと。GELスクリプトの詳細は、こちらを参照してください。

• Target Configuration で指定する起動時に実行されるGELスクリプトの他に、GEL Filesウィンドウの
 ポップアップメニューから“Load GEL”を選ぶと、任意のスクリプトをLoadすることが可能。Loadされたスクリプト中
 でキーワードとして登録した関数はメニューバーの“Scripts“に表示され、個別に実行する事が可能。
 
 
 
 

プログラムのロード
 
・Load Programコマンドにてターゲットデバイスにデバッグを行うプログラム(.outファイル)をロードする。

・Browse Projectボタンからは、ProjectExplorerのイメージでファイルを選択可能。
 (“Browse…”ボタンからはExplorerイメージでのファイル選択を行える)
 
 

CPUコアの動作を制御
 
・CCSがデバッガモードになり、プログラムのロード後に、メニューバー“Run”のサブメニューに
 CPUコアの制御関連のコマンドが追加される。
 
 
‒ Resume︓現在の位置より実行開始
‒ Suspend︓現在位置で実行停止
‒ Terminate︓実行/デバッグ停止(接続終了)
‒ Disconnect︓ターゲットとの接続終了
‒ Go Main︓現在位置をmain関数へ
‒ Reset︓SW/HW/System Reset実行
‒ Restart︓リスタート
‒ Step Into︓CレベルでのStep実行(関数内に入る)
‒ Step Over︓CレベルでのStep実行(関数に入らない)
‒ Assembly Step Into︓アセンブリレベルでのStep Into
‒ Assembly Step Over︓アセンブリレベルでのStep Over
‒ Step Return︓Cレベルで現在の関数から抜けるまで実行
‒ Run to Line︓選択行まで実行
‒ Free Run︓設定されているブレイクポイントで停止せずに実行(マニュアルで停止は可能)
 
 
Breakpointの設定
 
Breakpointのオプションはポップアップメニューから選択可能。
 
 
・主なBreakpointの種類
- Breakpoint(Software)︓プログラムにパッチを当て実現
- Hardware Breakpoint︓ARMコアの機能として実現
- Profile Control Point etc.
 
・主なActionの種類
- Remain Halted︓実行停止
- Update View︓ウィンドウのリフレッシュ
- Disable Group/Enable Group︓Breakpointの無効/有効化
- Execute Expression(GEL)︓GELスクリプトの実行
- Read Data from File/Write Data to File etc.
 
 

Breakpointsウィンドウ
• Breakpoint一覧表示や、それぞれの有効/無効を設定、削除ができる。
• Skip CountやActionなどを変更する場合は、ポップアップメニューから“Breakpoint Properties…”
 をクリックし、Properties for…ウィンドウにて行う。
 “Breakpoint(Code Composer Studio)”からはBreakpointの種類の変更ができる。
 
 
 

変数/メモリの内容を見る①

メニューバーの“View”より見たい内容を選択し、ウィンドウを表示する。
 
 

‒ Memory Browser
指定したアドレスからのメモリ内容を指定の形式でダンプ表示する。
 

‒ Disassembly
指定されたアドレスをコード領域と見なして、逆アセンブルしたニーモニックを表示する。
 
 
 
変数/メモリの内容を見る②
 
‒ Expressions
Cソースイメージでの指定された参照可能な変数を定義した型として表示する。extern属性の変数も
参照可能な場所であれば表示できる。(指定した変数を表示する)
 

‒ Variables
Cソースイメージでの実行中のスコープのある自動変数を定義された型で表示する。(指定しなくても表示される)
 

‒ Registers
ARMコアのレジスタのほか、プロセッサ内のSOCとして定義されているデバイスのレジスタに付いても
表示することが出来る。
(ARMコアレジスタはメモリマッピングされないので他のウィンドウでは表示できないが、デバイスのレジスタ
はアドレスを指定する事で、他の方法でも参照可能)
 
 
 
 
デバッガオプション
 
 

コンソール出力
 
• CCSでbuildしたプログラムは、標準出力としてコンソールへの出力を使う事が出来る。
(CCSのConsoleウィンドウに任意の文字列を出力できる)

これにより、UARTなどのシリアルコンソールが使えない状態でも、デバッガをPCに接続した
状態であればprintfを使用したデバッグを行う事が出来る。
 
なお、コンソール出力は他のコアからの出力と区別するため、先頭に表示元のコア名が付く。