6
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Longan Nanoを使ってみる 1 ~ビルド環境の構築~

Last updated at Posted at 2022-02-11

ビルド環境の構築

ここでは、Longan Nanoの説明と開発環境のインストール、サンプルの書き込みと実行を行う。

全体の目次

Longan Nanoを使ってみる 1 ~ビルド環境の構築~
Longan Nanoを使ってみる 2 ~デバッガの環境設定~
 Sipeed RISC-V Debugger
Longan Nanoを使ってみる 3 ~デバッガの使用方法~
Longan Nanoを使ってみる 4 ~printfを使ったデバッグ~
Longan Nanoを使ってみる 5 ~ゲームのプロジェクトを作成~
Longan Nanoを使ってみる 6 ~文字出力~
 Longan Nanoを使ってみる ~FONTX2ファイルを作る~
Longan Nanoを使ってみる 7 ~外枠とブロックを書く~
 Longan Nanoを使ってみる ~謎の画像表示関数~
Longan Nanoを使ってみる 8 ~ボールを動かす~
Longan Nanoを使ってみる 9 ~A/Dコンバータから入力~
Longan Nanoを使ってみる 10 ~パドルを動かす~
Longan Nanoを使ってみる 11 ~ボタンの入力
Longan Nanoを使ってみる 12 ~ボールのロス~
Longan Nanoを使ってみる 13 ~ステージの遷移とゲームオーバー~
Longan Nanoを使ってみる 14 ~PWMとサウンド~
Longan Nanoを使ってみる 15 ~音楽を鳴らす~
Longan Nanoを使ってみる 16 ~とりあえずのまとめ~

注意

このページは、quiita.com で公開されています。URLがqiita.com以外のサイト、例えばjpdebug.comなどのページでご覧になっている場合、悪質な無許可転載サイトで記事を見ています。正しいURLは、https://qiita.com/BUBUBB/items/7ce85ada67a3f6d1944d です。
無許可転載サイトでの権利表記(CC BY SA 2.5、CC BY SA 3.0とCC BY SA 4.0など)は、不当な表示です。
正確な内容は、qiitaのページで参照してください。

Longan Nanoとは

Longan Nanoは、sipeed 社の作ったGD32VF103CBプロセッサを搭載した開発用の小型ボード。フルカラーのLEDと小型のカラーTFT液晶を搭載して 800円前後( 秋月電子・2022/2/10現在)と非常に安いのが特徴。
longanNANO.JPG

デバッガも1000円程度(千石通商)で売られており、デバッガを使用するとソースコードレベルでのデバッグができるようになり、PC感覚でマイコンを使用できる。

追記:どこも最近は売り切れか取り扱い終了のようだった。マルツでは購入できそうだが、中の人はDigikeyらしい。 回路自体は秋月電子で売られている FD2232D USB シリアル2ch変換モジュールとほぼ同じなので、代用可能かもしれない。(未確認)その場合、結線については、このページや、このページを参考にしてほしい。Windowsのデバイスドライバなどは、どちらも同じチップなのでそのまま使用できるはず。結線だけは考えないといけないので、シリアル2ch変換モジュールの回路図と、Sipeedの回路図を比べて試行錯誤すること。

USB接続(簡易)JTAG Debugger を作るという記事がほぼそのまま使用できる

2,000円でおつりがくる程度で試せるのでダメ元でも壊しても懐はたいして痛まないだろう。
(実際に遊ぶゲームを作るには、ブレッドボード、圧電スピーカーなど、多少の追加が必要だが)

下の写真がゲームを開発して動かすために必要な部品の全て。すでに、半田ごてなどがあれば、部品代は本体、デバッガを含めて3,000円はかからない。

DEV.JPG

というわけで買ってきてからゲームが動くようになるまでを記録していこうと思う。

用意するもの

このページで用意が必要なものは次の通り

  • Windows PC (Windows10/11)
  • Longan Nano 本体
  • microSD (16GBytes程度あれば十分すぎる)
  • USB Type-Cケーブル (PCとLongan Nanoを接続する)

開発環境の構築

Longan Nanoでは、開発にPlatform IOを使用する。一般的には、Visual Studio Codeのプラグインとして使用されているようだ。

Visual Studio Codeのインストールと日本語化

Visual Studio codeをダウンロード、インストール。インストールが終わったら起動し、左側の [Extensions]をクリック、上にあるテキストボックスに [Japanese Language Pack]と入力、表示された [Japanese Language Pack for Visual Studio Code]をクリック、右側ペインで[Install]をクリックする。

vscode1.png

インストールが終わると再起動を促されるので、VSCodeを再起動。日本語化されて起動されてくる。

vscode2.png

Platform IOのインストール

Platform IOも、日本語化の言語パックと同じようにExtensionで作成されているので、手順は同じ。
左側の [Extensions]をクリック、上にあるテキストボックスに [PlatformIO]と入力、表示された [PlatformIO IDE]をクリック、右側ペインで[Install]をクリックする。

vscode3.png

インストールはすぐ終わる・・・ことはなく、画面右下ペインに進捗状況が表示されている。それなりに早いネットワークでも10分程度はかかるので、ウインドウを閉じずに待つ。

vscode4.png

インストールが終了すると、VSCodeの再起動を促されるので再起動する。

再起動すると、VSCodeにPlatformIOが追加されている。左側バーの蟻?のようなアイコンと、ステータスバーの部分の家のマークが、PlatformIOの機能を呼び出すボタンとなる。
vscode5.png

ステータスバーの家のアイコンをクリックし、PlatformIOのホーム画面を表示、Project Examplesをクリックする。

vscode7.png

初期状態では、Examplesが空なので、次のダイアログが表示される。Install Embedded Platformをクリック。

vscode8.png

