⚠️
大家好. .谢谢你来到论坛。令人兴奋的消息!我们现在正在转移到新的论坛平台,它将提供更好的功能,包含在主对话网站中。所有岗位和账户都已迁移。我们现在只接受新论坛的流量-请在上面发布任何新帖子//www.wsdof.com/support.我们将在未来几天修复bug /优化搜索和标记。
12个职位/ 0个新职位
最后发表
cmarcus
离线
最后看到:两个月两个星期前
加入:2020-12-14十六16
Pro Devkit的问题

嗨,伙计们,我一直有无尽的麻烦试图使用Pro devkit的DA14531。这里有一个连接到这个设备的数字密钥:

https://www.digikey.com/short/z1pc4f

基本上,USB连接看起来非常不稳定。PCB上的LED D4总是闪烁,我可以听到USB不断的连接和断开。

在某些情况下,板子已经连接上了,但它会在几分钟后莫名其妙地突然断开(我甚至不需要靠近它)。

我怀疑有些东西没有正确地焊接在板子上,或者也许是板子电源有问题。USB 5V电源是稳定的,但其他电源似乎很粗略,特别是DA14531 buck电源,它上下跳动大约100-200mV。

这个开发板的文档非常混乱,这并没有帮助——事实上,我发现许多图表都是错误的。此外,对于相同的任务,不同的文档显示出不同的、相互矛盾的联系。这是我这么长时间不确定PCB是否有缺陷的主要原因。

有一次,USB工作了一段时间,我成功地运行了Blinky代码示例。当然,这是在发现单线UART的教程图不正确之后,我必须阅读完整的原理图并自己找出正确的线路。

基于这种微小的可能性准确的有文件,你能给我指一下吗?

很明显,我会和Digikey打交道,以获得一个新的,有希望运行的devkit。

设备:
PM_Dialog
离线
最后看到:2天14小时前
工作人员
加入:2018-02-08 11:03
嗨cmarcus,

嗨cmarcus,

新年快乐,感谢您在我们的公共BLE论坛上发帖。

你能让我知道如果跟踪了UM-B-117: DA14531 Pro开发工具包入门(HTML)从我们的网站?本教程展示了如何使用我们的SDK示例Pro-DK。HW配置是否正确?

那么,主要的问题是USB不断地连接和断开?你是怎么证实的?例如,如果您使用SmartSnippets工具箱V5.0.14 for Windows OS, Dk一直无法连接?

PS:在初始post中将设备选择从DA14581更改为DA14531。

谢谢,PM_Dialog

cmarcus
离线
最后看到:两个月两个星期前
加入:2020-12-14十六16
我确实遵循了

我确实听从了那个向导。

USB的稳定性是主要问题。每1-2秒,板上的D4 LED闪烁一闪,我听到我的电脑USB连接/断开的声音。

不管我做什么(即不管主板设置和不管DA14531模块被插/拔插),USB只是拒绝正常启动。我是否打开软件并不重要。偶尔,USB会无缘无故地连接。例如,我离开我的电脑5分钟,在某个时刻它决定连接。几秒钟后,它又断开了连接,我什么也没做。

我注意到一些可疑的东西,比如如果我在附近的空气中挥舞我的手,USB就会断开。对我来说,这表明一个焊点故障(即一个浮动输入,从我的身体检测电场)。但是目测没有发现任何东西。

PM_Dialog
离线
最后看到:2天14小时前
工作人员
加入:2018-02-08 11:03
嗨cmarcus,

嗨cmarcus,

假设DA14531使用Blinky示例闪烁,预计D5 LED将持续闪烁,因为这是这个外设示例的功能。这并不意味着USB连接不稳定。根据6.0.14.1114\projects\target_apps\peripheral_examples\blinky SDK示例,应用程序正在切换P0_9。这个引脚我连接到Pro-DK上的D5 LED。请尝试抹去SPI闪光,然后你会看到LED停止闪烁。

在那之后,我建议flash任何SDK BLE示例6.0.14.1114\projects\target_apps\ble_examples。

谢谢,PM_Dialog

cmarcus
离线
最后看到:两个月两个星期前
加入:2020-12-14十六16
LED闪烁的是D4

闪烁的LED是D4 LED,根据你自己的原理图是USB指示灯。

PM_Dialog
离线
最后看到:2天14小时前
工作人员
加入:2018-02-08 11:03
嗨cmarcus,

嗨cmarcus,

抱歉造成混淆-可能我读错了,这就是为什么我张贴了LED D5。让我查一下,稍后回复你。

谢谢,PM_Dialog

cmarcus
离线
最后看到:两个月两个星期前
加入:2020-12-14十六16
你好再次,

你好再次,

所以我从Digikey得到了一个新的替换Devkit, USB现在可以正常工作了。我能够使用SPI Flash程序闪烁没有任何问题。

现在我试图做我的项目的下一步-加载代码到I2C EEPROM使用SmartSnippets工具箱。

我完全按照AN-B-072的指令来安装I2C。

以下是SmartSnippets工具箱的日志输出:

[INFO EEPROM @21-01-21 16:05:27]固件文件c:以\ users \ collin \ desktop\ SDK_6.0.14.1114\DA145xx_SDK\6.0.14.1114\config\toolbox_resources/DA1453x/common/flash_program .bin被选择下载。[INFO EEPROM @21-01-21 16:05:27] Connection to COM6 port has successfully opened。[INFO EEPROM @21-01-21 16:05:27]已启动下载程序…[ACTION EEPROM @21-01-21 16:05:28]请按单板上的硬件复位按钮启动下载过程。[ERROR EEPROM @21-01-21 16:05:35]超时:超过8000毫秒未检测到复位信号。[INFO EEPROM @21-01-21 16:05:35]请重试。如果问题仍然存在,请参考用户手册AN-B-072 (//www.wsdof.com/an-072-booting-from-serial-interface)并检查跳线设置。从2线UART (P0_0和P0_1)引导见图10。从1线UART P0_5引导,见图6。[INFO Booter @21-01-21 16:05:35] Successfully disconnected from port COM6。 [ERROR EEPROM @21-01-21 16:05:35] Failed downloading firmware file to the board.

当提示时,我按下按钮“SW1/RESET”,但什么也没有发生,几秒钟后它超时,如日志中所示。

为了清楚起见,我附上了一些我安装的图片和一个电路图。

附件:
PM_Dialog
离线
最后看到:2天14小时前
工作人员
加入:2018-02-08 11:03
嗨cmarcus

嗨cmarcus

SST默认不支持任何flash功能。当通过工具按下“连接”按钮时,一个小型固件下载到DA14531: flash_programmer_531.bin,如果是UART,下载到DA14531: flash_programmer_531.bin,如果是JTAG,下载到DA14531: flash_programmer_531.bin。

两个二进制文件都是由SDK的6.0.14.1114\utilities\flash_programmer项目生成的。

  1. 打开这个项目,导航到user_外围_setup.h,打开“配置向导”。从下拉菜单中选择ST M24M01。然后为DA14531_uart和DA14531_jtag构建项目。
  2. 将生成的二进制文件Out_uart_531\flash_programmer_531.bin和Out_jtag_531\jtag_programmer_531复制到SST安装文件夹下的以下路径:

. . \ SmartSnippetsToolbox \ SmartSnippetsToolbox5.0.14 \ common_resources \ SupportPackages \ DA1453x \ toolbox_resources \常见

  1. 在Pro-DK中,只需使用跨接电缆将SDA和SCL连接到P2_3和P2_4(不使用P0_3/P0_4)。
  2. 打开SST工具箱:

  1. 在JTAG模式的情况下(图11中UM-B-083 SmartSnippets工具箱用户手册(HTML)),不需要复位,所以请按照文件连接和刻录EEPROM。
  2. 在UART模式下(图9或10中UM-B-083 SmartSnippets工具箱用户手册(HTML))你应该有重置功能。要启用它,请使用n-b-072应用程序注释中的紫色和黄色连接,如图21所示。然后,在Board setup (SST用户手册图20)中,确认P0_0, P0_1, 57600Bd被选中。

在这两种情况下,SST Board设置中的SCL和SDA都应该配置在P0_2和P0_3中。

请把结果告诉我们。

谢谢,PM_Dialog

cmarcus
离线
最后看到:两个月两个星期前
加入:2020-12-14十六16
谢谢你提供的详细信息

感谢您的详细指导,不胜感激!我觉得我们快要成功了。这是我现在的状态:

我已经按照您的指示,我现在可以按“连接”,并成功加载固件。下面是它的日志:

[INFO EEPROM @21-01-23 14:36:24]固件文件c:以\ users \colin\ desktop\ SDK_6.0.14.1114\DA145xx_SDK\6.0.14.1114\config\toolbox_resources/DA1453x/common/flash_program .bin被选择下载。[INFO EEPROM @21-01-23 14:36:24] Connection to COM6 port has successfully opened。[INFO EEPROM @21-01-23 14:36:24] Started download procedure…[ACTION EEPROM @21-01-23 14:36:25]请按单板上的硬件复位按钮启动下载过程。[INFO EEPROM @21-01-23 14:36:25] Reset detected [INFO Booter @21-01-23 14:36:27] Successfully disconnected from port COM6.输出说明[INFO EEPROM @21-01-23 14:36:27] Connection to COM6 port has successfully opened。[INFO Booter @21-01-23 14:36:27] Successfully disconnected from port COM6。[INFO EEPROM @21-01-23 14:36:27]成功配置EEPROM端口和引脚。[INFO EEPROM @21-01-23 14:36:27]成功下载固件到单板。

接下来,我尝试“刻录和验证”。bin文件为Blinky的例子:

以c:\用户\colin\ appdata \本地\ temp\ input1.bin替换为c:\用户\colin\ appdata \本地\ temp\ input1.bin。从文件C:\Users\colin\AppData\Local\Temp\ input1.bin中读取3744字节。[INFO EEPROM @21-01-23 14:38:17]开始烧录地址0x00的3744字节的数据。[INFO EEPROM @21-01-23 14:38:17] Connection to COM6 port has successfully opened。[ERROR EEPROM @21-01-23 14:38:24] Received ERROR message while checking burning was successful: 00000001。[INFO Booter @21-01-23 14:38:24] Successfully disconnected from port COM6.输出说明[ERROR EEPROM @21-01-23 14:38:24] Failed write 3744 bytes at offset 0x00 [ERROR EEPROM @21-01-23 14:38:24]烧内存失败。

我还尝试使用“read 32KB”来读取内存:

[INFO EEPROM @21-01-23 14:39:19]开始从内存中读取32768字节。[INFO EEPROM @21-01-23 14:39:20] Connection to COM6 port has successfully opened。[ERROR EEPROM @21-01-23 14:39:26] Received ERROR message while reading from the board: 00000001. [ERROR EEPROM @21-01-23 14:39:26]从单板读取时收到错误信息:00000001。[INFO Booter @21-01-23 14:39:26] Successfully disconnected from port COM6.输出说明[ERROR EEPROM @21-01-23 14:39:26] ERROR: Failed reading 16384 bytes from offset 0x00错误描述

在阅读您的说明时,我假设这是一个拼写错误“在这两种情况下,SST板设置中的SCL和SDA应该配置在P0_2和P0_3。”

我主要尝试使用SCL=P0_4和SDA=P0_3。当我尝试它与P0_2和P0_3我得到以下错误,我认为这意味着一个不正确的布线:

[INFO EEPROM @21-01-23 14:55:14]开始从内存中读取32768字节。[INFO EEPROM @21-01-23 14:55:14] Connection to COM6 port has successfully opened。[ERROR EEPROM @21-01-23 14:55:24] Timeout while waiting to receive the most significant byte of packet length (10000 msecs)超时等待收到最重要的数据包长度(10000 msecs)[ERROR EEPROM @21-01-23 14:55:24] ERROR: Failed reading 16384 bytes from offset 0x00错误描述

那么00000001是什么意思呢?

我再次附上了我当前设置的图片。

附件:
cmarcus
离线
最后看到:两个月两个星期前
加入:2020-12-14十六16
我注意到一个可疑的

我注意到一个可疑的地方…有时当我进行“连接”时,我不需要按“SW1/RESET”按钮。它马上就说"侦测到重置"我想知道这是不是正常的行为?

我还试着交换EEPROM主板上的SDA/SCL连接,以防我把它们弄反了。我得到了完全相同的错误"00000001"所以我猜这个错误是指一般的I2C故障?

我是否需要在I2C总线上提供上拉电阻,就像在面包板上一样?

cmarcus
离线
最后看到:两个月两个星期前
加入:2020-12-14十六16
是的!我终于把它修好了

是的!我终于让它工作了!

结果是I做了需要在SDA/SCL上提供外部上拉。根据数据表,DA14531有内部25k下拉,但这些不够强。我自己做了3。9公里引体向上,现在一切正常。

我附上了I2C总线用示波器的前/后图片。

我还有最后一个问题。在做了“刻录和验证”之后,我不得不拔下+插入USB以使DA14531引导加载程序运行并从EEPROM加载程序。我不想总是插着USB接口。

是否有一种方法重置软件中的DA14531,以便引导加载程序将运行?而不去碰董事会?

在Burn&Verify之后,我试着按SW1/RESET按钮,但它什么也没做(没有导致引导加载程序运行)。

附件:
PM_Dialog
离线
最后看到:2天14小时前
工作人员
加入:2018-02-08 11:03
嗨cmarcus,

嗨cmarcus,

你应该能够通过按下SW1/ reset按钮来重置Pro-Dk。如果这没有复位芯片,请检查固件中HW复位功能是否被禁用- GPIO_Disable_HW_Reset()。如果是,请注释掉。

谢谢,PM_Dialog