OSDN Git Service

Merge branch 'suikan_experimental2' into develop
[trx-305dsp/dsp.git] / hirado / framework.cfg
1 /*
2  *  rx_ifアプリケーションのシステムコンフィギュレーションファイル
3  */
4
5 #define _MACRO_ONLY
6 #include "framework.h"
7
8 INCLUDE("\"framework.h\"");
9
10
11 /*
12 * 割り込みハンドラの宣言
13 */
14
15     /* SPORT0 受信割り込みハンドラの登録 */
16 DEF_INH(
17     INHNO_SPORT0_RX,            /* ハンドラが応答する割り込みの名前 */
18     { 
19         TA_HLNG, 
20         sport0_rx_int_handler   /* ハンドラの関数実体 */
21     }
22 );
23
24     /* SPORT0 送信割り込みハンドラの登録 */
25 DEF_INH(
26     INHNO_SPORT0_TX,            /* ハンドラが応答する割り込みの名前 */
27     { 
28         TA_HLNG, 
29         sport0_tx_int_handler   /* ハンドラの関数実体 */
30     }
31 );
32
33 /*
34 *   ペリフェラルの初期化。カーネルがマルチタスク状態に入る前に行われる。
35 */
36 ATT_INI( 
37     {
38         TA_HLNG, 
39         0,                  /* 特に引数は渡さない */
40         init_peripherals    /* 初期化子の関数名。kernel_start()から一度だけ呼ばれる */
41     } 
42 );
43
44 /*
45 *   RX-IFを受信して復調するタスク。最初からアクティブだが、TASK_AFのほうが
46 *   優先順位が高いので、TASK_AFが待ち状態になるまでこちらは走らない。
47 */
48
49 CRE_TSK(
50     TASK_RX_IF,                 /* ITRON APIで使うハンドル */
51     { 
52         TA_HLNG|TA_ACT,         /* タスク状態は最初からActive */
53         0,                      /* 特に渡す引数はない */
54         rx_if_task,             /* タスク本体となる関数名 */
55         TASK_PRIORITY_RX_IF,    /* タスク実行優先順位 */
56         STACK_SIZE_RX_IF,       /* タスクスタックのサイズ[Byte] */ 
57         NULL                    /* タスクスタックはシステムが用意する */
58     }
59 );
60
61 /*
62 *   AF信号をSPORT送信DMAに渡すタスク。
63 */
64
65 CRE_TSK(
66     TASK_AF,                    /* ITRON APIで使うハンドル */
67     { 
68         TA_HLNG|TA_ACT,         /* タスク状態は最初はInactive */
69         0,                      /* 特に渡す引数はない */
70         af_task,                /* タスク本体となる関数名 */
71         TASK_PRIORITY_AF,       /* タスク実行優先順位 */
72         STACK_SIZE_AF,          /* タスクスタックのサイズ[Byte] */ 
73         NULL                    /* タスクスタックはシステムが用意する */
74     }
75 );
76
77 /*
78 *   モニタタスク。
79 */
80
81 CRE_TSK(
82     TASK_MONITOR,               /* ITRON APIで使うハンドル */
83     { 
84         TA_HLNG|TA_ACT,         /* タスク状態は最初はInactive */
85         0,                      /* 特に渡す引数はない */
86         monitor_task,           /* タスク本体となる関数名 */
87         TASK_PRIORITY_MONITOR,  /* タスク実行優先順位 */
88         STACK_SIZE_MONITOR,     /* タスクスタックのサイズ[Byte] */ 
89         NULL                    /* タスクスタックはシステムが用意する */
90     }
91 );
92
93 /*
94 * SPORT0の割り込み通知用セマフォ
95 */
96 CRE_SEM(
97     SEM_SPORT0_RX,  /* SPORT0 受信割り込み通知用セマフォ */
98     {
99         TA_TPRI,    /* タスクプライオリティに従う */
100         0,          /* 初期値は0なので、割り込みハンドラがsignalするまでタスクは待ち状態になる */
101         1           /* 最大値は1。signalがどんどん正に増えていくのは異常状態なので考慮しない */
102     }
103 );
104
105 CRE_SEM(
106     SEM_SPORT0_TX,  /* SPORT0 送信割り込み通知用セマフォ */
107     {
108         TA_TPRI,    /* タスクプライオリティに従う */
109         0,          /* 初期値は0なので、割り込みハンドラがsignalするまでタスクは待ち状態になる */
110         1           /* 最大値は1。signalがどんどん正に増えていくのは異常状態なので考慮しない */
111     }
112 );
113
114
115 /*
116 * TASK_AF、TASK_RX_IF間のデータキュー。
117 * デコード済みデータの受け渡し用。
118 */
119 CRE_DTQ(
120     DTQ_AF,         /* デコード済みAFデータ受け渡しキュー  */
121     {
122         TA_TFIFO,   /* 送信キューイングは送信順(このアプリではなんの影響もない) */
123         AF_QUESIZE, /* キューのサイズ */
124         NULL        /* キュー用のメモリ領域はシステムが用意する */
125     }
126 );
127
128 #include "kernel/systask/timer.cfg"
129 #include "kernel/systask/serial.cfg"
130 #include "kernel/systask/logtask.cfg"