テキストボックスに、GD32Vと入力、検索するとGigaDevice GD32Vが表示されるので、デバイス名をクリック。

vscode9.png

プラットフォームの一覧が表示される。この中にLongan NanoとLongan Nano Liteがあることを確認し、Installをクリック。

vscode10.png

インストールには時間がかかるので、気長に待つ。インストールが終了すると、ダイアログが表示される。OKを押して閉じる。
vscode11.png

ホームボタンを押し、Platform IOのホームを表示させる。ProjectExamplesをクリック。
vscode7.png

Exampleの一覧に、Longan Nanoがあることを確認しておく。確認が終わったら、ダイアログはXを押して閉じてよい。

vscode12.png

これで、Platform IOの基本的な設定は終了。

USBからの書き込み

このページは、Sipeed RV Debuggerを使用するが、使用しないでLongan Nanoに書き込むようにできるようにしておく。トラブルがあったとき、デバッガが悪いのか、本体が悪いのかなど切り分ける必要があるため。
このモードでの書き込みはDFUモードというらしい。(Device Firmware Updateのことかな?)

書き込みツールのダウンロード

Sipeedのツールダウンロードページから、GD32_MCU_Dfu_Tool_V3.8.1.5784_1.rarをダウンロードする。(ファイル名はバージョンにより異なるかもしれない)

中には次のようなファイルが含まれている。

ルート
 +--GD32 MCU Dfu Drivers_v1.0.1.2316
 |      +--x64
 |          +--GD32 MCU Dfu Drivers.exe    64bit Windows用ドライバ
 |      +--x86
 |          +--GD32 MCU Dfu Drivers.exe  多分32bit用ドライバ?
 |    
 +--GD32 MCU Dfu Tool_v3.8.1.5784
            +-- GD32 MCU Dfu Tool.exe   書き込みツール
            +-- GD_MCU_DLL.dll
            +-- GigaDevice Dfu Tool User Manual.pdf

書きこむ対象のファイルも必要なので、サンプルをダウンロードする。
Sipeedのファームウェアダウンロードページから、BadApple_demmo.zipをダウンロードしておく。

中には、次のようなファイルが含まれている。

badapple_demo.bin  …プログラム本体。今回書き込む対象のファイル
bmp.bin … データファイル。microSDのルートディレクトリに配置
logo.bin … データファイル。microSDのルートディレクトリに配置

microSDカードをFAT32でフォーマット、bmp.bin と logo.binをルートフォルダにコピーし、Longan Nanoに挿入しておく。

ドライバのインストール

ダウンロードした rarファイルに含まれている、GD32 MCU Dfu Drivers.exe を管理者権限で実行する。右クリックメニューから、「管理者として実行」を選択。

driver1.png

インストールするかの確認ダイアログが表示されるので[インストール]をクリック。

driver2.png

インストールはすぐに終了する。ウインドウに GD32 MCU driver has been successfully installと表示されたら、正常に導入が完了。[Cancel]をクリック。
driver3.png

ドライバの導入確認

Longan nanoを実際に接続し、ドライバが正しく動作しているかを確認する。

LonganNanoをPCのUSBに接続する。この段階では、LonganNanoは電源供給を受けているだけで、PCからはアクセスできない。Longan NanoをDFUモードで再起動するため、次の操作を行う

  1. BOOT0ボタンを押しっぱなしにする
  2. RESETボタンを押す
  3. RESETボタンを離す
  4. BOOT0ボタンを離す
driver5.png この小さいボードで、難しそうな操作だと思ったが、実際にはそこまでシビアではなく、2~3回練習すると、指一本の角度で「モゾモゾ」と操作できるようになる。(表現が難しいが)

デバイスが接続されると、Winodwsの音が鳴り、デバイスが接続されたことが確認できる。 デバイスマネージャ(管理ツールのもの)から、GD32 Device in DFU Mode というデバイスが登録されていれば成功。

driver4.png (この、ちゃんとしたデバイスマネージャが起動できない場合、コマンドプロンプトから devmgmt.msc と入力すると起動できる)

デバイスへの書き込み

GD32_MCU_Dfu_Tool_V3.8.1.5784_1.rarを解凍した GD32 MCU Dfu Tool_v3.8.1.5784フォルダ内の GD32 MCU Dfu Tool.exe を実行する。
起動時に必ず、A software update is available for your product! Do you want to download it? というダイアログが表示されるが、[いいえ]や[No]で良い。(はい、とやっても404のエラーになるだけでダウンロードできない)

起動したら、DFU Deviceに今接続したデバイス(1台しかない)を選択、Download to Device (デバイスに書き込む)を選択、openボタンを押して、ダウンロードしたサンプルファームウェアのbaddapple_demo.binを選択。

driver6.png

入力が終わったら[OK]を押して書き込み開始。

書き込みが終わったら、Longan NanoのRESETボタンを押すと、デモが開始される。bmp.bin と logo.binが入ったmicroSDを挿入しておくのを忘れないようにすること。デモは 白黒のアニメーションで、女の子がリンゴを食べてホウキに乗って飛んでいく?というもの Bad Appleという有名なものらしい。思ったよりずっと高速で動く。

demo.png

DFUモードが不安定

私の環境だけかもしれないが、DFUモードに切り替えると、3回に1回くらいはPCがブルースクリーンで落ちてしまう。あまりに生産性が悪い。デバッガで接続し、書き込む分には全く安定しているので、DFUモードの相性なのかもしれない。(AMD Ryzen 9 + Windows 11)

そのため、今では、DFUモードはほとんど使用していない。

ここまででできたこと

PCに開発環境をインストールし、DFUモードでLongan Nanoにプログラムを書き込むことができるようになった。

次の記事に進む

Longan Nanoを使ってみる 2を参照してください

6
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?