2010-10-01から1ヶ月間の記事一覧

LPCxpressoでTOPPERS/ASPアプリケーションをビルドする

朝、EAGLEで作業しながらtwitterを見ていたら、shintaさんがLPCxpresso上でTOPPERS/ASPによるLEDちかちか実行に成功との報がありました。 「そういえばLPCxpressoのIDEはLinux版があったな」 などと今更思い出したので、ちょっと試してみたところ、あっさり…

ハードとソフトの境界付近

ハードウェアの直上で動くソフトウェアを書いていると、たまにマクロ宣言やコメントに息苦しいほどの説明性が必要になります。 たとえば、TOPPERS/ASP for LPCのチップ依存部に以下のような記述があったとしましょう。 /* NVICの割り込みフィールドの幅 */ #…

百人中百人が「それはねーよ」と突っ込みたくなるLPCXpressoの水晶振動子

うん。まぁ。面積的に苦しいのはわかるんですけど。せめて寝かせましょうよ。

リリースもしたことだし、突っ込んでおくか

TOPPERS/ASP for CORTEX-M3 1.3.2公式リリースについてです。 インディアン => エンディアン バーナー => バナー

LPC1768依存部をリリース

TOPPERS/ASP ターゲット非依存部 1.6 に対応した、LPC1768依存部1.6.0をリリースしました。リリースファイルはダウンロードページから入手できます。また、開発環境インストール用のパッケージもリリースしています。 ようやくリリースできました。上記リリ…

CORTEX-M4Fの識別はどうするのか

現在LPC1768への移植が大詰めですが、実はこの移植作業の真の目標はCORTEX-M4FマイコンにTOPPERS/ASPを移植することにあります。その際、現在整備しているコードの大半が再利用できるだろう、NXPから出るCORTEX-M4Fマイコンは、LPC17xxに酷似しているだろう…

リリースまでわずか

ドキュメントを整備し直しました。 TOPPERS/ASP for LPC のインストール方法 - TOPPERS/ASP for LPC - OSDN TOPPERS/ASP for LPC の使い方 - TOPPERS/ASP for LPC - OSDN Doxygenドキュメント、ソースツリー内のxxx_user.txtいずれも細かい粗があるとは思い…

ラスボスはC++か

今週末、力任せにいろんな作業を進めたおかげでまた少し前進しました。ただ、リリースが近づくにつれ、一歩進めるために投下しなければならない労力がだいぶ増えてきました。 Doxygenは、やはりすばらしい TOPPERS/ASPの移植指針は、asp/doc/porting.txtに記…

MakefileでROMとSRAMを切り分ける

lpc1768_generic_gcc依存部は、ROM化コードとSRAM実行コードの両方を生成できます。最終的に使うときには当然ROM化版を使いますが、デバッグ時にはGDBでSRAMにダウンロードする方が便利です。とはいえ、SRAM版はこんな感じでsample1がぎりぎり32kBに収まって…

現状と今後の方向

現在、TOPPERS/ASP for LPCは、コードに同梱されるドキュメントを書き終えた状態です。昨日一度まとめましたが、だいたいこんな感じ。 LPC1768の内蔵オシレーターで100MHzで動作している コンソールはUART0 開発環境はLinux上のクロスGCC http://sourceforge…

Full HD画面で快適開発

今回の開発では途中からPCの出力をFull HD画面の液晶モニタにアップグレードしたため、VMwareのスクリーンも一挙に大きくなって作業効率があがりました。見よ、この有り余る面積。

LPC1768の割り込み優先度の構成について

UM10360 rev 0.1のtable 655によると、AIRCRの初期値は0xFA050000。Table 660によると、PRIGROUPは[10:8]であり、つきあわせると同フィールドのリセット値は0。 PRIGROUPが0の時のPRIORITY/SUBPRIORITYの分割方法はTable 661によると未定義だが、おそらくは5…

ドキュメント付けも完了

ソースツリー内部の簡単なドキュメントも書き終わりました。ツリー構造に少し手を入れて、ターゲット依存部はずいぶんすっきりした印象です。 さて、そろそろちゃんとしたインストール・ドキュメントとターゲット依存部のドキュメントを書くか。

進捗

TOPPERS/ASP 1.6.0 対応 LPC1768依存部は、SVNのtrunkが現在次のような状態にあります。 ビルド可能 SRAMおよびROM上でsample1が動作可能 CPU依存部、チップ依存部、ターゲット依存部の3層構造 シリアルはasp/pdic/uart下に分離 E_PACKAGE、MANIFEST整備終…

ASP 1.6.0で動作確認

TOPPERS/ASP 1.6.0ターゲット非依存部を使って、LPC1768上でsample1を動作させることに成功しました。すでに書いたcfgの修正のほか、prc_config.cの中でCTX型をリネームする必要がありましたが、それだけで動作するようになりました。後はSVN上へ移した後、…

cfg 1.6.0をUbuntu 10.04でビルドする

TOPPERS/ASPのコンフィギュレータ(CFG)はソースツリーから分離されています。入手するには専用ページからダウンロードします*1。 しかし、このダウンロードしたパッケージはUbuntu 10.04でビルドしようとすると失敗します。これはcfgがg++ 4.4に対応していな…

ようやく動いた

先日いただいたコメントに従い例外スタックのアライメントをCORTEX-M3リビジョン1コアにあわせたところ、一発でsample1が動きました。 詳細は後日書きます。sirius506さん、ありがとうございました。

今日の進捗

今日は公式リリースのバグに引っかかったりしましたが、とりあえずシリアルポートは動作しているように思えます。main_task()の中で何らかの理由で例外が発生して即終了している模様です。

TOPPERS/ASP for CQ-STARMのバグ

TOPPERS/ASP 1.3.2 CQ-STARMの実装のバグを見つけました。結構致命的だと思いますが、これまで動いていたのは偶然でしょうか。あるいは、私の勘違いの可能性もあります。 TOPPERS/ASP 1.3.2 の簡易パッケージ版をダウンロードしてビルドしました。生成された…

4 充実しているLinux向けARMツール

ARM系の汎用マイコンの解説は、相当数の記事がKEILのIDEとICEを紹介しています。これらはWindowsで動作しますし、KEILはARMのツールであることもあって、広く使われています。 一方、Linuxで動作するARM系のフリーツールも充実しています。 まずはGCC, binut…

ポーリングによるテキスト出力成功

ようやくここまでこぎつきました。あと一歩で「動いてます」と言えるところに達しました。