mbedの互換機を作ってみた€¦ · ユニバーサル基板でcortex-m3 ... compiler uses...
TRANSCRIPT
![Page 1: mbedの互換機を作ってみた€¦ · ユニバーサル基板でCortex-M3 ... Compiler uses the industry standard ARM RVDS ... LPCXpresso(gcc)…100KB](https://reader035.vdocuments.site/reader035/viewer/2022081800/5af197107f8b9ac62b902b68/html5/thumbnails/1.jpg)
mbedの互換機を作ってみたYoshihiro TSUBOI
@ytsuboi
![Page 2: mbedの互換機を作ってみた€¦ · ユニバーサル基板でCortex-M3 ... Compiler uses the industry standard ARM RVDS ... LPCXpresso(gcc)…100KB](https://reader035.vdocuments.site/reader035/viewer/2022081800/5af197107f8b9ac62b902b68/html5/thumbnails/2.jpg)
自己紹介
@ytsuboi主にTwitter界隈をうろうろ
2009 2010- 2012-
![Page 3: mbedの互換機を作ってみた€¦ · ユニバーサル基板でCortex-M3 ... Compiler uses the industry standard ARM RVDS ... LPCXpresso(gcc)…100KB](https://reader035.vdocuments.site/reader035/viewer/2022081800/5af197107f8b9ac62b902b68/html5/thumbnails/3.jpg)
主な活動
![Page 4: mbedの互換機を作ってみた€¦ · ユニバーサル基板でCortex-M3 ... Compiler uses the industry standard ARM RVDS ... LPCXpresso(gcc)…100KB](https://reader035.vdocuments.site/reader035/viewer/2022081800/5af197107f8b9ac62b902b68/html5/thumbnails/4.jpg)
主な活動
Massimo Banzi @Arduino Eric Pan @Seeed Studio
Pt, Ladyada @AdafruitNathan Seidle @Sparkfun
![Page 5: mbedの互換機を作ってみた€¦ · ユニバーサル基板でCortex-M3 ... Compiler uses the industry standard ARM RVDS ... LPCXpresso(gcc)…100KB](https://reader035.vdocuments.site/reader035/viewer/2022081800/5af197107f8b9ac62b902b68/html5/thumbnails/5.jpg)
みなさんmbedしてますか!?
![Page 6: mbedの互換機を作ってみた€¦ · ユニバーサル基板でCortex-M3 ... Compiler uses the industry standard ARM RVDS ... LPCXpresso(gcc)…100KB](https://reader035.vdocuments.site/reader035/viewer/2022081800/5af197107f8b9ac62b902b68/html5/thumbnails/6.jpg)
mbedは素晴らしい!!
TQFP100(0.5mmピッチ)のLPC1768をDIPで。ユニバーサル基板でCortex-M3が使える。
![Page 7: mbedの互換機を作ってみた€¦ · ユニバーサル基板でCortex-M3 ... Compiler uses the industry standard ARM RVDS ... LPCXpresso(gcc)…100KB](https://reader035.vdocuments.site/reader035/viewer/2022081800/5af197107f8b9ac62b902b68/html5/thumbnails/7.jpg)
mbed便利
![Page 8: mbedの互換機を作ってみた€¦ · ユニバーサル基板でCortex-M3 ... Compiler uses the industry standard ARM RVDS ... LPCXpresso(gcc)…100KB](https://reader035.vdocuments.site/reader035/viewer/2022081800/5af197107f8b9ac62b902b68/html5/thumbnails/8.jpg)
私もGPSロガーを作ったり。
![Page 9: mbedの互換機を作ってみた€¦ · ユニバーサル基板でCortex-M3 ... Compiler uses the industry standard ARM RVDS ... LPCXpresso(gcc)…100KB](https://reader035.vdocuments.site/reader035/viewer/2022081800/5af197107f8b9ac62b902b68/html5/thumbnails/9.jpg)
AVRライタを作ったり。
![Page 10: mbedの互換機を作ってみた€¦ · ユニバーサル基板でCortex-M3 ... Compiler uses the industry standard ARM RVDS ... LPCXpresso(gcc)…100KB](https://reader035.vdocuments.site/reader035/viewer/2022081800/5af197107f8b9ac62b902b68/html5/thumbnails/10.jpg)
でも秋月でも5,200円…
![Page 11: mbedの互換機を作ってみた€¦ · ユニバーサル基板でCortex-M3 ... Compiler uses the industry standard ARM RVDS ... LPCXpresso(gcc)…100KB](https://reader035.vdocuments.site/reader035/viewer/2022081800/5af197107f8b9ac62b902b68/html5/thumbnails/11.jpg)
mbedのコンパイラはRVDS
To perform the actual compilation the mbed Compiler uses the industry standard ARM RVDS 4.1 compiler engine, in the default configuration, to give excellent code size and performance.
http://mbed.org/handbook/mbed-Compiler
![Page 12: mbedの互換機を作ってみた€¦ · ユニバーサル基板でCortex-M3 ... Compiler uses the industry standard ARM RVDS ... LPCXpresso(gcc)…100KB](https://reader035.vdocuments.site/reader035/viewer/2022081800/5af197107f8b9ac62b902b68/html5/thumbnails/12.jpg)
RVDSは凄いとあるコードをコンパイルすると、mbed(RVDS)…31KBLPCXpresso(gcc)…100KB
CoreMarkを実行すると、
LPCXpresso LPC1769でCoreMarkを動かす - PS3とLinux、電子工作もhttp://todotani.cocolog-nifty.com/blog/2011/04/lpcxpresso-lp-1.html
![Page 13: mbedの互換機を作ってみた€¦ · ユニバーサル基板でCortex-M3 ... Compiler uses the industry standard ARM RVDS ... LPCXpresso(gcc)…100KB](https://reader035.vdocuments.site/reader035/viewer/2022081800/5af197107f8b9ac62b902b68/html5/thumbnails/13.jpg)
mbedのバイナリの流用
There are no limitations on code size (apart from the limits of the device itself!), and the generated code can be used freely for commercial and non-commercial use.
http://mbed.org/handbook/mbed-Compiler
ARMさん太っ腹!
![Page 14: mbedの互換機を作ってみた€¦ · ユニバーサル基板でCortex-M3 ... Compiler uses the industry standard ARM RVDS ... LPCXpresso(gcc)…100KB](https://reader035.vdocuments.site/reader035/viewer/2022081800/5af197107f8b9ac62b902b68/html5/thumbnails/14.jpg)
バイナリはLPCXpressoでも
LPCXpresso NXP LPC1769なら秋月で2,500円デバッガも付いてる!(mbedじゃ使えません。詳しくは次のプレゼンを!)
EthernetのPHYの石が異なるのでTCP/IPはダメです。なによりもサイズが違うので置き換えもできません。
![Page 15: mbedの互換機を作ってみた€¦ · ユニバーサル基板でCortex-M3 ... Compiler uses the industry standard ARM RVDS ... LPCXpresso(gcc)…100KB](https://reader035.vdocuments.site/reader035/viewer/2022081800/5af197107f8b9ac62b902b68/html5/thumbnails/15.jpg)
オフィシャルにも互換機の…
Prototype to hardware - mbedhttp://mbed.org/users/chris/notebook/prototype-to-hardware/
中の人(Chris Stylesさん)が互換機の作り方を解説してくれています。
![Page 16: mbedの互換機を作ってみた€¦ · ユニバーサル基板でCortex-M3 ... Compiler uses the industry standard ARM RVDS ... LPCXpresso(gcc)…100KB](https://reader035.vdocuments.site/reader035/viewer/2022081800/5af197107f8b9ac62b902b68/html5/thumbnails/16.jpg)
既に有る互換機
http://mbed.org/users/franzachatz/notebook/reference-design/
Galileo7 LPC1769http://mbed.org/users/okini3939/notebook/g7lpc1769/
![Page 17: mbedの互換機を作ってみた€¦ · ユニバーサル基板でCortex-M3 ... Compiler uses the industry standard ARM RVDS ... LPCXpresso(gcc)…100KB](https://reader035.vdocuments.site/reader035/viewer/2022081800/5af197107f8b9ac62b902b68/html5/thumbnails/17.jpg)
僕も作った
通称 pati-bed (compati-mbed)
![Page 18: mbedの互換機を作ってみた€¦ · ユニバーサル基板でCortex-M3 ... Compiler uses the industry standard ARM RVDS ... LPCXpresso(gcc)…100KB](https://reader035.vdocuments.site/reader035/viewer/2022081800/5af197107f8b9ac62b902b68/html5/thumbnails/18.jpg)
特徴
・そのままリプレイス可能(だいたい)・mbedチップは無し →マスストレージではなくlpc21ispなどで書く・Ethernet付きと無しの2種類 →もちろん、PHYのチップも同一品・だいたいmbedの半額 →mbed組込の作品をそのまま置いておける
![Page 19: mbedの互換機を作ってみた€¦ · ユニバーサル基板でCortex-M3 ... Compiler uses the industry standard ARM RVDS ... LPCXpresso(gcc)…100KB](https://reader035.vdocuments.site/reader035/viewer/2022081800/5af197107f8b9ac62b902b68/html5/thumbnails/19.jpg)
ステータス
・量産がめんどくさい… →実装やさんに頼むしかないかな・今までISP(UART)を使って書き込む前提で 進めていたがSWD使えるようにしたく なってきた。
![Page 20: mbedの互換機を作ってみた€¦ · ユニバーサル基板でCortex-M3 ... Compiler uses the industry standard ARM RVDS ... LPCXpresso(gcc)…100KB](https://reader035.vdocuments.site/reader035/viewer/2022081800/5af197107f8b9ac62b902b68/html5/thumbnails/20.jpg)
他にも作ってる
![Page 21: mbedの互換機を作ってみた€¦ · ユニバーサル基板でCortex-M3 ... Compiler uses the industry standard ARM RVDS ... LPCXpresso(gcc)…100KB](https://reader035.vdocuments.site/reader035/viewer/2022081800/5af197107f8b9ac62b902b68/html5/thumbnails/21.jpg)
LPC1768
ISP用UART
USB Host
ArduinoとはSPIで通信LPCは5Vトレラントで素晴らしい
![Page 22: mbedの互換機を作ってみた€¦ · ユニバーサル基板でCortex-M3 ... Compiler uses the industry standard ARM RVDS ... LPCXpresso(gcc)…100KB](https://reader035.vdocuments.site/reader035/viewer/2022081800/5af197107f8b9ac62b902b68/html5/thumbnails/22.jpg)
ステータス
・ハードウェアはできあがったので、 ソフトウェアを開発中 SPIめんどくさい・まずは3Gモデムから →次はBT4LEやろうかな・もちろんOpenSourceにします・USB Hostでこんなの実装したいという旨を 教えてくださったら差し上げるかも。
![Page 23: mbedの互換機を作ってみた€¦ · ユニバーサル基板でCortex-M3 ... Compiler uses the industry standard ARM RVDS ... LPCXpresso(gcc)…100KB](https://reader035.vdocuments.site/reader035/viewer/2022081800/5af197107f8b9ac62b902b68/html5/thumbnails/23.jpg)
思ったこと
・エディタいまいちだよね・VCSはgitとかでアクセスさせて欲しい・デバッガ欲しい printfの時代じゃないよね。コスト高いし。 →ローカル開発がしたくなる →ムカついてDS-5/RVDS買った。 けど、ぶっちゃけMDKのほうがオススメ
![Page 24: mbedの互換機を作ってみた€¦ · ユニバーサル基板でCortex-M3 ... Compiler uses the industry standard ARM RVDS ... LPCXpresso(gcc)…100KB](https://reader035.vdocuments.site/reader035/viewer/2022081800/5af197107f8b9ac62b902b68/html5/thumbnails/24.jpg)
CMSIS-DAPブーム到来
デバッグアダプタ欲しくて勢いでつくった。
![Page 25: mbedの互換機を作ってみた€¦ · ユニバーサル基板でCortex-M3 ... Compiler uses the industry standard ARM RVDS ... LPCXpresso(gcc)…100KB](https://reader035.vdocuments.site/reader035/viewer/2022081800/5af197107f8b9ac62b902b68/html5/thumbnails/25.jpg)
でも、MDKってお高いんでしょ?
![Page 26: mbedの互換機を作ってみた€¦ · ユニバーサル基板でCortex-M3 ... Compiler uses the industry standard ARM RVDS ... LPCXpresso(gcc)…100KB](https://reader035.vdocuments.site/reader035/viewer/2022081800/5af197107f8b9ac62b902b68/html5/thumbnails/26.jpg)
32KBまでならタダ!
→黄色は美味しくいただけます!
![Page 27: mbedの互換機を作ってみた€¦ · ユニバーサル基板でCortex-M3 ... Compiler uses the industry standard ARM RVDS ... LPCXpresso(gcc)…100KB](https://reader035.vdocuments.site/reader035/viewer/2022081800/5af197107f8b9ac62b902b68/html5/thumbnails/27.jpg)
最近のmbedすげぇ
GDBを使ったデバッグが進捗中なんかOpenOCDサポートも来るらしい
![Page 28: mbedの互換機を作ってみた€¦ · ユニバーサル基板でCortex-M3 ... Compiler uses the industry standard ARM RVDS ... LPCXpresso(gcc)…100KB](https://reader035.vdocuments.site/reader035/viewer/2022081800/5af197107f8b9ac62b902b68/html5/thumbnails/28.jpg)
ARM面白い、mbed面白い・mbedのオンラインコンパイラは便利・ペリフェラルの初期化とか楽ちん →ローカルでもそのまま使える・回路図公開されているので自作のCortex基板の ファームをmbedでチョロ書きとかできる・この類の環境にデバッガは無かったけれども、 デバッガ環境も整いつつある・次のステップはNXPのペリフェラルドライバ →nxp-lpc.comとか超便利
![Page 29: mbedの互換機を作ってみた€¦ · ユニバーサル基板でCortex-M3 ... Compiler uses the industry standard ARM RVDS ... LPCXpresso(gcc)…100KB](https://reader035.vdocuments.site/reader035/viewer/2022081800/5af197107f8b9ac62b902b68/html5/thumbnails/29.jpg)
ところで
![Page 30: mbedの互換機を作ってみた€¦ · ユニバーサル基板でCortex-M3 ... Compiler uses the industry standard ARM RVDS ... LPCXpresso(gcc)…100KB](https://reader035.vdocuments.site/reader035/viewer/2022081800/5af197107f8b9ac62b902b68/html5/thumbnails/30.jpg)
1%1%
98%
mbedを始めた理由
ボタンがカッコイイARMだからクラウドだから ※調査方法: 私のイメージ
![Page 31: mbedの互換機を作ってみた€¦ · ユニバーサル基板でCortex-M3 ... Compiler uses the industry standard ARM RVDS ... LPCXpresso(gcc)…100KB](https://reader035.vdocuments.site/reader035/viewer/2022081800/5af197107f8b9ac62b902b68/html5/thumbnails/31.jpg)
100%
開梱したときの第一印象
ボタンが普通※調査方法: 私のイメージ
![Page 32: mbedの互換機を作ってみた€¦ · ユニバーサル基板でCortex-M3 ... Compiler uses the industry standard ARM RVDS ... LPCXpresso(gcc)…100KB](https://reader035.vdocuments.site/reader035/viewer/2022081800/5af197107f8b9ac62b902b68/html5/thumbnails/32.jpg)
これは無いでしょ!!!
![Page 33: mbedの互換機を作ってみた€¦ · ユニバーサル基板でCortex-M3 ... Compiler uses the industry standard ARM RVDS ... LPCXpresso(gcc)…100KB](https://reader035.vdocuments.site/reader035/viewer/2022081800/5af197107f8b9ac62b902b68/html5/thumbnails/33.jpg)
超探した
![Page 34: mbedの互換機を作ってみた€¦ · ユニバーサル基板でCortex-M3 ... Compiler uses the industry standard ARM RVDS ... LPCXpresso(gcc)…100KB](https://reader035.vdocuments.site/reader035/viewer/2022081800/5af197107f8b9ac62b902b68/html5/thumbnails/34.jpg)
KEILの評価ボード
ボタン欲しさに引っぺがす事案まで発生
![Page 35: mbedの互換機を作ってみた€¦ · ユニバーサル基板でCortex-M3 ... Compiler uses the industry standard ARM RVDS ... LPCXpresso(gcc)…100KB](https://reader035.vdocuments.site/reader035/viewer/2022081800/5af197107f8b9ac62b902b68/html5/thumbnails/35.jpg)
でも僕はKEILのボード持ってない…
![Page 36: mbedの互換機を作ってみた€¦ · ユニバーサル基板でCortex-M3 ... Compiler uses the industry standard ARM RVDS ... LPCXpresso(gcc)…100KB](https://reader035.vdocuments.site/reader035/viewer/2022081800/5af197107f8b9ac62b902b68/html5/thumbnails/36.jpg)
見つけた!