Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
How to learn Embedded Rust Edition 2021
Search
tomoyuki-nakabayashi
April 27, 2021
Technology
1.6k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
How to learn Embedded Rust Edition 2021
tomoyuki-nakabayashi
April 27, 2021
More Decks by tomoyuki-nakabayashi
See All by tomoyuki-nakabayashi
Nature Remo SDKアップデートの軌跡
tomoyuki
1
1.3k
Embedded-Rust
tomoyuki
1
3.2k
hello-world-on-RTOS
tomoyuki
0
930
Baremetal Rust for RISC-V
tomoyuki
5
1.2k
Other Decks in Technology
See All in Technology
VLMで2.3万枚のPyCon JP写真を検索!
terapyon
1
540
英語が話せなくてもKubeConスタッフに参加した話
yusuke427
2
1.1k
internal/testlog で遊ぼう
rokuosan
0
230
MCPを待つな、パスキーを拡げよう(OAuth/OIDC Numa (Immersion) Workshop 2026)
oidfj
PRO
0
270
Claude Teamプランの コスト最適化を考える
rfdnxbro
0
710
AWSとGitHub Actionsの責任境界と 組織で安全に使用する取り組み
nealle
0
160
会計事務所と顧問先の契約関係をOIDC・OAuthで表現する
terara
0
350
AWS Blocks が楽しい #ゆるWeb札幌
tacck
PRO
0
150
Digitization部 紹介資料
sansan33
PRO
2
7.7k
Android skills に学ぶ
kokiko
0
190
[ホンマでっか SRE] あなたはなぜ SRE に?
_awache
0
170
研究開発部の紹介 / Sansan R&D Profile
sansan33
PRO
4
24k
Featured
See All Featured
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
56
3.4k
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.4k
How to Ace a Technical Interview
jacobian
281
24k
A designer walks into a library…
pauljervisheath
211
24k
Building Applications with DynamoDB
mza
96
7.2k
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
740
Raft: Consensus for Rubyists
vanstee
141
7.6k
The Cost Of JavaScript in 2023
addyosmani
55
10k
Are puppies a ranking factor?
jonoalderson
2
3.8k
What does AI have to do with Human Rights?
axbom
PRO
1
2.3k
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
870
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
23k
Transcript
組込みRustの歩き方 Edition 2021 Shinjuku.rs #15 2021/04/27 中林智之 @tnakabayashi
自己紹介 中林智之 @tnakabayashi Nature株式会社のファームウェアエンジニア 組込みRustをやりたすぎて とうとう書籍を出版してしまった🎉 @ciniml と共著です ステマに来た 2
今日話すこと (9割) 本買って下さい! 3
今日話すこと (1割) • 組込みRustはマイナー ◦ 日本だと10人くらいしかやってない (要出展 ◦ 「組込みRust、そんなのあるの?」状態 •
マイナージャンルの宿命: 入門者が迷子になる問題 ◦ どこから入門すれば良い? ◦ 入門終わった後は? 👉入門方法とその先をまとめる 4
なぜRustで組込みがしたいの? • 組込み開発はC/C++のシェアが圧倒的 ◦ 性能とエコシステムの壁… • RustはC/C++に性能で匹敵、安全!モダン!最高! • 組込みRustはプロダクションレディか? ◦
言語としては大体OK (inline assembly…) ◦ エコシステム発展するとなお良し ◦ 圧倒的人口不足…! 詳細は基礎から学ぶ 組込みRust参照! 5
2021年に組込みRustを始めるには? まず使える教材をまとめてみましょう 6
Rustを学ぶ TRPL (The Rust Programming Language) 実践 Rust 入門 実践
Rust プログラミング入門 プログラミングRust Rust を始めるための資料集 : https://blog-dry.com/entry/2021/01/23/141936 7
組込みRustを学ぶ The Embedded Rust Book The Discovery Book The Embedonomicon
Knurling-book • 技術同人誌 ◦ Rustで始める自作組込みOS入門 ◦ Rust on Bare-metal Raspberry Pi ◦ など 組込みRust 3部作 8
教材のマッピング Rust 組込み Rust TRPL 実践Rust入門 組込みRust 3部作 Knurling-book 実践Rustプログラミング入門
プログラミングRust 9
教材のマッピング Rust TRPL 実践Rust入門 組込みRust 3部作 Knurling-book 組込み Rust 実践Rustプログラミング入門
プログラミングRust 10
教材のマッピング Rust TRPL 実践Rust入門 組込みRust 3部作 Knurling-book 組込み Rust 実践Rustプログラミング入門
プログラミングRust 11
教材のマッピング Rust TRPL 実践Rust入門 組込みRust 3部作 Knurling-book 重さ (物 理)
誰かーここも頼む! 組込み Rust 実践Rustプログラミング入門 プログラミングRust 競合が居ないだけで需要があるとは言っていない! 12
基礎から学ぶ 組込みRust の内容紹介 Wio Terminalを題材にRustや組込みや組込みRustを学ぶ! • LEDとボタン / GPIO •
シリアル通信 / UART • タイマ / 割り込み • ブザー / PWM • 光センサ / ADC • 加速度センサ / I2C • 液晶ディスプレイ / SPI 組込みRustのOSやフレームワークのうち以下を中心に解説 - embedded-hal (https://github.com/rust-embedded/embedded-hal) - atsamd-rs (https://github.com/atsamd-rs/atsamd) - embedded-graphics (https://github.com/embedded-graphics/embedded-graphics) 13
基礎から学ぶ 組込みRust の内容紹介 →Rustの文法解説もある →組込みシステムとは?から書いている →Linux / MacOS / Windows
の環境構築手順もある! →誤植もある😫 申し訳ねぇ! →サポートサイトに正誤表もある! https://github.com/tomoyuki-nakabayashi/Embedded-Rust-f rom-Basics Rustを知らない組込み屋さんはもちろん、 組込み経験なしな人向けの本でもある 14
グラフィカルに楽しむ embedded-graphics けっこう使える (ド ライバの性能問題は若干ある) →日本語情報がない (まじでない) 私 私 私
井田さん graphicsって素敵やん? 15
最後はアプリ作成 Wio Terminal に搭載されているデバイスとグラフィクスを組 み合わせて遊ぶ! 詳しくは書籍で! 16
閑話休題: やり残したこと ネットワーク (せっかく WiFi と Bluetooth 使えるデバイスなのに! 低レイヤドライバの作り方 別ボードへの移植
便利な開発ツールの紹介 C FFI 17
基礎から学ぶ 組込みRustの次は… もっとRustしたい人向け The Rust Programming Language - ド安定 -
webで見れる 実践Rust入門 - Rustらしいプログラムの書き方が学 べる 実践Rustプログラミング入門 - 幅広いジャンルが楽しめる プログラミングRust - ちょっと内容が古め (2nd edition 2021/06) - 標準ライブラリとか詳しい 18
基礎から学ぶ 組込みRustの次は… もっと組込みRustしたい人向け Knurling-book - 最新コンテンツ以外は無料公開 - ツールの体験が良い - 機材のお値段がネック…
スクラッチから作りたい人 - Embedonomicon - rust-raspberrypi-OS-tutorials - Rustで始める自作組込みOS入門 The Embedded Rust Book - C FFI - 最適化 - などあるので一通り目を通 すと幸せになれる ¥12,000 19
さらにその先 - Rust Embedded organizationをチェックする - weekly meeting議事録とか - Ferrous
Systemsのブログを読む - 機能安全サポートとかツールの開発状況など - Knurling-rsにスポンサーして最新の教材を見る - スポンサー料金でコンテンツ制作 - ツール教材の充実に貢献できるのでオススメ! - embedded-hal実装やBSP crateの開発に参加する - 人口が少ないのでやることいっぱい ここまでやると国内の第一人者! 20
まとめ〜組込みRustの歩き方〜 - 『基礎から学ぶ 組込みRust』は good entry point まず買おう! その後のことは後で考えよう! 21
参考 - 基礎から学ぶ 組込みRust のサポートサイトに参考情報のリンクを掲載 - https://github.com/tomoyuki-nakabayashi/Embedded-Rust-from-Basics/blob/main/r eferences.md 22