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
mikroBus HAT を用いた簡易ベアメタル開発
Search
tarotene
November 09, 2024
Technology
0
580
mikroBus HAT を用いた簡易ベアメタル開発
tarotene
November 09, 2024
Tweet
Share
More Decks by tarotene
See All by tarotene
プログラミング言語 Rust によるベアメタル環境向け SW 開発の一側面
tarotene
0
150
Other Decks in Technology
See All in Technology
Performance Insights 廃止から Database Insights 利用へ/transition-from-performance-insights-to-database-insights
emiki
0
270
Geospatialの世界最前線を探る [2025年版]
dayjournal
1
220
能登半島地震において デジタルができたこと・できなかったこと
ditccsugii
0
190
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
12
80k
名刺メーカーDevグループ 紹介資料
sansan33
PRO
0
930
E2Eテスト設計_自動化のリアル___Playwrightでの実践とMCPの試み__AIによるテスト観点作成_.pdf
findy_eventslides
2
620
20251007: What happens when multi-agent systems become larger? (CyberAgent, Inc)
ornew
1
270
これがLambdaレス時代のChatOpsだ!実例で学ぶAmazon Q Developerカスタムアクション活用法
iwamot
PRO
6
1k
防災デジタル分野での官民共創の取り組み (2)DIT/CCとD-CERTについて
ditccsugii
0
290
AWSでAgentic AIを開発するための前提知識の整理
nasuvitz
2
150
プロダクトのコードから見るGoによるデザインパターンの実践 #go_night_talk
bengo4com
1
2.5k
Exadata Database Service on Dedicated Infrastructure(ExaDB-D) UI スクリーン・キャプチャ集
oracle4engineer
PRO
3
5.5k
Featured
See All Featured
GraphQLの誤解/rethinking-graphql
sonatard
73
11k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
35
6.1k
Why Our Code Smells
bkeepers
PRO
340
57k
Embracing the Ebb and Flow
colly
88
4.8k
Raft: Consensus for Rubyists
vanstee
140
7.1k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
189
55k
Large-scale JavaScript Application Architecture
addyosmani
514
110k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
1.7k
Automating Front-end Workflow
addyosmani
1371
200k
Faster Mobile Websites
deanohume
310
31k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.5k
Transcript
Kentaro Sugimoto (tarotene) / Kernel/VM探検隊@北陸 Part7 mikroBus HAT を用いた簡易ベアメタル開発 Embedded
Rust Driver Made Easy
自己紹介 お手柔らかにお願いします 🙏 • 氏名: 杉本 健太朗 (すぎもと けんたろう) •
所属: ArkEdge Space Inc. • Kernel/VM 系は初参加 • ポートフォリオ / X は WIP Follow me
mikroBus HAT For STM32F4 Discovery Board • mikroBus HAT: MIKROE
が出している mikroBUS 準拠なソケットが たくさん付いた Hardware Attached on Top (HAT) • mikroBUS とは • MIKROE が定めた評価ボー ド同士のソケットの規格 • cf. seeed のアレとか
mikroBus HAT For STM32F4 Discovery Board • mikroBus HAT: MIKROE
が出している mikroBUS 準拠なソケットが たくさん付いた Hardware Attached on Top (HAT) • mikroBUS とは • MIKROE が定めた評価ボー ド同士のソケットの規格 • cf. seeed のアレとか
Thermo 30 Click STS-32-DIS-10KS • Thermo 30 Click: MIKROE が出している
mikroBUS な add-on 用 Click Board.I2C で通信. • 今日はこれをソケットに挿してテストしてみ る. • HAT 側のソケット番号(1-4)忘れたり間違 えたりピンアサインからやり直し • ピンアサインの変わり方は HAT 全体で 見れば決定論的なので上手く as a code するくらいはできそう. • ちょっとやればホットスワップもできそう. • 温度センサなので常に意味のある値がそれなりの ゆらぎで取れる(雑な実験に最適).
Thermo 30 Click STS-32-DIS-10KS • ソースコードはこちらに: https://github.com/tarotene/ sts32-33-dis • 使用したライブラリなど
• bitfield_struct • レジスタマップの as a code にはよく利用する • embedded-hal (v1.x.y) • マルチドロップ環境でバス共有 の仕組みが比較的良い感じ
Thermo 30 Click STS-32-DIS-10KS • ソースコードはこちらに: https://github.com/tarotene/ sts32-33-dis • 使用したライブラリなど
• bitfield_struct • レジスタマップの as a code にはよく利用する • embedded-hal (v1.x.y) • マルチドロップ環境でバス共有 の仕組みが比較的良い感じ
Thermo 30 Click STS-32-DIS-10KS (Sensiron の Datasheet STS3x-DIS より)
閑話休題 / Tips 着実にドライバ開発を進める方法 • デバイス(センサ・アクチュエータ)が持つ性 質の volatility/ambiguity に着目して順にやる •
恒久的に不変: シリアルナンバーなど • 一定の論理制約のもとで不変: 設定値など • 不変性を保証できない: 測定値など • Prinf 文デバッグ(大粒度極限)とデバッガに よる step 実行(小粒度極限)の間で上手く開 発者体験を調節する • シリアル端末の埋込み • rust-embedded-community/ menu • funbiscuit/embedded-cli-rs
そういうわけで、 雑に動かしてみる
None
Follow me