设为首页 | 加入收藏
首页 ZigBee联盟常识 ZigBee环球资讯 与蜂共舞 ZigBee资料下载 联系我们

    CC2530套件正式上线,详情查看蜂舞产品……

与蜂共舞
友情链接
 
TI德州仪器
Ember
飞思卡尔
Jennic
Telegesis
西安华凡科技有限公司
与蜂共舞首页 - 与蜂共舞
OSAL系统相关问题
来源:郑州新双恒信息技术有限公司  加入时间:2009-9-2 点击:6900 [双击滚动窗口]

原创作者:【LNVI.ZHU】 尊重原创,如需转载请注明出处。仅供参考。

OSAL中断操作
OSAL内存操作
OSAL消息传递
OSAL任务管理
OSAL定时器


OSAL中断操作:
1、 允许中断
byte osal_int_enable( byte interrupt_id )
-- interrupt_id:中断标示符
2、禁止中断
  byte osal_int_disable( byte interrupt_id )
  -- interrupt_id:中断标示符
3、暂停中断
  HAL_ENTER_CRITICAL_SECTION(x)
4、重新启用中断
  HAL_EXIT_CRITICAL_SECTION(x)


OSAL内存操作:
 1、分配内存
  void *osal_mem_alloc( uint16 size )
  -- size:分配缓冲区的大小
 2、释放内存
  void osal_mem_free( void *ptr )
  -- ptr:指向释放的缓冲区


OSAL消息传递:
 1、分配信息缓冲区
  byte * osal_msg_allocate( uint16 len )
  -- len:信息的长度
 2、发送信息
  byte osal_msg_send( byte destination_task, byte

*msg_ptr )
  -- destination_task:接收信息任务的标示符
  -- msg_ptr:消息指针
 3、接收信息
  byte *osal_msg_receive( byte task_id )
  -- task_id:接收信息的任务ID
 4、释放消息缓冲区
  byte osal_msg_deallocate( byte *msg_ptr )
  -- msg_ptr:消息指针
 OSAL任务管理
 1、任务初始化
  byte osal_init_system( void )
  --要创建的任务列表
 2、任务开始
  void osal_start_system( void )
  --系统任务的主循环函数
 3、获取活动任务ID
  byte osal_self( void )
  --中断服务子程序中调用将会发生错误
 4、事件句柄的函数原型
  (*pTaskEventHandlerFn)( unsigned char task_id, unsigned short event )


OSAL定时器:
 1、启动定时器
  byte osal_start_timerEx( byte taskID, UINT16 event_id, UINT16 timeout_value )
  -- taskID:定时器终止时事件任务的任务ID
  -- event_id:用户定义的事件,时间终止时通知这个事件
  --定时器设置前的时间量
 2、停止定时器
  byte osal_stop_timerEx( byte task_id, UINT16 event_id )
  -- task_id:事件任务的任务ID
  -- event_id:用户自定义事件
 3、读取系统时钟
  uint32 osal_GetSystemClock( void )
  --用来读取系统时钟(毫秒级)


打印此页】【关闭窗口】    
 
Copyright © 2009 郑州新双恒信息技术有限公司 版权所有
E-mail:wfj_123@126.com QQ群:83028739
豫ICP备:09005065号