equal
deleted
inserted
replaced
52 timer_create (CLOCK_REALTIME, &sigev, &timer); |
52 timer_create (CLOCK_REALTIME, &sigev, &timer); |
53 } |
53 } |
54 |
54 |
55 void StopTimerLoop(void) |
55 void StopTimerLoop(void) |
56 { |
56 { |
|
57 EnterMutex(); |
57 timer_delete (timer); |
58 timer_delete (timer); |
|
59 LeaveMutex(); |
58 } |
60 } |
59 |
61 |
60 void StartTimerLoop(TimerCallback_t init_callback) |
62 void StartTimerLoop(TimerCallback_t init_callback) |
61 { |
63 { |
62 initTimer(); |
64 initTimer(); |
|
65 EnterMutex(); |
63 // At first, TimeDispatch will call init_callback. |
66 // At first, TimeDispatch will call init_callback. |
64 SetAlarm(NULL, 0, init_callback, 0, 0); |
67 SetAlarm(NULL, 0, init_callback, 0, 0); |
|
68 LeaveMutex(); |
65 } |
69 } |
66 |
70 |
67 void CreateReceiveTask(CAN_PORT port, TASK_HANDLE* Thread, void* ReceiveLoopPtr) |
71 void CreateReceiveTask(CAN_PORT port, TASK_HANDLE* Thread, void* ReceiveLoopPtr) |
68 { |
72 { |
69 pthread_create(Thread, NULL, ReceiveLoopPtr, (void*)port); |
73 pthread_create(Thread, NULL, ReceiveLoopPtr, (void*)port); |