Nios® V プロセッサー・ソフトウェア開発者ハンドブック

ID 743810
日付 7/08/2024
Public
ドキュメント目次

12.7.1. スタックの初期化

uc-tcp-ip スタックを初期化する前に、main() から OSStart() を呼び出すことで MicroC/OS-II スケジューラーを起動します。RTOS とデバイス I/O ドライバーが利用可能であることを確認してから、優先度の高いタスクでのみネットワーク・スタックの初期化を実行します。初期化タスク内ですべての初期化呼び出しを実行する必要があります。

network_init() 関数は、uc_main_task() 関数から呼び出され、ネットワーク・スタックを初期化します。次に、uc_main_task() はさまざまな µC/OS-II タスクまたは関数を呼び出して、µC/TCP-IP Simple Socket Server または iPerf アプリケーションを実装します。

次の µC/OS-II タスクを使用してスレッドを作成することで、シンプルなソケットサーバーに対してアクション固有のタスクを実行することができます。

  • SSSCreateOSDataStructs() — すべての µC/OS-II リソースのインスタンスを作成します。
  • SSSCreateTasks() — ネットワーク・サービスを使用しないタスクを初期化します。
  • SSSSimpleSocketServerTask() — ソケットサーバー接続を管理し、関連するサブルーチンを呼び出してソケット接続を管理します。

iPerf アプリケーションに向けた iPerf Terminal 関数プロトタイプの初期化と実行には、App_IPerf_TaskTerminal() を使用することができます。

uc_main_task() は、OSStart() が呼び出される直前にRTOSタスクとして追加されます。