zoukankan      html  css  js  c++  java
  • performPeriodicTask

     1 /*********************************************************************
     2  * @fn      performPeriodicTask 执行 周期 任务
     3  *
     4  * @brief   Perform a periodic application task. This function gets
     5  *          called every five seconds as a result of the SBP_PERIODIC_EVT
     6  *          OSAL event. In this example, the value of the third
     7  *          characteristic in the SimpleGATTProfile service is retrieved
     8  *          from the profile, and then copied into the value of the
     9  *          the fourth characteristic.
    10  *
    11  *  执行周期性的应用任务,这个函数被调用(每隔五秒)作为 SBP_PERIODIC_EVT 的  
    12  *  OSAL 事件。在这个案例中,第三个 特征值(characteristic)在SimpleGATTProfile
    13  *  服务里被获取从 Profile里,并且这个值被复制到第四个特征值里!
    14  *
    15  *  profile:描述了某个应用场景中设备有什么功能(执行什么工作)。在一个profile里会定义好角色。
    16  *  角色会包含一个服务service或者多个service或者没有。profile一般定义两个角色,例如防丢器中定义了一个报告者和监视者。
    17  * 
    18  *  2016年12月15日08:59:13,GXP
    19  *
    20  * @param   none
    21  *
    22  * @return  none
    23  */
    24 static void performPeriodicTask( void )
    25 {
    26   uint8 valueToCopy;
    27   uint8 stat;
    28 
    29   // Call to retrieve the value of the third characteristic in the profile
    30   // 调用 获取第三个特征值在 profile里
    31     
    32     /*
    33      * GXP,NOTE,2016年12月15日10:36:28
    34      *
    35      * 这个函数第二个形参是一个空指针类型,通过取valueToCopy这个 局部变量的地址
    36      * 这样就能在SimpleProfile_GetParameter这个函数里把 valueToCopy这个 局部变量
    37      * 进行赋值。这个函数调用还返回了一个status,通过这个状态可以知道是否调用成功,
    38      * 以及如果失败可以知道失败的原因。
    39      */
    40   stat = SimpleProfile_GetParameter( SIMPLEPROFILE_CHAR3, &valueToCopy);
    41 
    42   if( stat == SUCCESS )
    43   {
    44     /*
    45      * Call to set that value of the fourth characteristic in the profile. Note
    46      * that if notifications of the fourth characteristic have been enabled by
    47      * a GATT client device, then a notification will be sent every time this
    48      * function is called.
    49      */
    50     
    51     /*
    52      * 调用 设置 第四个特征值  在profile 里。
    53      * 注意:第四个特征值已经被一个GATT客户端设备使能!
    54      * 这种情况下,这个通知值(第四个特征值)将要被设置,每当这个函数被调用时!
    55      */
    56     SimpleProfile_SetParameter( SIMPLEPROFILE_CHAR4, sizeof(uint8), &valueToCopy);
    57   }
    58 }
  • 相关阅读:
    读写ini文件
    优化SQL Server的内存占用之执行缓存
    跨应用程序进行 Forms 身份验证
    MSDN Visual系列:在MOSS中创建一个BDC实体
    Sql Server中利用自定义函数完成单据流水号的设计
    关于string是值类型还是引用类型
    经典算法C#四种排序算法
    用C#实现HTTP协议下的多线程文件传输
    Windows Phone关于 Llistpicker用法
    Hubtile的应用
  • 原文地址:https://www.cnblogs.com/suozhang/p/6181970.html
Copyright © 2011-2022 走看看