嗨,伙计们,我一直有无尽的麻烦试图使用Pro devkit的DA14531。这里有一个连接到这个设备的数字密钥:
https://www.digikey.com/short/z1pc4f
基本上,USB连接似乎非常不稳定。LED D4始终在PCB上闪烁,我可以听到USB连接和断开不断连接。
在几个场合,电路板已连接,但随后它将突然断开分钟后,没有可辨别的原因(我甚至不必靠近它)。
我怀疑有些东西没有正确地焊接在板子上,或者也许是板子电源有问题。USB 5V电源是稳定的,但其他电源似乎很粗略,特别是DA14531 buck电源,它上下跳动大约100-200mV。
这个开发板的文档非常混乱,这并没有帮助——事实上,我发现许多图表都是错误的。此外,对于相同的任务,不同的文档显示出不同的、相互矛盾的联系。这是我这么长时间不确定PCB是否有缺陷的主要原因。
有一次,USB工作了一段时间,我成功地运行了Blinky代码示例。当然,这是在发现单线UART的教程图不正确之后,我必须阅读完整的原理图并自己找出正确的线路。
基于这种微小的可能性准确的有文件,你能给我指一下吗?
显然我会处理Digikey,获得一个新鲜和希望的运营Devkit。
设备:
嗨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
我确实听从了那个向导。
USB稳定性是主要问题。每1-2秒,电路板上的D4 LED瞬间闪烁,我听到了我的电脑上的USB连接/断开声音。
不管我做什么(即不管主板设置和不管DA14531模块被插/拔插),USB只是拒绝正常启动。我是否打开软件并不重要。偶尔,USB会无缘无故地连接。例如,我离开我的电脑5分钟,在某个时刻它决定连接。几秒钟后,它又断开了连接,我什么也没做。
我注意到一些可疑的东西,比如如果我在附近的空气中挥舞我的手,USB就会断开。对我来说,这表明一个焊点故障(即一个浮动输入,从我的身体检测电场)。但是目测没有发现任何东西。
嗨cmarcus,
鉴于DA14531与Blinky示例闪烁,预计D5 LED呈不断闪烁,因为这是该外围示例的功能。这并不意味着USB连接不稳定。根据6.0.14.1114 \ projects \ target_apps \ peripheral_examples \ blinky sdk示例,应用程序正在切换p0_9。该引脚I与D5 LED连接在Pro-DK上。请尝试擦除SPI闪光灯,然后您将看到LED停止闪烁。
在那之后,我建议flash任何SDK BLE示例6.0.14.1114\projects\target_apps\ble_examples。
谢谢,PM_Dialog
LED闪烁是D4 LED,根据您自己的原理图是USB指标。
嗨cmarcus,
抱歉造成混淆-可能我读错了,这就是为什么我张贴了LED D5。让我查一下,稍后回复你。
谢谢,PM_Dialog
你好再次,
所以我从Digikey得到了一个新的替换Devkit, USB现在可以正常工作了。我能够使用SPI Flash程序闪烁没有任何问题。
现在我试图做我的项目的下一步-加载代码到I2C EEPROM使用SmartSnippets工具箱。
我完全按照AN-B-072的指令来安装I2C。
以下是SmartSnippets工具箱的日志输出:
当提示时,我按下按钮“SW1/RESET”,但什么也没有发生,几秒钟后它超时,如日志中所示。
为了清楚起见,我附上了一些我的设置和电路图。
嗨cmarcus
SST默认情况下不支持任何闪存功能。当通过该工具按下“连接”按钮时,将小固件下载到DA14531:Flash_Programmer_531.bin(如果是JTAG)的情况下,请将其下载到DA14531:Flash_Programmer_531.bin .bin。
这两个二进制文件都是由SDK的6.0.14.1114 \ flash_programmer项目。
.. \ smartsnippetstoolbox \ smartsnippetstoolbox5.0.14 \ common_resources \ supportpackages \ da1453x \ toolbox_resources \ common
在这两种情况下,SST Board设置中的SCL和SDA都应该配置在P0_2和P0_3中。
请把结果告诉我们。
谢谢,PM_Dialog
感谢您的详细说明,非常感谢!我觉得我们很接近做这项工作。这是我目前的状态:
我已经按照您的指示,我现在可以按“连接”,并成功加载固件。下面是它的日志:
接下来,我尝试“刻录和验证”。bin文件为Blinky的例子:
我还尝试使用“read 32KB”来读取内存:
在阅读您的说明时,我假设这是一个拼写错误“在这两种情况下,SST板设置中的SCL和SDA应该配置在P0_2和P0_3。”
我主要尝试使用scl = p0_4和SDA = P0_3进行。当我用p0_2和p0_3尝试时,我得到了以下错误,我假设意味着不正确的接线:
那么00000001是什么意思呢?
我再次附上了我当前设置的图片。
我注意到一个可疑的地方…有时当我进行“连接”时,我不需要按“SW1/RESET”按钮。它马上就说"侦测到重置"我想知道这是不是正常的行为?
我还试着交换EEPROM主板上的SDA/SCL连接,以防我把它们弄反了。我得到了完全相同的错误"00000001"所以我猜这个错误是指一般的I2C故障?
是否需要在I2C总线上提供上拉电阻,如面包板?
是的!我终于让它工作了!
结果是I做了需要在SDA/SCL上提供外部上拉。根据数据表,DA14531有内部25k下拉,但这些不够强。我自己做了3。9公里引体向上,现在一切正常。
我附上了I2C总线用示波器的前/后图片。
我还有最后一个问题。在做了“刻录和验证”之后,我不得不拔下+插入USB以使DA14531引导加载程序运行并从EEPROM加载程序。我不想总是插着USB接口。
有没有方法可以在软件中重置DA14531,以便引导加载程序运行?没有物理搞砸了董事会?
在Burn&Verify之后,我试着按SW1/RESET按钮,但它什么也没做(没有导致引导加载程序运行)。
嗨cmarcus,
您应该通过按SW1 / RESET按钮来重置PRO-DK。如果这不会重置芯片,请检查固件 - GPIO_DISABLE_HW_RESET()中是否禁用了HW复位功能。如果是,请发表评论。
谢谢,PM_Dialog