TOPPERS/ASP

CMSIS DSPライブラリをリンクする

表記の件をこそこそ実験中です。CMSISのビルドはできていますが、DSP関数はまだつかったことがありません。 とりあえず、ビルドをする上で以下の点は注意が必要です(LPC1768用) arm_math.hをインクルードする ARM_MATH_CM3をプリ・デファインする chip_stdd…

カーネルのライブラリ化に必要な作業

TOPPERS/ASPのドキュメントを読むと、カーネルのライブラリ化が可能であるかのように書かれています。 しかしながら、これには注意が必要です。TOPPERS/ASPのコンフィギュレータが行うカーネルのライブラリ化は、特定のアプリケーションに依存します。つまり…

起動問題解決せず

TOPPERS/ASP for LPCには嫌な問題があります。デバッガを使用していないときには起動しないと言う問題です。 この問題、なかなか再現が難しいです。少なくとも私の手元では再現率は低いです。いったん再現すると同じコードでは高い確率で再現しますが、そこ…

TOPPERS/ASP for LPC最近の動き

最近の動き、などと書く時にはあまり進展がないわけですが、まずはご報告。 CORTEX-M3依存部 先日発表されたTOPPERSプロジェクト公式のCORTEX-M3依存部は、無事TOPPERS/ASP for LPCプロジェクトに組み込まれました。当プロジェクトではこれまでカーネルのタ…

CORTEX-M3依存部が、ターゲット非依存部1.7.0対応に

長らく、アップデートされないままになっていたTOPPERS/ASP CORTEX-M3依存部が1.7.0になりました。これで最新版ASPカーネルに追いついたことになります。 ざっと見たところ、大きな変化としては構造の改良が上げられます。 これまではarch/arm_m_gcc/ の直下…

CORTEX-M3公式依存部が1.7.0対応に

表題の通りです。 TOPPERSプロジェクト/ASPカーネル まだダウンロードしていませんが、リンク先ページを見る限り、CQ-STARMがサポート対象から落ちている可能性があります。コアのバージョンが古いですからね。 時期を見てマージを検討します。

カーネル1.7.0対応コードのリリース

表記の通り、TOPPERS/ASP for LPCプロジェクトは、LPC1768用カーネル・ソースをTOPPERS/ASPカーネル ターゲット非依存部1.7.0に対応させました。 ニュース 同時にサンプルプログラム集もアップデートしています。

カーネル1.7.0をtrunkにマージ

周到に準備をしたつもりだったけど、Subversiveによるマージ結果は結構がっかり。うまくマージできたては居るようだが、過去のバージョンとの差分がうまく働かないのはなぜだろう。そこが肝心なのに。

カーネル 1.7.0 ビルド成功

プライベート・ブランチ上で、TOPPERS/ASP for LPC1768 カーネル 1.7.0のビルドに成功しました。まだ成功しただけです。実行試験は来週以降かなぁ。 あらかじめ、カーネル1.7.0とLPC1768版の違いを洗い出していたのでさほど手間はかからないと思っていました…

カーネル1.7.0移植のためのスタディ

TOPPERS/ASP 1.7.0がリリースされてしばらく経ちます。現在TOPPERS/ASP for LPCプロジェクトではカーネル1.6.0を使っており、適当な時点*1でアップデートが必要です。 以下、カーネル1.6.0に対して、TOPPERS/ASP for LPCが施した変更を列挙しました。このう…

カーネル 1.6.2リリース

TOPPERS/ASPのカーネル1.6.2をリリースしました。 ニュース: TOPPERS/ASP for LPC 1.6.2 および LPCXpresso版サンプルをリリースしました - TOPPERS/ASP for LPC - OSDN 例によってリリースは1日作業です。今回はサンプルとドキュメントも同時リリースしまし…

シリアルのバグ

昨日書いたシリアルのバグですが、夜におっかけた段階ではまだ詰め切れていません。 uartc.の割込みサービス・ルーチンの中では「受信割り込み可能で、受信データがある」ことを認識しているようです。また、デバッガで追った限りでは、その後受信レジスタも…

リリース準備中

TOPPERSプロジェクトからASPカーネル 1.7.0がリリースされました。 これを受けて、1.6.xのバグフィックス集積リリースの準備中です。 今日、試験中にUART1-3でしか起きないバグを見つけたため、これがショー・ストッパーになっています。

LPCXpresso依存部のユーザーズマニュアル

TOPPERS/ASP for LPCXpressoのユーザーズ・マニュアルを書きました。昨日アップロードしたサンプル・プログラム集と同じところからダウンロードできます。 リリース Samples Sample_LPCXpresso1768_20110507.zip - TOPPERS/ASP for LPC - OSDN 開発環境の入…

I2Cサブシステムを含むサンプルプログラム集を更新

