!Rust/Wio Terminal 基礎から学ぶ組み込みRustで,RustとWio Terminalに入門. ::環境設定 curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh source $HOME/.cargo/env rustup target add thumbv7em-none-eabihf sudo apt install git minicom libusb-1.0-0-dev libsdl2-dev libssl-dev cargo install cargo-generate cargo install hf2-cli cargo install cargo-hf2 echo 'ATTRS{idVendor}=="2886", ENV{ID_MM_DEVICE_IGNORE}="1"' | sudo tee /etc/udev/rules.d/99-seeed-boards.rules echo 'SUBSYSTEM=="usb", ATTRS{idVendor}=="2886", MODE="0666"' | sudo tee -a /etc/udev/rules.d/99-seeed-boards.rules echo 'SUBSYSTEM=="tty", ATTRS{idVendor}=="2886", MODE="0666"' | sudo tee -a /etc/udev/rules.d/99-seeed-boards.rules sudo udevadm control --reload-rules :: ブートローダーモード 2回,素早くリセットする.ユーザLED(青い方)がゆっくり点滅する. :: Lチカ cargo generate --git https://github.com/tomoyuki-nakabayashi/wio-blink-template.git で,src/main.rsを編集する. loop { // TODO: ここにLチカのコードを書く delay.delay_ms(1_000u16); user_led.toggle(); } ちなみに,vscodeのrust-analyzerが, can't find crate for `test` can't find craterustc(E0463) とかってエラーを出してたのだけど,.vscode/settings.jsonを用意して { "rust-analyzer.checkOnSave.allTargets": false, "rust-analyzer.checkOnSave.extraArgs": [ "--target", "thumbv7em-none-eabihf" ] } と書いたらエラーがでなくなった. (cf. https://github.com/rust-analyzer/rust-analyzer/issues/3801) :: wio_terminalクレートとatsamd-halクレートを使う cargo generate --git https://github.com/tomoyuki-nakabayashi/wio-examples-template.git