你好,
我正在使用da14580,我正在尝试发送大量数据(约12k字节)。MCU通过UART将样本发送到115200BAUD的BLE。事情是,在一段时间后,BLE停止传输,不会发送所有内容。
如果我把循环放在从MCU到BLE的每个传输之间等待一点点,但它太慢了。
所以我想知道我可以使用的最大讨厌是什么,因为没有for循环,我可以使用持续的数据?
或者我必须在DA14580代码中实施其他东西,以使其正常工作吗?
提前致谢
设备:
你好,
我正在使用da14580,我正在尝试发送大量数据(约12k字节)。MCU通过UART将样本发送到115200BAUD的BLE。事情是,在一段时间后,BLE停止传输,不会发送所有内容。
如果我把循环放在从MCU到BLE的每个传输之间等待一点点,但它太慢了。
所以我想知道我可以使用的最大讨厌是什么,因为没有for循环,我可以使用持续的数据?
或者我必须在DA14580代码中实施其他东西,以使其正常工作吗?
提前致谢
嗨avouail,
当580睡觉时,所有外围设备(UART,I2C等)关闭,580睡眠并在内核队列中有消息的条件下醒来,如果您使用的设备唤醒时使用UART而且设备决定它必须睡觉,即您使用的是UART不会阻止它睡眠。因此,您可以通过使用ARCH_DISABLE_SLEEP()或从APP_ON_BLE_POWERED或APP_ON_SYSTEM_POWER进行返回KEEP_POWER以防止580来动态禁用睡眠状态。也意识到,当您使用的UART睡觉并醒来时,您需要XTAL16才能稳定,这意味着在每个唤醒中,您必须等到您的水晶稳定。最后有DSP参考应用程序在BLE上模拟串行端口,可以检查DSP的应用笔记中实现的数据传输,您将能够在参考设计部分找到源代码和应用笔记门户网站。
谢谢mt_dialog.