DA14583 BLE\U外围设备问题?

了解更多常见问题教程

6个职位/0个新职位
最后一篇文章
eslam snono公司
离线
最后一次见到:3个月3天前
已加入:2018-05-02 13:56
DA14583 BLE\U外围设备问题?

尊敬的Diyabo国际娱乐alog Semiconductor:,

我认为你们的DA14583不适合发展。在许多主题中,你会问人们为什么要使用它,并建议其他处理器如DA14531、DA14585、DA14586使用。我认为DA14583和SDK5.0.4对于开发来说是不合理的,因为您的文档和支持是有限的。

不管怎样,我希望你能帮助我改变主意,特别是我以前在这里问过,但没有得到解决办法。

所以,我的问题是,现在我有一个自定义板与DA14583。我使用的是I2C的RTC,OLED,LED驱动程序。此外,iam使用GPIO控制继电器。我的代码存在于while(1)中的arch\u main.c中。

我有一些在任何处理器中都很容易解决的问题:

1-如何使用按钮打开/关闭BLE?

2-如何获取连接的设备名称?

3-如何在while(1)中以正常方式使用外围设备I2C、ADC和GPIO?

4-为什么当我使用从SDK获得的sw\u reset()函数对DA14583进行软件重置时,BLE会停止播发,有时会导致冻结?

5-为什么有时使用ADC和BLE时DA14583会冻结?

请我需要一个真正的答案,不问是否有任何理由使用DA14583。

我真的要改变它以后,但目前我必须使用它,所以请帮助我在这些问题。

提前谢谢

设备:
PM\U对话框
离线
最后一次见到:19小时11分钟前
工作人员
已加入:2018-02-08 11:03
嗨,eslam snono,

嗨,eslam snono,

是的,DA14531或DA14585/586建议用于新设计/项目,因为DA14580/3和SDK5没有任何路线图。

  1. 你的意思是开始/停止广告并将芯片置于睡眠模式吗?
  2. 设备是以外设模式还是中心模式配置的?
  3. 你可以抢夺SDK的外围示例-5.0.4\projects\target\u apps\peripheral\u examples。但是,如果您也打算进行BLE活动,请记住监视程序机制将启动,并且将进行重置。有关看门狗机制的更多信息,请参阅数据表。
  4. 设备是从RAM引导还是从闪存引导?如果它是从RAM启动的,在重置之后,代码会丢失,您应该重新编程。
  5. 你能在调试模式下运行它来检查它冻结的位置吗?它是由于看门狗过期,由于NMI或断言发生?

谢谢,下午好

eslam snono公司
离线
最后一次见到:3个月3天前
已加入:2018-05-02 13:56
你想开始/停止吗
  1. 你的意思是开始/停止广告并将芯片置于睡眠模式吗?

是的,我需要开始和停止广告。

2设备是以外设模式还是中心模式配置的?

抱歉,我没明白。

三。你可以抢夺SDK的外围示例-5.0.4\projects\target\u apps\peripheral\u examples。但是,如果您也打算进行BLE活动,请记住监视程序机制将启动,并且将进行重置。有关看门狗机制的更多信息,请参阅数据表。

我已经在使用ble\u app\u外围示例作为代码的基础。

4设备是从RAM引导还是从闪存引导?如果它是从RAM启动的,在重置之后,代码会丢失,您应该重新编程。

我从闪存启动,我知道如果从ram复位后的代码将丢失。

你能在调试模式下运行它来检查它冻结的位置吗?它是由于看门狗过期,由于NMI或断言发生?

我没有使用看门狗,我有#undef CFG\u WDOG

提前感谢您的回复

PM\U对话框
离线
最后一次见到:19小时11分钟前
工作人员
已加入:2018-02-08 11:03
嗨,eslam snono,

嗨,eslam snono,

  1. 您可以查看SDK的ble\u app\u sleepmode示例-5.0.4\projects\target\u apps\ble\u examples\ble\u app\u sleepmode。本例使用计时器停止广告。计时器过期时,设备停止广告并进入永久睡眠模式。请记住,当它处于任何可用的睡眠模式时,所有外围域都会断电。只有外部事件才能唤醒芯片。
  2. 根据BLE核心规范,芯片既可以充当GAP外围角色(广告),也可以充当GAP中心角色(扫描)。仅由中央设备启动的可中断连接。
  3. 请澄清你想要达到的目标。你也想拥有BLE功能吗?
  4. 请定义WDOG,因为代码可能会卡在某个地方。然后请在安装了调试器的情况下运行它。

谢谢,下午好

eslam snono公司
离线
最后一次见到:3个月3天前
已加入:2018-05-02 13:56
仍然有同样的问题

仍然有同样的问题,我真的很抱歉,你的答案没有帮助。

最后一个问题,你能不能帮我用你的例子或任何东西来控制,只能够打开和关闭一个按钮?

我有你的EVK(DA14580DEVKT-PƏVC)和它有两个开关(SW2,SW3),我需要使用其中任何一个来控制BLE。

当按下BLE关闭或广告停止时,当释放BLE打开或广告开始时。

所以请回复我任何真实的答案,我可以使用,提前谢谢。

PM\U对话框
离线
最后一次见到:19小时11分钟前
工作人员
已加入:2018-02-08 11:03
嗨,eslam snono,

嗨,eslam snono,

正如我之前的回复中提到的,我强烈建议您检查SDK的ble\u app\u睡眠模式示例。此示例演示如何使用睡眠模式API并在运行时更改睡眠模式。设备播发一段预定义的时间(APP\u ADV\u DATA\u UPDATE\u TO),默认值为10秒。只要设备处于播发状态,其睡眠模式就设置为深度睡眠。在上述超时过期后,如果设备未进入连接状态,则停止播发。现在芯片什么都不做,等待外部事件退出休眠状态。示例是使用SW3按钮来唤醒。按下按钮后,设备将在预定义的时间内再次开始播发。当它进入已连接状态时,睡眠模式变为延长睡眠。

请使用app_button_enable()函数检查如何配置唤醒控制器,以便它能够检测到GPIO中断。

在您的例子中,您应该使用唤醒控制器来停止广告,而不是示例使用的app\u easy\u timer()。

>>当按下BLE关闭或广告停止时,当释放BLE打开或广告开始时。

这是不可能的,因为去抖动时间是63毫秒。

谢谢,下午好