LPC810始めました
ATtiny13Aを使って、UART-I2Cブリッジを試作したらダメダメだったので、
代わりに、LPC810を使うことにしました。
当然今まで使ったことが無いので、色々と勉強しないといけません。
トラ技 2014年2月号(最軽量! 8ピンDIP ARMエントリ誕生)を片手に
昨日から、勉強始めました。
LPC810は、ARM Coretex-M0搭載の32ビットマイコンです。
8ピンDIP形式で75円なので、気楽に使えそうです。
機能的にもI2C、UART、SPI等の通信が使えるので色々と使えそうです。
ただし、Flashメモリが4KB、RAMが1KBしかないんですよねぇ
シリアル通信、7セグ表示のサンプルをコンパイル&書込みして問題なく動きました。
ドキュメント類も色々と印刷して目を通しています。
マイコンには8KBのROMが搭載されているのですが、ブート処理プログラムや、
ROM APIと呼ばれているライブラリも乗っているようです。
使い方によっては、フラッシュメモリの節約ができるかもしれません。
2015/04/01 追記
トラ技 2014年2月号(最軽量! 8ピンDIP ARMエントリ誕生)の内容は、
一見入門には良さそうですが、GPIO操作等においてちょっとチンプンカンプンです。
解説も、雑誌付属CD-ROMのサンプルを解凍して利用するだけです。
LPC810でプログラムを作成するには、まずARMでのアプリケーション開発の作法を
知っておく必要があるようです。
ARM系のアプリケーション開発では、様々なベンダーがあるわけで、
そのための開発環境の共通ルールが決められているようです。
まずは、「ARM® Cortex™マイクロコントローラ ソフトウェア インタフェース規格(CMSIS)」
を知っておく必要がありあそうです。
簡単にいうと、「ベンダ非依存ハードウェア抽象化レイヤ」のようです。
下図のように、アプリケーションはライブラリを使って、CPUに用意されている
機能を利用することが出来ます。
開発環境 LPCXpressoのインストールディレクトリに圧縮ファイルで格納されています。
今回使うlpc810用も用意されているようです(無修正で利用できるかは未確認です)。
\lpcxpresso\Examples\NXP\LPC800\LPC8xx_Libraries.zip
解凍すると次のフォルダが作成されます。上記のレイアのライブラリに対応します。

lpc_driver_libのヘッダファイルの中はこんな感じです。
これを使えば、I2CやUART等の利用が出来そうです。
またこのライブラリを使ったサンプルソースもあります。
\lpcxpresso\Examples\NXP\LPC800\NXP_LPC8xx_SampleCodeBundle.zip
« ATtiny13AでUART-I2Cブリッジを試作したが微妙 | トップページ | LPC810でI2Cでフリーズする »
「ARM」カテゴリの記事
- Arduino IDE+Arduino STM32環境で指定と異なるgccが使われてしまう(2025.01.23)
- Arduino IDE 2.3.4でArduino STM32を利用する(2025.01.12)
- PocketGoで遊んでみる(1)(2020.03.24)
- Arduino用 MML文演奏ライブラリの作成 その1(2019.04.01)
- BluePillボードで4桁7セグLEDの制御(2019.03.21)
「LPC810」カテゴリの記事
- MCUXpresso IDEのインストール(2019.02.12)
- LPC810を使ってIchigoJamで赤外線リモコン受信を行う(4)(2016.08.17)
- LPC810を使ってIchigoJamで赤外線リモコン受信を行う(3)(2016.08.15)
- LPC810を使ったUART-I2Cブリッジの改良版が出来ました(2016.07.21)
- LPC810を使ったUART-I2Cブリッジの機能拡張の検討中(2016.07.13)
« ATtiny13AでUART-I2Cブリッジを試作したが微妙 | トップページ | LPC810でI2Cでフリーズする »
コメント