没有合适的资源?快使用搜索试试~ 我知道了~
首页OSAL-API中文版.pdf
资源详情
资源评论
资源推荐

OS抽象层
应用程序接口
文件编号:SWRA194
德州仪器
圣迭戈,加利福尼亚州美国
目录
1.简介 .............................................................................................................................. 2
1.1目的.............................................................................................................................2
1.2适用范围 ....................................................................................................................3
1.3缩略语........................................................................................................................ 3
2,API概述 .....................................................................................................................3
2.1概述............................................................................................................................. 3
3.消息管理API ................................................................................................................ 3
3.1简介.............................................................................................................................. 3
3.2 osal_msg_allocate() ................................................................................................ 4
3.3 osal_msg_deallocate() ............................................................................................ 4
3.4 osal_msg_send() ...................................................................................................... 4
3.5 osal_msg_receive( ...................................................................................................... 5
3.6 osal_msg_find() ........................................................................................................5
4,任务同步API .................................................................................................................6
4.1简介.................................................................................................................................6
4.2 osal_set_event() .........................................................................................................6
5.定时器管理API ................................................................................................................6
5.1简介..................................................................................................................................6
5.2 osal_start_timerEx() ...................................................................................................7
5.3 osal_start_reload_timer() .........................................................................................7
5.4 osal_stop_timerEx() ...............................................................................................8
5.5 osal_GetSystemClock() .........................................................................................8
6,中断管理API ...............................................................................................................8
6.1简介................................................................................................................................8
6.2 osal_int_enable() ......................................................................................................9
6.3 osal_int_disable() .....................................................................................................9
7.任务管理API .................................................................................................................10
7.1简介...............................................................................................................................10
7.2 osal_init_system() ..................................................................................................10
7.3 osal_start_system() ..................................................................................................11
7.4 osal_run_system() ....................................................................................................11
7.5 osal_self() ..............................................................................................................11
8.内存管理API ................................................................................................................12
8.1简介..............................................................................................................................12
8.2 osal_mem_alloc() ....................................................................................................12
8.3 osal_mem_free() .....................................................................................................12
9,电源管理API ...............................................................................................................13
9.1简介................................................................................................................................13

9.2 osal_pwrmgr_init() ..............................................................................................13
9.3 osal_pwrmgr_powerconserve() ...........................................................................14
9.4 osal_pwrmgr_device() .........................................................................................14
9.5 osal_pwrmgr_task_state() ....................................................................................14
10.非挥发性内存API .....................................................................................................15
10.1简介.........................................................................................................................15
10.2 osal_nv_item_init() ...........................................................................................16
10.3 osal_nv_read() ....................................................................................................17
10.4 osal_nv_write() ...................................................................................................17
10.5 osal_nv_delete() ................................................................................................18
10.6 osal_nv_item_len() ............................................................................................18
10.7 osal_offsetof() .....................................................................................................19
11.简单的非挥发性内存API ..........................................................................................19
11.1简介 ..........................................................................................................................19
11.2 osal_snv_read() ....................................................................................................20
11.3 osal_snv_write() ...................................................................................................20
12. OSAL时钟系统 ..........................................................................................................21
12.1简介...........................................................................................................................21
12.2 osalTimeUpdate() ...............................................................................................21
12.3 osal_setClock() ...................................................................................................22
12.4 osal_getClock() ...................................................................................................22
12.5 osal_ConvertUTCTime() ....................................................................................22
12.6 osal_ConvertUTCSecs() .....................................................................................23
13. OSAL杂项 ................................................................................................................23
13.1简介...........................................................................................................................23
13.2 osal_rand() ..........................................................................................................23
13.3 osal_memcmp() ....................................................................................................23
13.4 osal_memset() ......................................................................................................24
13.5 osal_memcpy() ....................................................................................................24
1. 简介
2. 1.1目的
本文件的目的是定义在OS抽象层(OSAL)的API。这个API允许的TI堆叠产品的软件组件
,例如Z-
堆栈™,的RemoTI™和BLE,可以独立于操作系统的具体的书面,内核或任务环境(包括控
制回路或连接-于─中断系统)
1.2适用范围
该文件列举了由OSAL提供的所有函数调用。足够详细地指定的函数调用,允许程序员来
实现它们。

1.3缩略语
API应用程序接口 BLE蓝牙低能量 NV非易失
OSAL操作系统(OS)抽象层 RF4CE射频消费电子
的RemoTI德州仪器(TI)的RF4CE协议栈 的Z-Stack德州仪器ZigBee协议栈
2,API概述 2.1概述
操作系统抽象层被用来从处理环境的具体屏蔽的TI栈软件组件。它提供的方式,独立于处
理环境的以下功能。
1.任务登记,初始化,出发 任务
2之间信息交流
3.任务同步
4.中断处理
5.计时器
6.内存分配
3.消息管理API
3.1简介
消息管理API提供了一种机制用于交换具有不同处理环境的任务或处理元件之间的消息(
例如,中断称为控制环中服务程序或函数).The功能在此API使任务分配和解除分配的消息
缓冲区,发送命令信息到另一个任务,并收到回复信息。
3.2 osal_msg_allocate()
3.2.1简介
这个函数被一个任务来分配消息缓冲区,任务/函数将填写的信息中并调用osal_msg_send(
)将消息发送给另一个任务。如果缓冲器不能分配,msg_ptr将被设置为NULL。 注意:不
要将此功能与osal_mem_alloc(),这个函数是用来分配一个缓冲区的任务之间发送消息[
使用osal_msg_send()。使用osal_mem_alloc()分配的内存块。
3.2.2原型
UINT8 * osal_msg_allocate(UINT16 LEN)
3.2.3详细参数
len是这个消息的长度。
3.2.4返回
返回值是一个指向分配给消息的缓冲区。返回NULL表示信息分配操作失败。
3.3 osal_msg_deallocate()
3.3.1简介
此功能用于解除分配的消息缓冲器。这个功能是由一个任务(或处理元件)称为后处理完

接收到的消息。
3.3.2原型
UINT8 osal_msg_deallocate(UINT8 * msg_ptr)
3.3.3详细参数
msg_ptr是指向需要被解除分配的消息缓冲器。
3.3.4返回
返回值指示该操作的结果。 返回值 说明
SUCCESS 德分配成功
INVALID_MSG_POINTER 无效的消息指针
MSG_BUFFER_NOT_AVAIL 缓冲区排队
3.4 osal_msg_send()
3.4.1简介
所述osal_msg_send函数由一个任务发送一个命令或数据消息到另一任务或处理元件。该des
tination_task标识符字段必须指向一个有效的系统任务。该osal_msg_send()函数也将设置
目标任务事件列表中的SYS_EVENT_MSG事件。
3.4.2原型
UINT8 osal_msg_send(UINT8 destination_task,UINT8 * msg_ptr)
3.4.3详细参数
destination_task是任务的ID来接收该消息。
msg_ptr是指向包含消息的缓冲器。
Msg_ptr必须是一个指针()通过osal_msg_allocate分配的一个有效的消息缓冲区。
3.4.4返回
返回值是1字节字段,指示该操作的结果。 返回值 说明
SUCCESS 邮件发送成功
INVALID_MSG_POINTER 无效的消息指针 INVALID_TASK Destination_task无效
3.5 osal_msg_receive()
3.5.1简介
该功能称为由任务来检索接收的命令消息。使用osal_msg_deallocate()调用处理消息后,
调用任务必须取消分配的消息缓冲区。
3.5.2原型
UINT8 * osal_msg_receive(UINT8 TASK_ID)
3.5.3详细参数
TASK_ID是调用任务(该消息注定)的标识。
3.5.4返回
返回值是一个指针,指向包含该消息或NULL,如果没有接收到的消息的缓冲器。
3.6 osal_msg_find()

3.6.1简介
此功能搜索现有的OSAL信息匹配TASK_ID和事件的参数。
3.6.2原型
osal_event_hdr_t * osal_msg_find(UINT8 TASK_ID,UINT8 event)
3.6.3详细参数
TASK_ID是标识符的入队OSAL信息必须匹配。 事件是OSAL事件ID的入队OSAL信息必须
匹配。
3.6.4返回
返回值是一个指向上的成功或NULL失败匹配的OSAL信息。
4,任务同步API
4.1简介
这个API使得任务等待事件的发生,控制返回在等待。该API中的函数可以被用来设置为任
务的事件,并通知任务一旦任何事件被设置。
4.2 osal_set_event()
4.2.1简介
这个函数被调用来设置事件标志的任务。
4.2.2原型
UINT8 osal_set_event(UINT8 TASK_ID,UINT16 event_flag)
4.2.3详细参数
TASK_ID是该事件是要设置的任务的标识符。
event_flag是一个2字节的位图,每个比特指定一个事件。只有一个系统事件(SYS_EVENT
_MSG),事件的其余/位由接收任务定义。
4.2.4返回
返回值指示该操作的结果。 返回值 说明
SUCCESS 成功
INVALID_TASK 无效的任务
5.定时器管理API
5.1简介
该API允许通过内部(TI堆栈)的任务和外部的(应用层)任务使用定时器。该API提供的
功能来启动和停止计时器。该定时器可在1millisecond的增量进行设置。
5.2 osal_start_timerEx()
剩余22页未读,继续阅读










安全验证
文档复制为VIP权益,开通VIP直接复制

评论0