|
GadgetSeed
0.9.6
|
カーネルタイマ [詳解]
#include "sysconfig.h"#include "timer.h"#include "device/timer_ioctl.h"#include "datetime.h"#include "tkprintf.h"#include "dkprintf.h"
マクロ定義 | |
| #define | GSC_KERNEL_MAX_KERNEL_TIMER_FUNC 8 |
| $gsc カーネルタイマに登録できる最大定期処理関数数 | |
関数 | |
| void | start_timer_func (void) |
| タイマ関数の周期実行を開始する [詳解] | |
| void | stop_timer_func (void) |
| タイマ関数の周期実行を停止する [詳解] | |
| static void | kernel_timer (void *sp) |
| void | init_timer (char *devname) |
| unsigned long long | get_kernel_time (void) |
| カーネル時間を取得する [詳解] | |
| unsigned long long | get_system_utime (void) |
| システム時間を取得する [詳解] | |
| void | wait_time (unsigned int time) |
| 指定時間待つ [詳解] | |
| void | wait_utime (unsigned int time) |
| 指定時間待つ [詳解] | |
| void | register_kernel_timer_func (timer_func func) |
| カーネル周期処理を追加する [詳解] | |
| int | register_timer_func (timer_func func, unsigned long interval) |
| 周期処理を追加する [詳解] | |
| int | unregister_timer_func (timer_func func) |
| 周期処理を削除する [詳解] | |
| int | start_timer (void) |
| タイマを開始する [詳解] | |
| int | stop_timer (void) |
| タイマを停止する [詳解] | |
変数 | |
| unsigned long long | kernel_time_count |
| カーネル時間(ms) | |
| static struct st_device * | timer_dev |
| カーネルタイマデバイス | |
| static unsigned char | flg_exec_func |
| タイマ関数実行フラグ | |
| static timer_func | timer_func_list [GSC_KERNEL_MAX_KERNEL_TIMER_FUNC] |
| タイマ関数リスト | |
| static unsigned long | func_interval [GSC_KERNEL_MAX_KERNEL_TIMER_FUNC] |
| タイマ関数実行間隔 | |
| static unsigned long | func_timecnt [GSC_KERNEL_MAX_KERNEL_TIMER_FUNC] |
| タイマ関数タイマ | |
| static timer_func | kernel_timer_func = 0 |
| static volatile int | flg_timer_count = 1 |
| static int | int_count = 0 |
| カーネルタイマを初期化する [詳解] | |
カーネルタイマ
GadgetSeed のカーネルタイマは KERNEL_TIMER_INTERVAL_MSEC(ms) 周期 処理タイマデバイスを使用します。
timer.c に定義があります。
| unsigned long long get_kernel_time | ( | void | ) |
カーネル時間を取得する
参照先 IOCMD_TIMER_GETTIME, ioctl_device(), kernel_time_count.
参照元 wait_time().


| unsigned long long get_system_utime | ( | void | ) |
| void register_kernel_timer_func | ( | timer_func | func | ) |
| int register_timer_func | ( | timer_func | func, |
| unsigned long | interval | ||
| ) |
周期処理を追加する
| [in] | func | 周期処理関数 |
| [in] | interval | 周期処理実行周期(msec) |
参照先 func_interval, func_timecnt, GSC_KERNEL_MAX_KERNEL_TIMER_FUNC, start_timer_func(), timer_func_list.

| int start_timer | ( | void | ) |
| void start_timer_func | ( | void | ) |
| int stop_timer | ( | void | ) |
| void stop_timer_func | ( | void | ) |
| int unregister_timer_func | ( | timer_func | func | ) |
周期処理を削除する
| [in] | func | 周期処理関数 |
| void wait_time | ( | unsigned int | time | ) |
| void wait_utime | ( | unsigned int | time | ) |
指定時間待つ
| [in] | time | 待ち時間(usec) |
|
static |