SSブログ

PSoC 4 を MDK-ARM で使いたい (5) [PSoC]このエントリーを含むはてなブックマーク#

MDK-ARM のスプラッシュ

内蔵 Flash にプログラムが書けるようになったので、次はデバッガの動作を試してみます。

デバッグしようにもソフトウェアがありません

main.c を開く

そうなのです。 PSoC 4 のプロジェクトを作成はしましたが、このプロジェクトでは、一行もソフトウェアを書いていないのです。 さすがに、デバッグ対象のソフトウェアが無いのではしょうがないので、まずは、コードを追加します。

左側にある "Project" ペインから "main.c" ファイルを探して、ダブルクリックするとテキスト・エディタが開きます。


コードを追加する

エディタが開いたら、 for ループの中にコードを追加します。

    for(;;)
    {
        /* Place your application code here. */
        Clock_1000Hz_Stop();
        CyDelay(5000);
        Clock_1000Hz_Start();
        CyDelay(5000);
    }

このコードによって、ふたつのクロックの片方が5秒動いて、5秒止まって、という動作を繰り返すようになります。 LEDは、クロックが動いている間は明るさが変化し、クロックが止まると一定の明るさを保つようになります。

プロジェクトを Build して Download すると、5秒ごとに異なる動作をするのが観測できます。

デバッグモードに投入

デバッグモードに入る

デバッグを開始するには、 "Start/Stop Debug Session" ボタンをクリックします。


32K 制限の警告

すると、このようなダイアログが表示されます。 これは、無償版の MDK-ARM では、 32k バイトのコードサイズ制限があるという事を示す警告です。 PSoC 4200 の場合には、最大 Flash 容量が 32k バイトですので、問題ないでしょう。


デバッグモード

"OK" ボタンをクリックすると、デバッグモードに入ります。

ブレークポイントを設定する

Step Over 実行

デバッグモードに入ったとき、 PSoC の初期化を行う initialize_psoc() の直前で CPU が止まっています。 つまり、 LED を駆動するための信号が出力されておらず、 LED は消灯したままの状態です。

初期化だけを行うためには、 "Step Over" ボタンをクリックして、初期化関数を実行します。 初期化を行うと、 LED の明るさが変化し始めます。


ブレークポイントの設定

次に "main.c" ファイルを開いて、二か所にブレークポイントを設定します。 それぞれの行の左側で左クリックすると、赤い印が現れ、ブレークポイントが設定されたことがわかります。

ブレークポイントまで実行

Run ボタン

"Run" ボタンをクリックすると、次のブレークポイントまで実行されます。 LED は、 "Run" ボタンをクリックするたびに、明るさが変化する状態と変化しない状態を繰り返します。 PSoC の場合、 CPU の動作とディジタルロジックで使用するクロックが連動していないため、このような動作になります。

デバッグモードから抜けるには、ふたたび "Start/Stop Debug Session" ボタンをクリックします。

関連商品

PSoC 4200M CY8CKIT-043 Prototyping Kit

PSoC 4200M CY8CKIT-043 Prototyping Kit

  • 出版社/メーカー: スイッチサイエンス
  • メディア: エレクトロニクス

nice!(0)  コメント(0)  トラックバック(0)  このエントリーを含むはてなブックマーク#

nice! 0

コメント 0

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

トラックバック 0

トラックバックの受付は締め切りました

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。