tinyOS  v1.00
tinyOS.h
Go to the documentation of this file.
1 
14 #ifndef TINYOS_H
15 #define TINYOS_H
16 
17 #include <stdint.h>
18 #include "tLib.h"
19 #include "tConfig.h"
20 #include "tTask.h"
21 #include "tEvent.h"
22 #include "tSem.h"
23 #include "tMBox.h"
24 #include "tMemBlock.h"
25 #include "tFlagGroup.h"
26 #include "tMutex.h"
27 #include "tTimer.h"
28 #include "tHooks.h"
29 
30 #define TICKS_PER_SEC (1000 / TINYOS_SYSTICK_MS)
31 
32 // tinyOS的错误码
33 typedef enum _tError {
40 } tError;
41 
43 extern tTask *currentTask;
44 
46 extern tTask *nextTask;
47 
48 typedef uint32_t tTaskCritical_t;
49 
52 
53 void tTaskRunFirst (void);
54 
55 void tTaskSwitch (void);
56 tTask *tTaskHighestReady (void);
57 
58 void tTaskSchedInit (void);
59 void tTaskSchedDisable (void);
60 void tTaskSchedEnable (void);
61 void tTaskSchedRdy (tTask *task);
62 void tTaskSchedUnRdy (tTask *task);
63 void tTaskSchedRemove (tTask *task);
64 void tTaskSched (void);
65 
66 void tTimeTaskWait (tTask *task, uint32_t ticks);
67 void tTimeTaskWakeUp (tTask *task);
68 void tTimeTaskRemove (tTask *task);
69 void tTaskDelay (uint32_t delay);
70 void tTaskSystemTickHandler (void);
71 
72 void tInitApp (void);
73 void tSetSysTickPeriod (uint32_t ms);
74 float tCpuUsageGet (void);
75 
76 #endif /* TINYOS_H */
77 
void tTimeTaskRemove(tTask *task)
将延时的任务从延时队列中移除
Definition: tCore.c:189
void tTaskSchedDisable(void)
禁止任务调度
Definition: tCore.c:64
void tTaskSystemTickHandler(void)
系统时钟节拍处理
Definition: tCore.c:203
Definition: tTask.h:31
void tTimeTaskWait(tTask *task, uint32_t ticks)
将任务加入延时队列中
Definition: tCore.c:167
void tTaskSchedRemove(tTask *task)
将任务从就绪列表中移除
Definition: tCore.c:115
void tTimeTaskWakeUp(tTask *task)
将延时的任务从延时队列中唤醒
Definition: tCore.c:177
float tCpuUsageGet(void)
tTaskCritical_t tTaskEnterCritical(void)
Definition: tSwitch.c:36
void tTaskSched(void)
任务调度接口。通过它来选择下一个具体的任务,然后切换至该任务运行。
Definition: tCore.c:126
void tTaskSwitch(void)
Definition: tSwitch.c:100
tTask * tTaskHighestReady(void)
获取当前最高优先级且可运行的任务
Definition: tCore.c:42
void tTaskSchedEnable(void)
允许任务调度
Definition: tCore.c:77
uint32_t tTaskCritical_t
Definition: tinyOS.h:48
enum _tError tError
void tTaskExitCritical(tTaskCritical_t status)
Definition: tSwitch.c:47
void tTaskSchedInit(void)
初始化调度器
Definition: tCore.c:51
void tTaskSchedRdy(tTask *task)
将任务设置为就绪状态
Definition: tCore.c:93
void tTaskRunFirst(void)
Definition: tSwitch.c:85
tTask * currentTask
当前任务:记录当前是哪个任务正在运行
Definition: tCore.c:17
void tInitApp(void)
void tTaskSchedUnRdy(tTask *task)
将任务从就绪列表中移除
Definition: tCore.c:102
tTask * nextTask
下一个将即运行的任务:在进行任务切换前,先设置好该值,然后任务切换过程中会从中读取下一任务信息 ...
Definition: tCore.c:18
_tError
Definition: tinyOS.h:33
void tSetSysTickPeriod(uint32_t ms)
void tTaskDelay(uint32_t delay)
Definition: tTime.c:20