你好!
我参考的是官方向程序prox_report
1.请问da14580如何驾驶断开连接,调用那个函数?默认_app_on_disconnect(null)似乎不对。
2.请问da14580和手机apk连接之后,人为关键字手,使使机apk和da14580异常断开,da14580一盏没收到开,没有广播,无法再次
和da14580连接,只有灯泡重启才能,请问该如何处定理?
Keywords:
Device:
你好,
首先,确保 prox_reporter 工程没有做过任何修改。以下是功能的实现示例
1.外面运动断开
// 1.在user_proxr.c中,创建一圈用词连接成功的数,把链路索引保存下来uint8_t connect_idx;voiduser_app_on_connection(uint8_t connection_idx,塑造gapc_connection_req_ind.const* param){connect_idx = connection_idx;default_app_on_connection(connection_idx,param);}// 2.在user_proxr.h中间明voiduser_app_on_connection(uint8_t connection_idx,塑造gapc_connection_req_ind.const*param);// 3. 把连接成功函数注册到 callback 列表,在 user_callback_config.h 中:.app_on_connection = user_app_on_connection,// 4.调用API实现驾驶开app_easy_gap_disconnect(connect_idx);
2。系统蓝牙链路断开后,会调用:
user_app_on_disconnect.
2。
你好, CYibin
我在prox_report做做了如修改:
添加支持arch_printf
修改修改数:
user_default_hnd_conf参修改如下
。adv_scenario = def_add_forever,.advertise_period = ms_to_timerunits(18000),
user_adv_conf参数修改如下:
.intv_min = 160,.intv_max = 160,
关键词BLE_SPOTA_RECEIVER /////#定义BLE_SPOTA_RECEIVER 1
关闭BLE_PROX_REPORTER #define USE_PUSH_BUTTON 0 /////////#define BLE_PROX_REPORTER 1
我要在连接断开着开着一件,在人为关键字机蓝牙后,da14580会使用user_app_on_disconnect,然后广播。
在重复多次打开关闭手机蓝牙后,DA14580广播有时断断续续广播,我如上修改广播参数是否正常,还需要修改别的吗?
另外还有一个问题请提供帮助,DA14580支持硬延时吗,我使用IIC 接口的传感器,传感器初始化伪代码如下:
void sensor_init(void)
{
sensor_reset()//必须延迟3ms,下一个sensor_standby()
adc_usDelay(3000);
sensor_standby(); //must delay 2ms,next set sensor_control();
ADC_USDELAY(2000);
sensor_control1();
ADC_USDELAY(2000);
sensor_control2();
ADC_USDELAY(2000);
}
我要应该如何定理又时?凌时时间多重,似乎使系统不稳定,请问我该如何定理?sensor_init();应该在何处使用?
如果使用app_easy_timer,延时最低单位是10ms,因为时钟数量更多,有没有更好的方法?
你好,
你广播参数没问题,如果程序没做任何修改的话,不会出现你所说的广播断断续续的现象的。出现这个现象,怀疑是:
1.硬件硬件,有频偏或者天线没设计好或者晶振的数不合于数据表的要求
2.软件问题,sdk是一击机械,程序里没有阻塞
传感器init等硬件的初始化可放ust_on_app_init遇里,可在user_callback_conifg.h中找到该接口。
你可以通过 while(i--) 的方式来实现延时
你好,请问user_on_app_init和system_init先后顺序那个?测试发布user_on_app_init似乎在system_init使用。
传感器init放在user_on_app_init,但i2c_init放在system_init中的periph_init infer中。
只有先i2c_init,才能sensor init。我记得user_on_app_init似乎是初始化一些参数变量,也能初始化传感器是吧?
你好,
user_on_app_init在system_init中间用品:
if(user_app_main_loop_callbacks.app_on_init!= null)
user_app_main_loop_callbacks.app_on_init();
你好,你的不法是连接,请问断开着后,发表ke_state_get(task_app)== app_connected,请问这正式吗,断开连接,停止广播ke_state_get(task_app)不知道app_conectable吗?
不正义。
断开后,正常应该会调用开启广播的函数。然后把APP_TASK的状态设置为:
ke_state_set(task_app,app_connectable);
你好
蓝牙主动进入睡眠的时候,蓝牙断开连接,加了一个标志位,使得在进入睡眠模式前,断开连接,不调用广播函数。
问题:现阶段,蓝牙睡眠,唤醒,传感器等都能正常工作。和手机连接后,蓝牙也能主动断开进入睡眠模式,但是在测试通信距离时候,
手机和蓝牙大概10米多时候,手机和蓝牙设备断开,蓝牙设备死机,项目也添加乐看门狗,请问为何会死机?我应该如何去排查问题。
(远距离断开连接连接连接死死死死死死大约2/3)
你好,
请问你的事是:断开蓝牙后,设备会有几率手机;还是:在不错情况下打开(血液移动开关距离距离开),设备有几率手机?
我比较倾向于前者,因为对于设备固件来,无论如何无论如何开,固件都会回调on_disconnect anders,区别只是打开原因不成。
假设是前者,在这么大概率断开导致死机的情况下,原因很可能在出在你设备的休眠流程没做好,正常的流程应该是:
你好
感谢回复,我会再检讨下。
动感呼吸开发问题,手机都是在拉远展会进出生,通讯登录看调用ON_DISCONNECT然后手机
由于由于用app_easy_gap_disconnect(save_connection_idx);会计user_on_disconnect,然后开头广播,所以添加disconnect_no_adv_flag标志位控制控制控制控制控制控制控制控制。
set_device_to_sleep次数中ke_state_get(task_app)两次都是5.这应该是不正义的,需要加ke_state_set(task_app)函数吗?
你好,
1. 调用app_easy_gap_disconnect(save_connection_idx);后,无需无需使用app_easy_gap_advertise_stop();
虽然(Delay_Time--)的时钟时间时机?由于系统是基于机器仪的,所以一般性情况下,任何消息回调中间不出明显的阻塞
3。ARCH_BLE_EXT_WAKEUP_ON();app_accint_wakeup_enable();这两行代码除了在disconnect处理外,还应该放在:
你好,在user_app_adv_undirect_complete添加arch_ble_ext_wakeup_on();和app_accint_wakeup_enable();
请问arch_ble_ext_wakeup_on(); //Puts the BLE core to permanent sleep. Only an external event can wake it up
是使用ARCH_BLE_EXT_WAKEUP_ON蓝牙内核立马进入睡眠模式?当时如果在当时是人们
你好,
正常情况下,系统进入休眠之后,还会因为一般来的时代的被,比如,蓝牙事件,定时代
调用了arch_ble_ext_wakeup_on 函数后,系统就只在一起下面会:外部中间。其它的,比如蓝牙事件,定时代,都会失效。