嗨,伙计们,我一直有无尽的麻烦试图使用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。
设备:
嗨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。这个引脚我连接到Pro-DK上的D5 LED。请尝试抹去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默认不支持任何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项目生成的。
. . \ SmartSnippetsToolbox \ SmartSnippetsToolbox5.0.14 \ common_resources \ SupportPackages \ DA1453x \ toolbox_resources \常见
在这两种情况下,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。如果这没有复位芯片,请检查固件中HW复位功能是否被禁用- GPIO_Disable_HW_Reset()。如果是,请注释掉。
谢谢,PM_Dialog