VS-CodeでPSoC4の開発+書込み

ModusToolBoxのEclipseのIDEがあるのですが、ちょっと重たくて使いにくい部分もあり、VS-Codeで開発できないかと調べると、可能であることがわかりました。いざやってみると苦戦してしまって、1日半かけてようやくEclipseのIDEで開発していた状態と同様に、開発から書込みまでできるようになりました。そこで、忘れないようにメモしておきます。

ーー

情報は公式サイトのPDFにありました。
Visual Studio Code for ModusToolbox™ user guide

VS-Codeの他に必要なExtentionは「C/C++ tools」「Cortex-Debug」「Arm Assembly」「ModusToolBox Assistant」「clangd」です。

ーー

「ModusToolBox Assistant」をインストールすると左のメニューアイコンにロボットアイコンが表示されます。それをクリックします。

「ModusToolBox Tools」の「Global」にある「Create Project」をクリックします。

BSPが起動して、ひながたになるプロジェクトを作成します。

ーー

今回つかう書き込み器は「WCH-Link」です。純正の「MiniProg4」でももちろん書き込めますが、安くて入手しやすい「WCH-Link」を使います。そのための設定を・・というところで苦戦してしまいました。

結果的には、そのままの設定で書込みできました。接続するピンは以下の4つです。

  • SWCLK
  • SWDIO
  • GND
  • 3.3V

書込みは、「RUN AND DEBUG」から書込むような情報が見つかるのですが、デバッグモードになってしまいました。今回は、ただ書き込んで、書込み終わったら動き出して欲しいので、その設定をタスクにしていきます。

「.vscode」の「tasks.json」に設定を追記していきます。

5〜6行目の間に以下を挿入します。

ーー

{
            "label": "Program PSoC4 using OpenOCD (KitProg3)",
            "type": "shell",
            "command": "/Applications/ModusToolbox/tools_3.4/openocd/bin/openocd",
            "args": [
                "-s",
                "/Applications/ModusToolbox/tools_3.4/openocd/scripts",
                "-c",
                "set PSOC4_USE_ACQUIRE 2",
                "-c",
                "adapter speed 2000",
                "-f",
                "interface/kitprog3.cfg",
                "-f",
                "target/psoc4.cfg",
                "-c",
                "kitprog3 power_config on 3300",
                "-c",
                "init",
                "-c",
                "kitprog3 power_control on",
                "-c",
                "program build/last_config/mtb-example-psoc4-capsense-csd-button-tuning.elf verify reset exit"
            ],
            "problemMatcher": [],
            "group": {
                "kind": "build",
                "isDefault": false
            }
        },

ーー

WCH-Linkで書込んでいる様子です。