| 1 | /** |
|---|
| 2 | @file |
|---|
| 3 | DHL_Timer.h |
|---|
| 4 | |
|---|
| 5 | @brief |
|---|
| 6 | OSAL ±â¹ÝÀÇ ¹ü¿ë ŸÀÌ¸Ó API |
|---|
| 7 | |
|---|
| 8 | ¹ü¿ëÀ¸·Î »ç¿ë °¡´ÉÇÑ ±¸°£ ŸÀ̸Ó. |
|---|
| 9 | |
|---|
| 10 | Copyright 2006~2010 Digital STREAM Technology, Inc. |
|---|
| 11 | All Rights Reserved |
|---|
| 12 | */ |
|---|
| 13 | |
|---|
| 14 | |
|---|
| 15 | #ifndef __DHL_TIMER_API_H__ |
|---|
| 16 | #define __DHL_TIMER_API_H__ |
|---|
| 17 | |
|---|
| 18 | |
|---|
| 19 | #include "DHL_OSAL.h" |
|---|
| 20 | |
|---|
| 21 | |
|---|
| 22 | |
|---|
| 23 | #ifdef __cplusplus |
|---|
| 24 | extern "C" { |
|---|
| 25 | #endif |
|---|
| 26 | |
|---|
| 27 | |
|---|
| 28 | |
|---|
| 29 | #if COMMENT |
|---|
| 30 | ____Overview____(){} |
|---|
| 31 | #endif |
|---|
| 32 | |
|---|
| 33 | /** |
|---|
| 34 | @file DHL_Timer.h |
|---|
| 35 | |
|---|
| 36 | - °³³ä °ü·Ã ³»¿ëÀº ±¸±Û ¹®¼ Âü°í. |
|---|
| 37 | - ¹®¼ À̸§: DHL API ¸Å´º¾ó |
|---|
| 38 | - URL http://docs.google.com/View?docid=0AQZYAjzYyTl_ZGdmcWJ4eDZfMjFjajZ6aGc0OA |
|---|
| 39 | |
|---|
| 40 | - module overview |
|---|
| 41 | - ŸÀ̸Ó: ŸÀÌ¸Ó ¾ÆÀ̵ð |
|---|
| 42 | - ŸÀÌ¸Ó À̺¥Æ®: ÁöÁ¤ ½Ã°£ °æ°ú ÈÄ callbackÀÌ ºÒ¸®´Â Çö»óÀ» ¸»ÇÔ. |
|---|
| 43 | - ŸÀÌ¸Ó ±×·ì: ÇÑ Å½ºÅ©¿¡¼ °°ÀÌ Ã³¸®µÇ´Â ŸÀ̸ӵéÀÇ ÁýÇÕ. |
|---|
| 44 | |
|---|
| 45 | - dependencies |
|---|
| 46 | - OSAL (Task, Tick, MsgQ, ...) |
|---|
| 47 | |
|---|
| 48 | ŸÀÌ¹Ö Á¤È®µµ´Â OSALÀÇ Tick Á¤È®µµ¿¡ µû¸¥´Ù. |
|---|
| 49 | ¾ÆÁÖ Á¤È®ÇÑ °èÃø ¿ëÀ¸·Î´Â ÀûÀýÇÏÁö ¾ÊÀ» ¼ö ÀÖÀ½. |
|---|
| 50 | |
|---|
| 51 | */ |
|---|
| 52 | |
|---|
| 53 | |
|---|
| 54 | #if COMMENT |
|---|
| 55 | ____Config____(){} |
|---|
| 56 | #endif |
|---|
| 57 | |
|---|
| 58 | /* |
|---|
| 59 | ŸÀÌ¸Ó °ü·Ã ³»¿ë Áß¿¡¼ |
|---|
| 60 | platform dependent ÇÑ ³»¿ëµéÀº ¾Æ·¡ º°µµÀÇ ÆÄÀÏ |
|---|
| 61 | |
|---|
| 62 | ¾Æ·¡ ÆÄÀÏÀº ¹Ýµå½Ã platform Çì´õ Æú´õ¿¡¼ Á¦°øµÇ¾î¾ß ÇÑ´Ù. |
|---|
| 63 | |
|---|
| 64 | ÇÊ¿äÇÑ ³»¿ëµé: |
|---|
| 65 | DHL_TIMER_MAX_ENTRY |
|---|
| 66 | DHL_TIMER_TASK_PRIORITY |
|---|
| 67 | DHL_TIMER_TASK_STKSIZE |
|---|
| 68 | |
|---|
| 69 | ±×¸®°í °¢ Timer ID °ªµé. |
|---|
| 70 | */ |
|---|
| 71 | |
|---|
| 72 | #include "DHL_Timer_Config.h" |
|---|
| 73 | |
|---|
| 74 | |
|---|
| 75 | |
|---|
| 76 | |
|---|
| 77 | #if COMMENT |
|---|
| 78 | ____Types____(){} |
|---|
| 79 | #endif |
|---|
| 80 | |
|---|
| 81 | |
|---|
| 82 | /** |
|---|
| 83 | @brief ŸÀÌ¸Ó ±×·ì ÇÚµé. |
|---|
| 84 | |
|---|
| 85 | DHL_TIMER_Initialize ½ÇÇà °á°ú·Î ¸®ÅϵǴ °ªÀÌ´Ù. |
|---|
| 86 | |
|---|
| 87 | µ¿ÀÏ ±×·ì¿¡ ¼ÓÇÑ Å¸ÀÌ¸Ó IDµéÀº °°Àº ŽºÅ©¿¡¼ ¼ºñ½ºµÈ´Ù. |
|---|
| 88 | µû¶ó¼ ŸÀÌ¸Ó ¼º°Ý¿¡ µû¶ó ÇÊ¿äÇÑ ¸¸ÅÀÇ Å½ºÅ©¸¦ ¸¸µé¾î »ç¿ëÇØ¾ß ÇÑ´Ù. |
|---|
| 89 | */ |
|---|
| 90 | typedef void *DHL_TMHANDLE; |
|---|
| 91 | |
|---|
| 92 | |
|---|
| 93 | /** |
|---|
| 94 | @brief ŸÀÌ¸Ó ±×·ì »ý¼º ÆÄ¶ó¹ÌÅÍ. |
|---|
| 95 | DHL_TIMER_Initialize ÀÇ ÀÎÀÚ·Î ÇÊ¿äÇÔ. |
|---|
| 96 | |
|---|
| 97 | */ |
|---|
| 98 | typedef struct |
|---|
| 99 | { |
|---|
| 100 | char *name; |
|---|
| 101 | ///< ÀÌ Å¸ÀÌ¸Ó ±×·ìÀÇ À̸§. ÃÖ´ë 8ÀÚ. |
|---|
| 102 | /** |
|---|
| 103 | this will be copied into timer record DB. |
|---|
| 104 | so local stack space can be used for name. |
|---|
| 105 | */ |
|---|
| 106 | |
|---|
| 107 | int max_timer_entry; |
|---|
| 108 | ///< ÀÌ ±×·ì¿¡¼ ÃÖ´ë·Î Áö¿øÇϴ ŸÀÌ¸Ó °¹¼ö. 0º¸´Ù Ä¿¾ß ÇÔ. |
|---|
| 109 | |
|---|
| 110 | int task_priority; |
|---|
| 111 | ///< ŸÀÌ¸Ó Å½ºÅ©ÀÇ ¿ì¼± ¼øÀ§. |
|---|
| 112 | int stack_size; |
|---|
| 113 | ///< ŸÀÌ¸Ó Å½ºÅ©ÀÇ ½ºÅà ũ±â. |
|---|
| 114 | |
|---|
| 115 | BOOL use_mutex_lock; |
|---|
| 116 | ///< º¸È£¿¡ mutex¸¦ »ç¿ëÇÒ °ÍÀÎÁö ¿©ºÎ. |
|---|
| 117 | /** |
|---|
| 118 | - if true, mutex is used for access timer record. |
|---|
| 119 | - if false, interrupt is temporarily disabled during timer record access. |
|---|
| 120 | |
|---|
| 121 | if you want to use timer in ISR, set this FALSE. |
|---|
| 122 | */ |
|---|
| 123 | |
|---|
| 124 | //--------- version 2 extension ------------- |
|---|
| 125 | // if set to 0, it should be compatible to version 1 operation. |
|---|
| 126 | |
|---|
| 127 | int num_user_param; |
|---|
| 128 | ///< »ç¿ëÀÚ ÆÄ¶ó¹ÌÅÍ·Î ¸î °³°¡ ÇÊ¿äÇÑÁö. |
|---|
| 129 | ///< ±âÁ¸¿¡´Â ÇϳªÀÇ »ç¿ëÀÚ ÆÄ¶ó¹ÌÅ͸¸ Á¦°øÇÏ¿´À¸³ª, ÀÓÀÇ °¹¼ö·Î È®Àå ÇÒ ¼ö ÀÖµµ·Ï ÇÔ. |
|---|
| 130 | ///< 0À» ÁöÁ¤Çϸé 1·Î ÀÚµ¿ ¼³Á¤µÈ´Ù. |
|---|
| 131 | |
|---|
| 132 | int msg_que_size; |
|---|
| 133 | ///< timer task message queueÀÇ Å©±â. |
|---|
| 134 | ///< ±âÁ¸¿¡´Â ¼Ò½º Äڵ忡 20 À¸·Î fix µÇ¾î ÀÖ¾úÀ½. |
|---|
| 135 | ///< 0À» ÁöÁ¤ÇÏ¸é µðÆúÆ® 20À¸·Î Àç¼³Á¤µÊ. |
|---|
| 136 | |
|---|
| 137 | |
|---|
| 138 | } DHL_TIMER_INIT_PARAM; |
|---|
| 139 | |
|---|
| 140 | |
|---|
| 141 | /** |
|---|
| 142 | @brief »ç¿ëÀÚ Å¸ÀÌ¸Ó callback ŸÀÔ. |
|---|
| 143 | |
|---|
| 144 | DHL_TIMER_Start ¹× DHL_SYS_StartTimer ¿¡¼ »ç¿ëµÈ´Ù. |
|---|
| 145 | |
|---|
| 146 | »ç¿ëÀÚ´Â ¾Æ·¡¿Í µ¿ÀÏÇÑ prototypeÀÇ callback ÇÔ¼ö¸¦ Á¦°øÇØ¾ß ÇÑ´Ù. |
|---|
| 147 | */ |
|---|
| 148 | typedef void (*DHL_TIMER_PROC)(UINT32 nIDTimer, UINT32 param); // »ç¿ëÀÚ Å¸ÀÌ¸Ó Çڵ鷯 |
|---|
| 149 | |
|---|
| 150 | /** |
|---|
| 151 | @brief version 2ÀÇ Å¸ÀÌ¸Ó callback ŸÀÔ. |
|---|
| 152 | |
|---|
| 153 | DHL_TIMER_StartEx ¿¡¼ »ç¿ëµÈ´Ù. |
|---|
| 154 | |
|---|
| 155 | param ¹è¿ÀÇ ½ÇÁ¦ element °¹¼ö´Â ÀÌ prototype ¿¡¼´Â ¾Ë ¼ö¾ø´Ù. |
|---|
| 156 | timer init ÇÒ ¶§ ÁöÁ¤ÇÑ °¹¼ö ¸¸Å »ç¿ë °¡´ÉÇÏ´Ù. |
|---|
| 157 | */ |
|---|
| 158 | typedef void (*DHL_TIMER_PROC_EX)(UINT32 nIDTimer, UINT32 *params); // »ç¿ëÀÚ Å¸ÀÌ¸Ó Çڵ鷯 |
|---|
| 159 | |
|---|
| 160 | |
|---|
| 161 | /** |
|---|
| 162 | DHL_TIMER_StartEx ¿¡¼ ÁöÁ¤ÇÏ´Â flagµé. |
|---|
| 163 | */ |
|---|
| 164 | typedef enum |
|---|
| 165 | { |
|---|
| 166 | /** |
|---|
| 167 | continuous mode |
|---|
| 168 | */ |
|---|
| 169 | eTIMER_FLAG_Continue = 0x0, |
|---|
| 170 | |
|---|
| 171 | /** |
|---|
| 172 | one shot mode |
|---|
| 173 | */ |
|---|
| 174 | eTIMER_FLAG_OneShot = 0x1, |
|---|
| 175 | |
|---|
| 176 | /** |
|---|
| 177 | one shot ÀÌ ¾Æ´Ñ °æ¿ì¿¡¸¸ Àǹ̰¡ ÀÖÀ¸¸ç, |
|---|
| 178 | Áö±Ý ¹Ù·Î 1ȸ¸¦ ¼öÇàÇÑ ÈÄ¿¡ ÁöÁ¤µÈ ½Ã°£ ÀÌÈÄ interval timer¸¦ ±âµ¿ÇÑ´Ù. |
|---|
| 179 | */ |
|---|
| 180 | eTIMER_FLAG_NowAndContinue = 0x2, |
|---|
| 181 | |
|---|
| 182 | /** |
|---|
| 183 | ³»ºÎ¿ëµµ·Î »ç¿ëµÇ¾î ¿¹¾à. |
|---|
| 184 | */ |
|---|
| 185 | eTIMER_FLAG_Reserved = 0xC0, |
|---|
| 186 | |
|---|
| 187 | } DHL_TIMER_FLAGS; |
|---|
| 188 | |
|---|
| 189 | |
|---|
| 190 | |
|---|
| 191 | #if COMMENT |
|---|
| 192 | ____Defines____(){} |
|---|
| 193 | #endif |
|---|
| 194 | |
|---|
| 195 | |
|---|
| 196 | |
|---|
| 197 | |
|---|
| 198 | |
|---|
| 199 | #if COMMENT |
|---|
| 200 | ____LowLevel_API____(){} |
|---|
| 201 | #endif |
|---|
| 202 | |
|---|
| 203 | /** |
|---|
| 204 | @brief Low-level ŸÀ̸Ӹ¦ µî·ÏÇÑ´Ù. |
|---|
| 205 | |
|---|
| 206 | timer Çϳª¸¦ µî·ÏÇÑ´Ù. ÀÌÈÄ ÀÏÁ¤ ½Ã°£ÀÌ Áö³ª¸é timer callbackÀÌ È£ÃâµÈ´Ù. |
|---|
| 207 | |
|---|
| 208 | ŸÀ̸ÓÀÇ ¼¼ºÎ µ¿ÀÛÀ» ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. |
|---|
| 209 | |
|---|
| 210 | - ÀÎÅ͹ú ŸÀÌ¸Ó |
|---|
| 211 | - ÁÖ±âÀûÀ¸·Î °è¼Ó ŸÀÌ¸Ó callbackÀÌ È£ÃâµÈ´Ù. |
|---|
| 212 | - ŸÀÌ¸Ó µ¿ÀÛÀ» ÁßÁö½ÃŰ·Á¸é ¹Ýµå½Ã Stop API¸¦ È£ÃâÇØÁà¾ß ÇÑ´Ù. |
|---|
| 213 | - ¿ø¼¦ ŸÀÌ¸Ó |
|---|
| 214 | - ÁöÁ¤ ½Ã°£ °æ°ú ÈÄ 1ȸ¸¸ callbackÀÌ È£ÃâµÈ´Ù. |
|---|
| 215 | - º°µµ·Î ŸÀÌ¸Ó cancel API¸¦ È£ÃâÇØ ÁÖÁö ¾Ê¾Æµµ µÈ´Ù. |
|---|
| 216 | |
|---|
| 217 | @param[in] handle |
|---|
| 218 | ŸÀÌ¸Ó ±×·ì ÇÚµé. |
|---|
| 219 | DHL_TIMER_Initialize ·Î ¸¸µé¾îÁø °ÍÀ̾î¾ß ÇÑ´Ù. |
|---|
| 220 | @param[in] nIdTimer |
|---|
| 221 | ŸÀÌ¸Ó ID. |
|---|
| 222 | ÀÌ ±×·ì ³»¿¡¼ ÀÌ Å¸À̸Ӹ¦ ´ëÇ¥ÇÒ ¼ö ÀÖ´Â Áߺ¹µÇÁö ¾Ê´Â id °ª. |
|---|
| 223 | @param[in] nPeriodMs |
|---|
| 224 | ¹Ð¸®ÃÊ ´ÜÀ§ÀÇ ÁÖ±â. |
|---|
| 225 | @param[in] func |
|---|
| 226 | ŸÀ̹ö À̺¥Æ® ¹ß»ý ½Ã È£ÃâµÉ Äݹé ÇÔ¼ö. |
|---|
| 227 | @param[in] param |
|---|
| 228 | Äݹé ÇÔ¼ö·Î bypass Àü´Þ µÇ´Â »ç¿ëÀÚ ÆÄ¶ó¹ÌÅÍ. |
|---|
| 229 | @param[in] bOneShot |
|---|
| 230 | TRUE À̸é ÁöÁ¤µÈ ½Ã°£ °æ°ú ÈÄ 1ȸ¸¸ È£Ã⠵Ǵ ¿ø¼¦ ŸÀ̸ӷΠµ¿ÀÛ. |
|---|
| 231 | FALSE À̸é ÁÖ±âÀûÀ¸·Î È£ÃâµÇ´Â ÀÎÅ͹ú ŸÀ̸ӷΠµ¿ÀÛ. |
|---|
| 232 | @return |
|---|
| 233 | |
|---|
| 234 | */ |
|---|
| 235 | DHL_RESULT DHL_TIMER_Start(DHL_TMHANDLE handle, UINT32 nIdTimer, UINT32 nPeriodMs, |
|---|
| 236 | DHL_TIMER_PROC func, UINT32 param, BOOL bOneShot); |
|---|
| 237 | |
|---|
| 238 | |
|---|
| 239 | /** |
|---|
| 240 | @brief DHL_TIMER_Start APIÀÇ È®Àå. |
|---|
| 241 | |
|---|
| 242 | paramÀº UINT32 °ª¿¡¼ UINT32 array pointer·Î º¯°æ µÇ¾úÀ½. |
|---|
| 243 | OneShot ¸ðµå ¿Ü¿¡ ´Ù¾çÇÑ ¸ðµå¸¦ Áö¿øÇϱâ À§ÇØ flag·Î º¯°æ. |
|---|
| 244 | |
|---|
| 245 | @param[in] params |
|---|
| 246 | »ç¿ëÀÚ ÆÄ¶ó¹ÌÅ͵éÀÇ ¹è¿ Æ÷ÀÎÅÍ. |
|---|
| 247 | ¸î °³ÀÇ ÆÄ¶ó¹ÌÅͰ¡ »ç¿ë °¡´ÉÇÑÁö´Â Initialize ÇÒ ¶§ °áÁ¤µÈ´Ù. |
|---|
| 248 | |
|---|
| 249 | @param[in] flags |
|---|
| 250 | DHL_TIMER_FLAGS Ç÷¡±× Áß¿¡ Çϳª. |
|---|
| 251 | */ |
|---|
| 252 | DHL_RESULT DHL_TIMER_StartEx(DHL_TMHANDLE handle, UINT32 nIdTimer, UINT32 nPeriodMs, |
|---|
| 253 | DHL_TIMER_PROC_EX func, int numParam, UINT32 *params, UINT16 flags); |
|---|
| 254 | |
|---|
| 255 | /** |
|---|
| 256 | @brief Low-level ŸÀÌ¸Ó µî·Ï ÇØÁ¦ |
|---|
| 257 | |
|---|
| 258 | ÁöÁ¤ ±×·ì¿¡¼ timer id¸¦ Á¦°ÅÇÑ´Ù. ´õ ÀÌ»ó ÇØ´ç ŸÀ̸Ӵ ȣÃâµÇÁö ¾Ê´Â´Ù. |
|---|
| 259 | |
|---|
| 260 | ¿ø¼¦ ŸÀ̸ÓÀÇ °æ¿ì º°µµ·Î ŸÀÌ¸Ó cancel API¸¦ È£ÃâÇØ ÁÖÁö ¾Ê¾Æµµ µÈ´Ù. |
|---|
| 261 | |
|---|
| 262 | |
|---|
| 263 | @param[in] handle ŸÀÌ¸Ó ±×·ì ÇÚµé. DHL_TIMER_Initialize ·Î ¸¸µé¾îÁø´Ù. |
|---|
| 264 | @param[in] nIdTimer Á¤Áö ½Ãų ŸÀÌ¸Ó ID |
|---|
| 265 | @return |
|---|
| 266 | */ |
|---|
| 267 | DHL_RESULT DHL_TIMER_Stop(DHL_TMHANDLE handle, UINT32 nIdTimer); |
|---|
| 268 | |
|---|
| 269 | /** |
|---|
| 270 | @brief Low-level ŸÀÌ¸Ó Å½ºÅ© µ¿±âÈ. |
|---|
| 271 | |
|---|
| 272 | ŸÀÌ¸Ó Å½ºÅ©¿Í È£Ãâ ŽºÅ©°£ÀÇ µ¿±â¸¦ ¸ÂÃá´Ù. |
|---|
| 273 | ÀÌ ÇÔ¼ö´Â Å»ýÀûÀ¸·Î blocking mode·Î µ¿ÀÛÇÑ´Ù. |
|---|
| 274 | |
|---|
| 275 | @param[in] handle ŸÀÌ¸Ó ±×·ì ÇÚµé. DHL_TIMER_Initialize ·Î ¸¸µé¾îÁø´Ù. |
|---|
| 276 | @return |
|---|
| 277 | */ |
|---|
| 278 | DHL_RESULT DHL_TIMER_Sync(DHL_TMHANDLE handle); |
|---|
| 279 | |
|---|
| 280 | /** |
|---|
| 281 | @brief Low-level ŸÀÌ¸Ó Á¤º¸ Ãâ·Â. |
|---|
| 282 | |
|---|
| 283 | ÁöÁ¤ÇÑ Å¸ÀÌ¸Ó ±×·ìÀÇ Á¤º¸¸¦ µð¹ö±× Äֿܼ¡ Ãâ·ÂÇÑ´Ù. |
|---|
| 284 | DHL_OS_Printf ¸¦ ÀÌ¿ëÇÏ¿© Ãâ·ÂµÈ´Ù. |
|---|
| 285 | |
|---|
| 286 | @param[in] handle ŸÀÌ¸Ó ±×·ì ÇÚµé |
|---|
| 287 | */ |
|---|
| 288 | void DHL_TIMER_Show(DHL_TMHANDLE handle); |
|---|
| 289 | |
|---|
| 290 | /** |
|---|
| 291 | @brief Low-level ŸÀÌ¸Ó Å½ºÅ© »ý¼º (±×·ì ÃʱâÈ) |
|---|
| 292 | |
|---|
| 293 | timer moduleÀ» ÃʱâÈ ÇÑ´Ù. |
|---|
| 294 | |
|---|
| 295 | |
|---|
| 296 | @param[in] param |
|---|
| 297 | ŸÀÌ¸Ó ±×·ì ¼Ó¼º. |
|---|
| 298 | @param[out] pHandle |
|---|
| 299 | »ý¼ºµÈ ŸÀÌ¸Ó ±×·ì ÇÚµé. |
|---|
| 300 | |
|---|
| 301 | @return |
|---|
| 302 | |
|---|
| 303 | */ |
|---|
| 304 | DHL_RESULT DHL_TIMER_Initialize(DHL_TIMER_INIT_PARAM *param, DHL_TMHANDLE *pHandle); |
|---|
| 305 | |
|---|
| 306 | /** |
|---|
| 307 | @brief Low-level ŸÀÌ¸Ó Å½ºÅ© Á¦°Å (±×·ì »èÁ¦) |
|---|
| 308 | |
|---|
| 309 | ±×·ì ³»¿¡¼ ÇöÀç µ¿ÀÛ ÁßÀÎ ¸ðµç ŸÀ̸Ӱ¡ ¿ÏÀü Á¾·á µÈ ÈÄ¿¡ »èÁ¦µÈ´Ù. |
|---|
| 310 | |
|---|
| 311 | - ÇöÀç À̺¥Æ®°¡ ¹ß»ýµÇ¾î ó¸® ÁßÀΠŸÀ̸Ӵ À̺¥Æ® ó¸® ÈÄ Á¾·á. |
|---|
| 312 | - µî·Ï µÇ¾î ÀÖ°í callback Áغñ ÁßÀΠŸÀ̸Ӵ ±×³É cancel. |
|---|
| 313 | |
|---|
| 314 | @param[in] handle ŸÀÌ¸Ó ±×·ì ÇÚµé |
|---|
| 315 | |
|---|
| 316 | */ |
|---|
| 317 | void DHL_TIMER_Terminate(DHL_TMHANDLE handle); |
|---|
| 318 | |
|---|
| 319 | |
|---|
| 320 | |
|---|
| 321 | |
|---|
| 322 | #if COMMENT |
|---|
| 323 | ____HighLevel_API____(){} |
|---|
| 324 | #endif |
|---|
| 325 | |
|---|
| 326 | |
|---|
| 327 | |
|---|
| 328 | |
|---|
| 329 | /** |
|---|
| 330 | @brief High-level ŸÀÌ¸Ó id Çϳª¸¦ ½ÃÀÛÇÑ´Ù. |
|---|
| 331 | |
|---|
| 332 | DHL_SYS_TimerInit ¿¡¼ µðÆúÆ®·Î »ý¼ºµÈ ŸÀÌ¸Ó ±×·ì¿¡ Ãß°¡µÈ´Ù. |
|---|
| 333 | |
|---|
| 334 | °¢ ÀÎÀÚ ¹× ¸®ÅϰªÀÇ Àǹ̴ DHL_TIMER_Start ¿Í µ¿ÀÏÇÏ´Ù. |
|---|
| 335 | |
|---|
| 336 | */ |
|---|
| 337 | DHL_RESULT DHL_SYS_StartTimer(UINT32 nIdTimer, UINT32 nPeriodMs, |
|---|
| 338 | DHL_TIMER_PROC func, UINT32 param, BOOL bOneShot); |
|---|
| 339 | |
|---|
| 340 | /** |
|---|
| 341 | @brief High-level ŸÀÌ¸Ó id Çϳª¸¦ Á¾·áÇÑ´Ù. |
|---|
| 342 | |
|---|
| 343 | DHL_SYS_TimerInit ¿¡¼ µðÆúÆ®·Î »ý¼ºµÈ ŸÀÌ¸Ó ±×·ì¿¡¼ Á¦°ÅµÈ´Ù. |
|---|
| 344 | |
|---|
| 345 | °¢ ÀÎÀÚ ¹× ¸®ÅϰªÀÇ Àǹ̴ DHL_TIMER_Stop °ú µ¿ÀÏÇÏ´Ù. |
|---|
| 346 | |
|---|
| 347 | */ |
|---|
| 348 | DHL_RESULT DHL_SYS_KillTimer(UINT32 nIdTimer); |
|---|
| 349 | |
|---|
| 350 | /** |
|---|
| 351 | @brief High-level ŸÀÌ¸Ó Á¤º¸ Ãâ·Â. |
|---|
| 352 | |
|---|
| 353 | DHL_SYS_TimerInit ¿¡¼ µðÆúÆ®·Î »ý¼ºµÈ ŸÀÌ¸Ó ±×·ì¿¡ ´ëÇÑ Á¤º¸´Ù. |
|---|
| 354 | |
|---|
| 355 | */ |
|---|
| 356 | void DHL_SYS_ShowTimer(void); |
|---|
| 357 | |
|---|
| 358 | /** |
|---|
| 359 | @brief High-level ŸÀÌ¸Ó ¸ðµâ ÃʱâÈ |
|---|
| 360 | |
|---|
| 361 | µðÆúÆ® priority, µðÆúÆ® stack size µîÀº |
|---|
| 362 | ÀϺΠDHL_TimerConfig.h ³»¿ëÀ» Âü°íÇÏ¿© »ý¼ºµÈ´Ù. |
|---|
| 363 | */ |
|---|
| 364 | DHL_RESULT DHL_SYS_TimerInit(void); |
|---|
| 365 | |
|---|
| 366 | |
|---|
| 367 | |
|---|
| 368 | #ifdef __cplusplus |
|---|
| 369 | } /* extern "C" */ |
|---|
| 370 | #endif |
|---|
| 371 | |
|---|
| 372 | |
|---|
| 373 | |
|---|
| 374 | #endif /* __DHL_TIMER_API_H__ */ |
|---|
| 375 | |
|---|