背景:MicriumによるuC / OS-IIIユーザーズマニュアルを読んでおり、そのガイドに従って、IAR EmbeddedWorkbenchIDEを使用してCでプログラミングしています。
コードは、uC-Eval-STM32F107開発ボード用に書かれた本で提供されているいくつかの例からのものです。新しいスレッドを作成し、voidポインタで引数を渡します。私はvoidポインタとスレッドへの引数の受け渡しに精通しています。
新しいスレッドを作成するためにカーネル関数が呼び出されます。
OSTaskCreate( ... );
次に、関数定義内で、説明する方法がわからないことを実行します。
static void AppTaskStart (void *p_arg)
{
CPU_INT32U cpu_clk_freq;
CPU_INT32U cnts;
OS_ERR err;
CPU_TS ts;
p_arg = p_arg;
...
}
または、他の例でもコードは次のようになっています。
(void *)p_arg;
彼らは何をしているのですか、そしてその理由は何ですか?