連休中作業していたI2Cサブシステムが完成し、サンプルとしてリリースすることが出来ました。 リリース Samples Sample_LPCXpresso1768_20110507.zip - TOPPERS/ASP for LPC - OSDN 以下の環境でテストしています Ubuntu 10.04 LPCXpresso 3.8.2 [Build 129]…

cfgコマンドの --external-id オプション

先日コメント欄で教えていただいたcfgコマンドの --external-id オプションを試してみました。 このオプションは、静的コンフィギュレータが生成するオブジェクトのIDを定数ではなく変数として生成するものです。 なぜこのような物が必要かということを最初…

TOPPERS/ASP for LPCXpresso用 I2C サブシステム

スレッドセーフで使いやすい関数のセットを開発中です。とりあえず動き始めました。当然割り込みベースなのでポーリングなど一切ありません。 使用例を下に示します。これはI2C SRAMへの書き込みと読み込みを行った例です。最初はライト・オンリ、次はライト…

RX62マイコンへのTOPPERS/ASPの移植

Lynxeyedさんが、RX62マイコンへのTOPPERS/ASPの移植を計画されているようです。調べてみるとRX61に対してはすでに公式ポートが公開されていますから、どうやらターゲット依存部だけか、あるいはそれに毛が生えた程度の作業だけでなんとかなりそうです。 お…

ターゲットとは何か

TOPPERS/ASPはカーネルをターゲット依存部と非依存部に分けているわけですが、どうもこのターゲット依存部について、JSP時代のシステム依存部から違和感を感じていました。汎用性が悪いのです。 たとえば、あるLPCXpresso 1768や、EZ-KIT BF533のようなEVBを…

ライブラリ化の難しさ

たとえば、i2cのサブシステムを考えます。 i2c_master_write(int peripheral, char buf[], int count);みたいな関数を実装します。この関数は内部でi2c転送をトリガーします。i2c割り込みハンドラは転送が終了する毎にbuf[]からデータを取り出してi2cペリフ…

サンプル・コードのパッケージをアップロード

LPCXpresso IDEのマネージド・プロジェクトとして動作するASPアプリケーションのサンプルの詰め合わせをアップロードしました。これを利用することで、LPCXpressoでの利用の障壁がずいぶん下がるはずです。試験環境は以下の通りです。 Ubuntu 10.04 LPCXpres…

軽く挫折

TOPPERS/ASP for LPCXpresso1768 アプリケーション用のスケルトンをLPCXpresso用に作ろうとしていたのですが、今日、挫折しました。軽い方向転換が必要です。以下、まとめ

TalkThroughのオーバーヘッド

TalkThroughプログラムはPCMオーディオ信号入力をそのままPCMオーディオ信号として出力します。従って内部ではデータコピーしかしていません。 ここから考えを推し進めると、内部のデータコピー部だけ書き換えてオーディオ・アルゴリズムにすると、そのまま…

拡張部の扱いについて

ASPアプリケーションをマネージド化した際、extensionサブディレクトリを含めるとビルドに失敗したため、不審に思っていました。 改めて調べたところ、doc/extension.txtに記述がありました。拡張機能を使いたいときだけ、extensionからコピーしなさいとのこ…

LPCXpresso IDEで、TOPPERS/ASP アプリケーションをマネージド・プロジェクトとして扱う

表記の方法のスケルトン・プロジェクトを公開しました。http://sourceforge.jp/forum/forum.php?forum_id=25615まだTOPPERS/ASPのソースコードについて理解しきれていない部分*1があるうえ、ドキュメントが粗っぽすぎて公開する水準に至っていないと思うので…

安定性や作業性について

Linux版LPCXpresso IDEからTOPPERS/ASPアプリをデバッグすることが可能になったわけですが、手元では今ひとつ安定しません。主な問題は次の二つです。 LPC-Linkへの接続が失敗することがある デバッグ・セッションを起動するたびにデバッグ設定が作られる 前…

LEDチカチカ成功

"TOPPERS/ASP, LPCXpresso, CMSIS"というタイトルにしようと思ったのですが、そのまんまタグでした……。 かなり時間がかかりましたが、Linux上で、LPCXpresso IDEを使い、CMSISのドライバライブラリをリンクしたTOPPERS/ASPアプリケーションを構築してLEDチカ…

CodeRed IDEでSample1

LPCXpresso 1769をShinta式に改造しました。いまのところ別に改造しなくてもいいのですが、これで通常のARM JTAGデバッガとLPC-Linkを双方使えるようになったのは目出度いです。 で、せっかくなので以前入手していた小型のブレッドボード*1に組んで、やはり…

猛烈に眠いのでメモ

あとでプロジェクト・プロパティの設定方法をREADMEに追加する。

OBJEXT

TOPPERS/ASPは OBJEXTをsample/Makefileで定義しているものだから、ターゲット依存部固有の拡張子を与えることができない。ものすごく面倒。どうせ定義内容は空なんだから、無定義にしてくれればいいの。そうしたら、Makefile.targetでたとえば OBJEXT=axp …