【パワーメーター2019】mbedLPC1114FNのuSD速度<ATMEGAより遅い>

 

右クランク用のArduino ATMEGA328P(3.3V8MHz内蔵)SD書き込みが200μsecと速かったのですが、左クランクで同じ基板を作るのは飽きちゃうので、mbed CPUで最安のmbed LPC1114FN28を検討するために、μSD書き込み速度を測定してみました。
●結果と考察
クロック周波数からすると8MHz対50MHzと圧倒的に速いと思っていたのですが、SD書き込みデータで時間を測定してみるとなんと、ATMEGA328Pが200μsecに対して、LPC1114FNが300-330μsecと遅かったです。SDカードがHC16GBで、速度を律速していますが、それでも100μsec遅いのいは、CPUハードというよりは、mbedOSとSDFileSystemライブラリーに原因がありそうです。
=>SDファイル書き込みでなく、単にPCへの転送だと115200bpsで1.8msec周期、230400bpsで0.9msecでしたので、シリアル速度が律速しているので、50MHz相当でコードが走っていると思います。
=>LPC1114FNは、ちょっとしたプログラム変更です頻繁にメモリーフルエラーが頻発しますので、これは、mbed コードが重すぎるという印象があります。これが最重要課題で、LPC1114FNは、使い方をシンプルなデータを高速転送などに限定すれば使えるので、無線モジュールへセンサデータを転送するなどの使い方では、ATMEGA328Pより高速で使えますので
TPOで使い分けしないといけませんので、汎用ではないということです。

③mbed2.0対応のLPC1114FNは、製造中止になっているので、それなりの実力しかなかったということなので、モノが良くてもコト作り(ソフト)とのバランスがとれてなかった製品だったと理解いたします。
その点、Arduinoは、大昔からATMEGA328Pだけで膨大なソフトウェア資産が構築されていますので、mbedほどハードとソフトのバージョン違いで動作できない問題が発生しにくい点が普及の原動力であり、アドバンテージだと思います。モノ作りとコト作りのバランスがとれてきたので長生きできたのですが、あと10年もつかというと流石に時代の変化にはついていけないと思います。

●ATMEGA328PとLPC1114FN28のスペックを確認してみた

ATMEGA328P

(内蔵8MHz)

LPC1114FN28
秋月品名 Arduino Bootloader書込済(3.3V 内蔵8MHz仕様) ATmega328P LPCマイコン LPC1114FN28
秋月価格(2019/6/26) 330円(Boot書き込み済) 400円
メーカー ATMEL datasheet NXP datasheet
CPU core 8bit AVR ARMCortex-M0
サイズ 35×8 36×16
ピン数 DIP28 DIP28
Flash量 32KB 32KB
RAM量 2KB 4KB
CPU CLOCK 最大 8MHz 50MHz
ピン配置図(clickで拡大)
IF UART 1,SPI 1,I2C 1 UART 1,SPI 1,I2C 1
供給電圧 VCC:2.7V~5.5V Vdd:1.8V~3.6V Vss:GND
AD変換電圧 AVCC=VCC 3.3V
※電圧レギュレータが無い
Vdda=Vdd  Vssa:GND
※電圧レギュレータが無い
生産供給 Arduinoで採用されている 製造中止
PCからの書き込み方法 ISPモード内蔵なので
シリアル接続でArduinoIDEと接続してプログラム書き込み可能詳細は、
https://htdeko.com/arduino/atmega328p.html
ISPモード内蔵なので
シリアル接続でmbed binファイルを転送すれば書き込むことができるが書き込みボード付きでスイッチサイエンスで2160円で販売している
他には秋月の解説書があって2種類の書き込み方法がある
対応OS Arduino mbed2.0 (サポートなくなる)

●結論:
モノ作り的ではなく、コト作り的にATMEGA328Pが圧倒的に有利です。
LPC1114FNを使っていても数年ももたない感じがしますが、私は、6個も持ってますので、何か最適な用途で生かしたいと思います。
 クランク基板なら、無線モジュールで115200bpsで転送する
 場合は、ATMEGAは速度追いつかないので、LPC114FNが勝ちです。
今回は、SDカード書き込み速度で比較したので、ATMEGAが勝ちましたが
CPUハードの高速性が必要な用途はダメだと思います。

●mbedのローエンドCPUで対ATMEGA候補
LPC1114FNシリーズのワンランク上でLPC11U35があります。
これは、ピン数32ピンと多いので長さが5㎜ほど長いですが
性能は格段に向上してます。これでもμSD書き込み測定してみます。
ARM CorTexで,電子工作に向いた小型低価格の定番品が無い点
が見えてきたのですが、これが将来的になにかでてくるのではないかというネタとして検討していきます。左クランクなら多少大きくても使えるので手持ちのLPC11U35で組んでみます。

●以後
ATMEGA328Pがクランク用途でどこまでつかえるか、SDカード以外に
 シリアル無線送信速度がどこまで上がるかが重要なので、シリアル転送速度を測定してみます。

 

※2019年12月4日記
 その後、計測システムを4個試作しましたが、CPUは、プアなスペックでは全然役にたちませんでした。  
 力とか加速度を測定するのに、処理速度が50MHz以下で10ビットのADC、32KBフラッシュなどチープな仕様のCPUでは、拡張性もなく、まともな計測システムにはくみこめませんでした。
  おもちゃという扱いで、趣味のIOTでも使えませんので、マイコン入門用として扱うべきです。ということで、最終的には、STM32シリーズでサイズと性能が最高のパフォーマンスのNUCLEO L432KC に落ち着きました。Lシリーズなので省エネで単三3本で十数時間持ちます。
仕様:https://os.mbed.com/platforms/ST-Nucleo-L432KC/

国内調達できるようになって安くなった件、秋月は、未だ扱ってませんが、来年あたり扱うと思います。

【マイコン】Nucleo L432KCも国内調達で安くなってきた<定番として2個追加購入>

 

 

 

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です