tinygobook

module
v0.0.0-...-e950552 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 12, 2024 License: MIT

README

基礎から学ぶ TinyGoの組込み開発

高砂正哲が執筆した「基礎から学ぶ TinyGoの組込み開発」 (C&R研究所) のサポートサイトです。 質問や誤記などがある場合は本ページの Issue もしくは Twitter で受け付けています。

書籍情報

各節まで含めた目次はこちら。

Twitter

Twitter に投稿する時の hashtag は #tinygo#tinygobook を使ってください。

よくある質問と回答

tinygo flash に失敗します

2 章 P.31 に従い (リセット x 2 で) ブートローダーに入れてから tinygo flash してみてください。 それでも改善しない場合は、 tinygo build -o out.uf2 のようにして uf2 ファイルを作ってから手動で書き込みしてください。

正誤表

誤記等を見つけた場合は、 Issue もしくは Twitter で教えてください。

注意

ネットワーク部 (RTL8720DN) のファームウェアアップデート方法の修正があるため必ず確認してください。 具体的には、

$ git clone https://github.com/Seeed-Studio/ambd_flash_tool

ではなく

$ git clone https://github.com/Seeed-Studio/ambd_flash_tool --branch JP

を使うようにしてください。

TinyGo と Go の組み合わせ
TinyGo Go 備考
0.31.0 1.21 - 1.22 net package が大幅更新 (※2)
0.28.1 1.19 - 1.20 Wio Terminal の動作について一部問題あり(※1)
0.27.0 1.19 - 1.20
0.26.0 1.18 - 1.19 書籍執筆時 Version (脱稿直前のリリース)
0.25.0 1.18 - 1.19 書籍執筆時 Version

※1
TinyGo 0.28.1 で Wio Terminal に搭載されている ATSAMD51 マイコンの Cache を有効化する変更が入り、 I2C などが一部動作不良となるケースがあります。 本件については 正誤表 に記載しています。

※2
TinyGo 0.31.0 で net や net/http package 関連が大幅更新されました。 この辺りについては後日まとめる予定ですが、さしあたりは 正誤表 を確認してください。

Demos

デモアプリケーションはこちら。 Wio Terminal + TinyGo 0.26 で動作を確認しています。

Wio Terminal Tracker

LIS3DH から得た情報を用いて、パソコン上の画像の傾きを制御する Demo です。

$ tinygo flash --target wioterminal --size short ./wioterminal/tracker/
   code    data     bss |   flash     ram
  54496    1500    6260 |   55996    7760

注意) -opt z 以外でビルドすると、I2Cデータの受け取りに失敗します

Gopher福笑い

十字キーなどを使って目と口の位置を自由に動かすことができる Demo です。 面白い顔を作って Twitter に投稿してください。

$ tinygo flash --target wioterminal --size short --opt 2 ./wioterminal/fukuwarai/
   code    data     bss |   flash     ram
 447876     356  180480 |  448232  180836

注意) 実行速度を高速化するため -opt 2 でビルドすることを推奨します

Chapter 7 ネットワークに接続する

サポートサイトにて、 chap07 のコードを公開しています。 以下のようにして chap07 ディレクトリに移動してから書き込むことができます。 ssid や password が必要となるコードについては P.235 を参考に設定してください。 TinyGo 0.26 以降は tinygo flash 時に --monitor を指定することが出来ます。 多くの場合、 minicom や Tera Term を使わなくてもうまくやり取りできるはずです。

$ cd chap07/

$ tinygo flash --target wioterminal --size short --monitor ./update_test/
   code    data     bss |   flash     ram
  57452    1528    9004 |   58980   10532
Connected to COM5. Press Ctrl-C to exit.
RTL8270DN Firmware Version: 2.1.2
各種リンク

著者紹介

about Gopher

The Gopher character is based on the Go mascot designed by Renée French.

Directories

Path Synopsis
wioterminal

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL