4

他の人がNXPLPC1788マイクロコントローラーでうまく機能することを発見した無料/安価なRTOSを見つけようとしています。私はもともとFreeRTOSの使用を計画していましたが、その特定のプロセッサをサポートしていないようです。サポートされている最も近いコアはLPC1768です。ThreadXはLPC1788で動作しますが、そのライセンスには数千ポンドの費用がかかります。提案?

編集1:言及するのを忘れました。IAREmbeddedWorkbenchを使用しています。

編集2:RTOSを使用することは言うまでもなく、私は組み込みプログラミングにかなり慣れていないことも指摘する必要があると思います。FreeRTOSとThreadXはどちらも非常に似ているようで、どちらもかなり直感的なAPIを備えています。別のRTOSのAPIがこれらの種類のAPIと一致するほど、私はより良いと思います。

編集3:私はembOSと呼ばれる1つのRTOSを調べてきました。見た目はプロフェッショナルで、APIは見栄えがよく、プロセッサとIDEの組み合わせ(私のものを含む)の数はかなり多く、サンプルプロジェクトはすでに正常に機能しています。これは無料ではなく、ライセンスの費用は約2500ユーロですが、それでもthreadXライセンスの約3倍の費用がかかります。提案してくれてありがとう、受け入れられた答えを選ぶことができないのはちょっと残念です。

4

7 に答える 7

6

私はもともとFreeRTOSの使用を計画していましたが、その特定のプロセッサをサポートしていないようです

実際、FreeRTOSは、GCC、IAR、およびKeilを備えたすべてのCortex-M3およびCortex-M4プロセッサをサポートしています。特定の事前構成されたデモプロジェクトがないからといって、それがサポートされていないことを意味するわけではありません。

FreeRTOSは、タイマー生成と割り込みコントローラーがコア自体の一部であるため、Cortex-Mコアの外部には何も依存しません。

FreeRTOSディストリビューションから既存の公式LPCxxIARデモプロジェクトを取得し、チップに適切なリンカースクリプトを設定することで、プロジェクトを再ターゲットすることができます。特定のハードウェア(LED出力に使用されるポートなど)で異なる可能性のあるIOを使用するデモタスクは、IOポートの割り当てに合わせて変更するか、削除することができます。

たとえば、 55の異なるハードウェアプラットフォームでAtollic55FreeRTOSのプロジェクトを実行し、それらはすべて実際には同じCソースファイルを使用します。起動ファイルとリンカースクリプトのみが異なります。

于 2012-09-13T18:00:47.473 に答える
5

私はCortex-M3でFreeRTOS、embOS、KeilRTXを具体的に評価しました。3つのFreeRTOSのうち、コンテキストスイッチ時間が最も遅く、RTXが最も速かったのですが、範囲は5usから15usであったため、最もハードなリアルタイムアプリケーション以外のすべてにとっておそらく重要ではありません(ただし、私の場合は違いがありました)。

RTXはもちろんKeil固有であり、IARを使用しています。APIはembOSよりも洗練されていません。当時、CM3にいくつかのバグがあり、NVIC割り込み優先度スキームを完全にはサポートしていませんでした。これらの問題は解決されたと思います。FreeRTOSは、APIとアーキテクチャの点で、おそらく3つの中で最も型破りなものであり、embOSとVxWorks、および同様の「従来の」RTOSシステムを広く使用しており、私は完全に満足していませんでした。

embOSは、IARとそのデバッガーでうまく機能し、RTOS対応のデバッグレベルが役立ちます。ライセンスは開発者ごと/プロセッサごと/ツールチェーンごとですが、それ以外の場合はロイヤリティフリーであり、同じアーキテクチャとツールチェーンを使用する多くのプロジェクトで使用できます。Seggerからのサポートは、ドキュメントと同様に優れています。十分なボリュームとマージンを備えた商用製品の場合、それだけの価値があることをお勧めします。

eCosも検討してください。これは、USB、ネットワーク、ファイルシステムなどのサポート、およびスケジューリングとIPCを提供するより包括的なソリューションです。おそらく比較的簡単に移植できるLPC1766用の移植があります。ただし、ほとんどの場合、開発にはGNUツールチェーンを使用する必要があります。これは、JTAGデバッガーなどの既存のツールの使用に影響を与える可能性があります。

于 2012-09-15T08:11:41.110 に答える
1

Keil mVision IDEにはNXPチップ用のRTOSがあり、24xx 100%で動作することを知っています。ただし、このRTOSはオープンソースではなく、IDEの所有者のみが使用できます。

于 2012-09-13T07:59:43.057 に答える
0

任意のLinuxカーネルでコンパイルされたRTAIを取得してみることができます。多少の作業が必要になる場合がありますが、実行可能(かつ無料)である必要があります

于 2012-09-13T07:54:39.983 に答える
0

Linuxは、そのuClinux形式であり、LPC1788で問題なく動作します。たとえば、このビデオを見てください。

http://www.youtube.com/watch?v=VTemb8P1doI

上記のコメントで述べたように、LPC1788の内部SRAMはLinuxを実行するのに十分ではありませんが、LPC1788はSDRAMインターフェイスを提供し、外部RAMを追加することを可能にします。

于 2013-06-16T06:56:37.583 に答える
0

Unison RTOSは、Linuxと同じPOSIX呼び出しを提供します。これには、freertosなどに欠けているI/O呼び出しの完全なセットが含まれます。このビジネスモデルは、DIYの場合は無料で、商用製品の場合はロイヤリティベースです。シリアルI/Oとファイルシステムを使い始めると、999ドルの競合他社の価格のごく一部になる傾向があります。詳細については、www.rowebots.comをご覧ください。

于 2013-10-13T18:22:14.473 に答える
0

githubで見つけたい場合は、RTOSで作業しています

http://www.github.com/geppo12/YasminOS

(大文字と小文字を区別)

シンプルなスケジューラーです。できるだけ早くタスクの優先度を導入します。YasminOSを作成するのは、他のOSが複雑すぎるか高価すぎるためです。実際、私はYasminOSを1つのビジョン、つまりシンプルさだけで開発しています。

非常に強力なOSを必要としないが、単純なスケジューラーを必要とするアプリケーションはたくさんあります。実際には、SpansionFM3アーキテクチャまたはNXPlpc800(はい、cortex m0でも機能します)でテストされています。近い将来、nxp4088でテストします。

于 2014-01-10T10:54:48.070 に答える