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
Keyboard Firmware in Rust
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
KOBA789
July 03, 2019
Technology
0
790
Keyboard Firmware in Rust
https://rust.connpass.com/event/133657/
KOBA789
July 03, 2019
Tweet
Share
More Decks by KOBA789
See All by KOBA789
メモリが足らない2026
koba789
4
1.3k
直接メモリアクセス
koba789
0
510
人工衛星のファームウェアをRustで書く理由
koba789
16
9.8k
令和最新版手のひらコンピュータ
koba789
14
9.2k
時の流れが許せない
koba789
0
270
ついに生産が終わったけどZ80でまだまだ遊びたい
koba789
5
4.7k
ISUCONの練習を楽しくたくさんやる方法
koba789
2
1.5k
Z80をRustで動かすまで年が越せない
koba789
0
390
ISUCON練習環境を最も簡単に用意する方法
koba789
2
3.3k
Other Decks in Technology
See All in Technology
20260311 技術SWG活動報告(デジタルアイデンティティ人材育成推進WG Ph2 活動報告会)
oidfj
0
370
(Test) ai-meetup slide creation
oikon48
3
460
NewSQL_ ストレージ分離と分散合意を用いたスケーラブルアーキテクチャ
hacomono
PRO
4
400
2026-03-11 JAWS-UG 茨城 #12 改めてALBを便利に使う
masasuzu
2
400
"作る"から"使われる"へ:Backstage 活用の現在地
sbtechnight
0
190
フロントエンド刷新 4年間の軌跡
yotahada3
0
500
アーキテクチャモダナイゼーションを実現する組織
satohjohn
1
1.1k
[JAWSDAYS2026]Who is responsible for IAM
mizukibbb
0
900
PMとしての意思決定とAI活用状況について
lycorptech_jp
PRO
0
140
OCI技術資料 : コンピュート・サービス 概要
ocise
4
54k
OCHaCafe S11 #2 コンテナ時代の次の一手:Wasm 最前線
oracle4engineer
PRO
2
150
頼れる Agentic AI を支える Datadog のオブザーバビリティ / Powering Reliable Agentic AI with Datadog Observability
aoto
PRO
0
210
Featured
See All Featured
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
1
1.4k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.6k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
10k
4 Signs Your Business is Dying
shpigford
187
22k
We Have a Design System, Now What?
morganepeng
55
8k
Are puppies a ranking factor?
jonoalderson
1
3.1k
RailsConf 2023
tenderlove
30
1.4k
Faster Mobile Websites
deanohume
310
31k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
The World Runs on Bad Software
bkeepers
PRO
72
12k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.7k
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.1k
Transcript
ࣗ࡞ΩʔϘʔυͷ ϑΝʔϜΣΞΛ 3VTUͰॻ͘ KOBA789
,0#" w ΫοΫύουגࣜձٕࣾज़෦σʔλج൫άϧʔϓ w ϝΠϯͷࣄେྔͷσʔλΛ͍͍ײ͡ʹ͢Δ͜ͱ ͱ͍͏͜ͱʹͳ͍ͬͯΔ w ࣮ࡍ͓͠Ζͦ͏ͳ͜ͱΛͳΜͰ͍ͬͯΔ w
ݱࡏ৽ଔ
ࣗ࡞ΩʔϘʔυ
None
࠷ۙ<͍ͭ >ਓؾͳझຯ<ཁग़య>
https://techlife.cookpad.com/entry/2018/08/14/172130
ฐࣾʹͨ͘͞ΜͷѪՈ͕
Ͱɺ
https://internship.cookpad.com/2019/spring/
Πϯλʔϯγοϓ ࣗ࡞ΩʔϘʔυίʔε
None
څྉΒͬͯࣗ࡞ΩʔϘʔυΛ Δ͜ͱʹͳͬͯ͠·ͬͨ
͑Β͍ਓʮόζΒ͍ͤͨʯ Զʮ͡Ό͋ΧϦΩϡϥϜաܹʹʯ
݁Ռ
wΜ͚ͩͪΖΜΔ w؆୯ͳిࢠճ࿏Δ wϓϦϯτج൘ͷઃܭΔ wϑΝʔϜΣΞ3VTUͰॻ͘
ϑΝʔϜΣΞ 3VTUͰॻ͘
1SP.JDSP https://www.switch-science.com/catalog/1623/ ࣗ࡞ΩʔϘʔυͰҰൠత
1SP.JDSPͷੴ"5NFHB6 "5NFHB6"73
3VTUͰ"73ͩΔ͍
ΈࠐΈ3VTU͓͢͢Ί $PSUFY.γϦʔζ "3. 3*4$7͡Όͳͯ͘͝ΊΜͳ
௨শCMVFQJMM w 45.'$͕ͬͯΔ w 45.'$$PSUFY. w 3".,# w $16$MPDLVQUP.)[ w
'MBTI,# ࣮ࡍͳ͔ͥ,# https://wiki.stm32duino.com/index.php?title=File:STM32_Blue_Pill_perspective.jpg
௨শCMVFQJMM ͓͍͘Βͩͱࢥ͍·͔͢ https://wiki.stm32duino.com/index.php?title=File:STM32_Blue_Pill_perspective.jpg
௨শCMVFQJMM https://wiki.stm32duino.com/index.php?title=File:STM32_Blue_Pill_perspective.jpg
։ൃͷͨΊͷπʔϧ
͍͍ͩͨ 5IF&NCFEEFE3VTU#PPL ʹॻ͍ͯ͋ΔͷͰলུ
ͱ͘ʹศརͳͷΛհ
#MBDL.BHJD1SPCF w 1SPHSBNNFS%FCVHHFS w ιϑτΣΞΦʔϓϯιʔε w ϋʔυΣΞCMVFQJMMͳͲ͕͑Δ w ࢲCMBDLQJMMΛͬͯ࡞ͬͨ w
ϑϦεΫέʔεͰ͍͍ײ͡
None
cargo runͰ͖Δ ຊೋ Demo
HEC͑Δ ϒϨʔΫϙΠϯτషΕΔ ϝϞϦμϯϓͰ͖Δ
println!Ͱ͖Δ Demo
cortex_m_semihosting
ΈࠐΈϓϩάϥϛϯάͰ ආ͚ΒΕͳ͍ͷ
पลػثϖϦϑΣϥϧ
ϖϦϑΣϥϧͷػೳݺͼग़͠ ϨδελΞΫηε
ΞηϯϒϦ /P
JO$ ϝʔΧʔ͕ϥΠϒϥϦΛఏڙ JO3VTU ศརΫϨʔτ͕͋Δ
TWESVTU wΈΜͳ͍͖ͩ͢ίʔυδΣωϨʔλ wσόΠεఆٛϑΝΠϧTWE͔Β wϨδελΞΫηεؔͷίʔυΛు͘
TUNG wTWESVTUͰు͔ΕͨίʔυΛ w͍͍ײ͡ʹௐͨ͠ΫϨʔτ wTUNGͰ͑Δ
-νΧͱ͔Ͱ͖Δ
None
͔͠͠ɺ
ΩʔϘʔυͳͷͰ 64#)*%Λ ͠ΌΒͳ͍ͱ͍͚ͳ͍
ϨδελΛݸୟ͘͘Β͍Ͱ 64#͠ΌΕͳ͍
ް͍64#ͷ༷ॻͱ ް͍64#)*%ͷ༷ॻͱ Ϋιް͍45.ͷ༷ॻΛಡΜͰ దͳϨδελɾϝϞϦΛ ͨ͘͞ΜಡΈॻ͖͢ΔίʔυΛॻ͘ඞཁΞϦ
࣮͠·ͨ͠
64#)*%࣮Γ͔ͨ w 64#ͷ༷ΛಡΉ w 64#)*%$MBTTͷ༷ΛಡΉ w 45.'ͷϚχϡΞϧΛಡΉ w ͕ۭ݀͘΄ͲಡΉ w
MJCPQFODNͷίʔυΛࢀߟʹ͢Δ w 3VTUͰॻ͘ˠϩδΞφͰݟΔˠ͢ w ҎԼ܁Γฦ͠
ԶӦۀ͘Β͍͔͔ͬͨ
͜͜ͰϩδΞφ Demo
3VTUؔͳ͍ؾ͕͢Δͳ
ίʔυยΛͪΐͬͱհ
64#ͷ௨৴Ͱ͏όοϑΝ
https://www.stmcu.jp/design/document/reference_manual/51428/ IUUQTXXXTUNDVKQEFTJHOEPDVNFOUSFGFSFODF@NBOVBM
͜ΕΛ͍͍ײ͡ʹϞσϦϯά
None
VolatileCell
VolatileCell w ϝϞϦͷWPMBUJMFΞΫηεΛ w ͍͍ײ͡ʹ͢ΔϥΠϒϥϦ w std::ptr::read_volatileͱ͔unsafeͰࠔΔ
MJCPQFODNΛ ࢀߟʹ͕ͨ͠ʜʜ
3VTUಛ༗ͷ͠͞ w ϓϩτίϧͷ࣮εςʔτϚγϯʹͳΓ͕ͪ w εςʔτΛܕ҆શʹ͢Δͷͪΐͬͱίπ͕͍Δ w งғؾͰߏ࡞Δͱ్தͰ٧Ή w ݩͷ࣮ΛಡΜͰ $ͷࡶ͞ʹΩϨΔ
None
None
͠Γ͖ΕͱΜ΅