嗨,对话框中,
我正在使用app_ble_peripheral。我看到了文件user_custs1_impl.c和user_peripheral.c
我认为有应用程序处理程序,你能解释一下代码吗,我知道它从应用程序捕获请求。
但我想知道你如何映射和流程的处理程序
例如,
Void user_catch_rest_hndl(ke_msg_id_t const msgid,
空白const *参数,
ke_task_id_t const dest_id,
ke_task_id_t const src_id)
{
开关(是否)
{
案例CUSTS1_VAL_WRITE_IND:
{
Struct custs1_val_write_ind const *msg_param = (Struct custs1_val_write_ind const *)(param);
开关(msg_param - >处理)
{
案例SVC1_IDX_ADC_VAL_1_NTF_CFG:
User_svc1_adc_val_1_cfg_ind_handler (msgid, msg_param, dest_id, src_id);
打破;
case SVC1_IDX_ADC_VAL_1_NTF_CFG: ""它在做什么?
你能解释一下它的功能和它是如何映射的吗
设备:

嗨MADHUSF,
c源代码中实现了创建发布报文、管理控制发布周期的定时器、处理连接事件等应用相关的代码。此外,它还提供user_catch_rest_hndl(),这是对自定义1服务(如读、写、确认和通知)的请求的处理程序。这些自定义配置文件消息是特定于应用程序的,它们的处理被转移到用户应用程序。SDK不知道特定的自定义配置文件消息,用户的应用程序负责处理它们。例如,在SDK的ble_app_peripheral示例中,当写入控制点特性时,您将在应用程序级别获得CUSTS1_VAL_WRITE_IND。CUSTS1_VAL_WRITE_IND意味着任何可写特征都是由对等设备写入的,它被定义为custs1_task.h。对于控制点特征,处理程序等于SVC1_IDX_CONTROL_POINT_VAL,因此user_svc1_ctrl_wr_ind_handler。我建议您在调试模式下运行SDK的ble_app_peripheral示例,在user_catch_rest_hndl()中添加一个断点,并在应用程序代码中执行步骤。
谢谢,PM_Dialog