我怎样才能在580上启用睡眠功能? | 580的低能量位于连接或广告间隔之间。当模块无事可做时,例如在不久的将来有一个BLE事件,如果用户打开了睡眠功能,它将自动切换到睡眠模式。为了让用户打开睡眠功能,他必须:
在设置了上述定义或变量之后,模块将在每个BLE事件(连接事件或广告事件)之后进入睡眠模式。 用户可以改变默认睡眠模式,即在运行时切换每个睡眠模式(关闭,扩展,深度模式),通过使用函数:
重要提示:当睡眠模式被启用时,你将无法使用keil来调试代码,当调试睡眠功能时,应该始终关闭。在睡眠和调试580将保持空闲,直到调试器被分离,或者你将收到一个错误在keil提到“JLink error: Can not read register xx (xxx) while CPU is running” |
有可能用外部处理器控制DA14580吗? | DA14580可用作单个处理器解决方案或外部处理器。在外部处理器解决方案中,在DA14580上运行蓝牙低能量堆栈和配置文件。自定义应用程序层部署在外部处理器上。DA14580上的外部应用程序和配置文件/堆栈之间的通信是通过对话框提供的外部处理器接口。外部处理器接口可以物理映射在UART或SPI上。 |
对话框是否提供蓝牙低能耗配置? | 对话框为客户开发了一组SIG合格的配置文件。配置文件作为SDK的一部分以源代码格式交付。用户同意对话框软件许可证后,这些配置文件可以自由地用作用户应用程序的一部分。雷竞技安卓下载 |
当DA14580失去连接时会发生什么情况,例如由于监督超时。 |
当DA14580失去连接时会发生什么情况,例如由于监督超时?如何将其配置为立即重新发布广告… 如果由于监控超时等原因导致连接丢失,GAP层将向应用程序任务发送GAPC_DISCONNECT_IND消息。在GAPC_DISCONNECT_IND处理程序中,开发人员可以设置他们的应用程序重新开始广告。 如果开发人员希望重新启动堆栈,则可以通过应用程序任务将GAPM_RESET_CMD发送到GAP层 |
DA14580是否支持应用级数据AES-128加密? | DA14580支持AES-128加密和解密,一旦在配对/绑定过程中启用加密,就可以保护BLE链路。这是由Dialog堆栈处理的,开发人员不需要实现任何专有的加密/解密算法。 如果开发人员想通过加密应用程序数据来增加额外的安全性,也可以使用DA14580集成的AES-128硬件块。GAP API GAPM_USE_ENC_BLOCK_CMD可以访问AES-128硬件块,用于加密应用数据。该API的Oprant 2是明文,Oprant 1是用于加密的密钥。加密完成后,应用软件将收到来自堆栈的GAPM_USE_ENC_BLOCK_IND消息和加密后的数据。加密后的数据可以通过各种开源工具破译,例如:http://seit.unsw.adfa.edu.au/staff/sites/lpb/src/AEScalc/. 在应用层,DA14580不支持使用AES-128硬件块进行解码。 |
如何使用UART进行调试? | 1)必须在da14580_config.h中定义 #定义CFG_PRINTF 2)从DA14580_SDK_3.0.2.1\DA14580_SDK_3.0.2.1\dk_apps\src\modules\app\src\app_utils \app_console中添加app_console.c文件夹 3)从Options for target -> C/ c++ tab ->中包含app_console文件夹的路径。 4)在Periph_init中,添加: SetBits16 (CLK_PER_REG UART1_ENABLE 1);//为UART 1启用时钟 5)在GPIO_reservations函数中,添加: Reserve_gpio (uart1_tx, gpio_port_0, gpio_pin_4, pid_uart1_tx); 6)在set_pad_function中添加: gpio_configurepin(gpio_port_0,gpio_pin_4,输出,pid_uart1_tx,false); 7)在必须使用printf命令的文件中添加:#include "app_console.h" 要打印1个字节: |
如何在扩展睡眠模式下创建计时器(SDK 3) | 1)内核定时器的新处理器 必须为超时事件定义消息,必须在app_api.h文件中的enum APP_MSG中声明。在本例中,我们将使用:APP_ADV_BEACON_INACTIVE_MODE。 BLE定时器的消息处理函数必须添加到app_task_handlers.h文件中: 2)必须调用先前声明的处理程序名称的app_timer_set。 调用app_timer_set函数来启动app_dialog_beacon_proj.c文件中的计时器: 注意:timeout: 30 000 => 5分钟:这是定时器能达到的最高超时。 |
在唤醒时如何在唤醒期间使用ke_timer? | ke_timer的思想是利用ble定时器,将ble定时器中断转换为ke_message并发送到相应的任务消息队列。 在HID参考中,我们有以下描述,以确保ble定时器从IDLE_ST开始后工作良好。 在SDK 3.0.6中,我们有类似的唤醒msg, #if(ext_sleep_enabled) ke_timer应该只在APP_WAKEUP_MSG句柄执行之后启动。 我们通常会遇到这种情况,因为这种情况很容易发生,低于WakeUp回电的代码将触发此案例: 解决方案 我们已经完成了app_setup_timer的以下扩展。它检查BLE是否处于活动状态,如果不是,它将自动生成消息并自行设置计时器。 uint8_t app_check_ble_active(void) Int app_create_new_timer(ke_msg_id_t const msgid, const struct create_new_timer_struct *param, /** **************************************************************************************** |
RSSI值在连接和广告模式下不一致。 | GAPC_CON_RSSI_IND在连接模式下返回的RSSI值是原始RSSI值的一半。 在将原始rssi应用到dBm公式之前,应用程序必须将参数>rssi值加倍。 |
如何在连接的同时做广告? | 为了在连接到中央设备时进行广告,必须执行以下步骤: 1)在void app_connection_func(struct gapc_connection_req_ind const * param)中,您必须执行以下操作: 2)创建一个新标志: 3)在int gapc_disconnect_ind_handler()中,你必须做: 4)在app_disconnect_func(dest_id, param);你必须做的事: 5)在int gapm_cmp_evt_handler中,你必须做: |
为什么我不能执行定向广告与5.0.3 SDK时,使用app_easy_gap_ directed_advertise_start() api ? | 这是一个已知的问题,将在SDK5的新版本中修复。app_easy_gap_directed_ advertise_start()错误调用app_easy_gap_undirected_advertise_start_create_msg();将其替换为app_easy_gap_directed_advertise_start_create_msg(),并在消息的参数中添加intv_min和intv_max的参数,如下面的代码片段所示,然后添加您的自定义直接广告函数。 static struct gapm_start_advertise_cmd * app_easy_gap_dircated_advertise_start_create_msg(void) |
1458x家族可以支持多个连接吗? | 580和583最多支持6个连接,581最多支持8个同时连接只有作为中央操作时。作为外围设备运行时,可以支持的最大连接是只有一个. |
1458x家庭可以支持多个角色吗? | 蓝牙4.1规范将该特定功能定义为可选功能。58x系列不能支持多个角色(同时支持中央和外围)。目前支持的是角色转换。为了实现这一点,必须在GAPM_RESET完成后发出GAPM_SET_DEV_CONFIG_CMD时,发出GAPM_SET_DEV_CONFIG_CMD并设置580的适当角色。 |
如何更改软件中使用的低功耗时钟? | 用户可以从CFG_LP_CLK定义中更改软件中的低功耗时钟(取决于他想使用哪个振荡器),并放置相应的值。
|
如何使我的设备广告与ADV_SCAN_IND包? | adv_scan_ind PDU用于在不可连接模式下操作时发送扫描响应的外围设备,以便在580上执行此操作,您必须在不可连接模式下设置设备广告,并设置扫描响应数据。使用上述配置,堆栈将使用适当的PDU(ADV_SCAN_IND)。 |
在连接时,发送通知我可以从中央正确DSIConnect,我可以再次看到设备广告,但是当我超出范围时,设备断开连接它永远不会启动广告。问题是什么? | 当您从设备发送通知时,您为想要发送的消息和数据分配了空间。当设备连接并发送数据时,在将数据发送到客户端设备时释放为消息和数据分配的空间。当正确断开连接时,设备将停止发送通知,因此代码将继续正常运行,断开连接处理程序将被触发,因此广告将再次开始。当超出范围时,在设备命中断开连接处理程序,它继续生成不离开设备的通知,所以它们累积到堆和580重置。一个适当的解决方案是,通过捕获GATTC请求类型(GATTC_NOTIFY或GATTC_INDICATE)的GATTC_CMP_EVT (GATTC_CMP_EVT),确保在生成一个新通知之前,前面的通知已经成功地离开了580。 |
我如何可以在SDK5上添加一个实现的配置文件到我的模板或示例项目? | 在SDK中添加配置文件非常简单,因为已经实现了App_.c / .h文件的配置文件(例如,我们将使用电池配置文件的文件作为演示)。
注意:在user_modules_config.h中,用户可以排除的模块不仅是配置文件模块,还包括SDK的特性。 所有这些都是用户在项目中添加已经实现的概要文件时应该遵循的标准过程。 |
我如何添加一个配置文件到我的项目,当没有实现在应用程序级别(没有app_profile和app_profile_task实现)? | 并不是所有的概要文件都有应用程序级的实现(大多数概要文件没有app_profile.c和app_profile_task.c),所以用户必须实现它。这些文件将包括概要级实现的所有实现和消息处理。 给出了一个简单的例子,使用已经实现的电池配置文件。 创建这两个文件的一般规则是,app_bass.c包含所有初始化函数(触发操作的void函数),app_bass_task.c包含操作结束时触发的处理程序函数,应用程序应该相应地采取行动。 例如,当设备启动时,它最终将开始为包含的服务创建数据库,所有的app_profile.c文件包括app_profile_create_db()函数,电池配置文件有app_bass_create_db()。
这是概要文件为了与应用程序交互而遵循的原则。
|
如何添加SUOTA配置文件到我的SDK 5.0.3应用程序? | 在项目中添加SUOTA配置文件是一项非常简单的任务,可以按照以下步骤将配置文件集成到他的项目中。
重要提示:如果您正在使用BLE示例,请确保在user_modules_config.h文件中没有排除您将要使用的任何配置文件。通过将定义EXCLUDE_DLG_SPOTAR设置为1,app_spotar_task.c将不会被用作应用程序级实现。 |
如何读取并将RSSI值转换为DBM? | 读取RSSI值有两种方法: 1.在作为中心操作时读取广告字符串的值。 当中央接收广告指示时,虽然作为中央和人们想要读取广告串的RSSI,但可以轻松完成。当广告字符串到达中央时,应用程序将通过APP_ON_ADV_REPORT_INC回调函数通知到达。该函数的参数是GAPM_ADV_REPORT_IND,其中包括广告消息的RSSI值的其他信息。使用该值并应用以下公式,可以转换为DBM RSSI(DBM)=(0.474 * LRES) - 112.4。
上述计算的实现可以在windows应用程序中的接近监视器gapm_adv_report_ind_handler()函数中找到。 2.当作为外设操作时,当连接时读取RSSI值。 当作为一个中心操作时,一个人想要获得RSSI值,应用程序必须向堆栈发出请求,以获得关于RSSI值的指示。因此,应用程序应该发送GAPC_GET_INFO_CMD和GAPC_GET_CON_RSSI作为命令的操作。之后,堆栈将用GAPC_CON_RSSI_IND响应,应用程序可以从那里检索rssi值。 有关命令的更多信息,请检查RW-BLE-GAP-IS.PDF 使用上面的值可以通过使用上面的公式进行dBm转换,但是从GAPC_CON_RSSI_IND返回的值必须在进行计算之前加倍。 在gapc_con_rssi_ind_handler()函数中的接近监视器窗口应用程序中可以找到上述计算的应用程序。 |
如何改变广告类型标志? | 广告字符串总是以表示设备的一些基本功能的字节序列开始(例如0x02, 0x01, 0x06 -长度,标志标签类型,通用发现模式/ BR/EDR不支持)。该规范规定,如果这些字节被设置为零,则可以省略这些字节。在580的情况下,因为它是BLE设备,这些字节不能被省略,因为BR/EDR不支持位域。而且这些字节不能被用户更改,ROM堆栈负责将这些字节放置在广告字符串中,例如,如果想让设备Limited可发现,他所要做的就是在GAP_LIM_DISCOVERABLE中设置设备的广告模式,堆栈将负责其余的工作,并在字符串中放置适当的标志。 |
为了提高产品和抵押品的便捷性,我们更新了我们的雷电竞官网登录对话框的网站SmartBondBluetooth®低能量产品页面。自2019年4月15日起,Dialog Se雷竞技电竞平台miconductor网站将成为整个SmartBond投资组合资源的单一接入点。对话台连接/蓝牙低能量支持站点仅用作用论坛门户网站.如果您有任何疑问或技术咨询,请在我们的专家团队的论坛上发布您的问题,将回答您的问题或填写此表格。您还可以找到联系信息本地团队在这里.