你好,
我在做一个基于14580的DSPS项目的项目,我对默认的DSPS项目做了如下修改:
1.# undef CFG_MEM_MAP_EXT_SLEEP
2.修改app_default_sleep_mode的值为ARCH_SLEEP_OFF
3.修改“GPIO_UART1_RX_PIN”为“GPIO_PIN_2”
4.使用CFG_UART_SW_FLOW_CTRL代替CFG_UART_HW_FLOW_CTRL
在应用方面,我发送数据和接收数据* * 5 cb8和* * 5 cba特点,和我观察到* * 5 cb9特征得到通知流的状态,但它只是通知我一次,值为1,这意味着我可以从应用程序发送数据到设备,对吗?
我遇到的问题是:之间的透传祝福和UART工作正常,但运行一段时间后,UART端数据送去祝福,透传似乎停止,但是我没有看到任何异常抛出,和BLE信号仍然可以发现在我的应用程序,所以我认为固件不挂,在有大量数据从UART发送到BLE后,只是传递不工作
谢谢
设备:
嗨azol.yang,
抱歉,你的描述让我有点困惑。你能解释一下你的问题吗?
>>通过似乎是停止,但我没有看到任何抛出异常
你的意思是设备与移动应用程序断开了连接,但它在做广告吗?您正在使用的移动应用程序是什么?它是我们的DSPS移动应用程序,我们的你正在使用任何其他BLE通用应用程序?
>>>所以我认为固件没有挂起,只是在有很多数据从UART发送到BLE后,直通不工作
你能在调试模式下运行吗?
在你最初的帖子中,我看到你在使用SW流量控制。你能试试HW流量控制(RTS/CTS)吗?
谢谢,PM_Dialog
嗨PM_Dialog,
谢谢你的回复!
>>你的意思是设备与移动应用程序断开了连接,但它在做广告吗?您正在使用的移动应用程序是什么?它是我们的DSPS移动应用程序,我们的你正在使用任何其他BLE通用应用程序?
不,BLE工作得很好,在这个问题发生后,我可以用LightBlue连接或断开它。但是没有从UART接收数据,我的意思是BLE端只是等待,没有传入数据。
>>可以在调试模式下运行吗?
你能告诉我如何运行“I tin”调试模式吗?
在你最初的帖子中,我看到你在使用SW流量控制。你能试试HW流量控制吗
我不能使用HW Flow Control,因为UART端只有TX和RX,另外,在移动应用端有什么需要做的吗?我的iOS app已经设置为启用FLOW特性的通知,当FLOW char的值为1时将数据发送到UART端
我试图启用UART2调试这个问题:
1.CFG_PRINTF在“da1458x_config_basic.h”
2.将P1_2(TX), P1_3)(RX)连接到USB-TTL适配器,适配器连接到我的MAC
3.重建DSPS项目,通过SPI将其flash到devkit(basic)中
4.在我的iPhone上使用LightBlue来连接BLE
结果:
串行USB-TTL工具打开串口,但没有显示LightBlue连接DA14580时,我期望它会显示一个字符串:“设备连接”,因为“arch_printf(“设备连接\ r \ n”);“在user_on_connection(…),请帮助,是我错过了什么?
谢谢!
嗨azol.yang,
正如我输入错误-我想运行它在调试模式,但因为它运行正确,不需要在调试模式运行它。
>>>我不能使用HW流量控制,因为UART侧只有TX和RX。
你用串行终端从你的电脑发送数据吗?如果是,能否共享配置?另外,你在基本DK中使用的跳线配置是什么?你能分享一张照片吗?
谢谢,PM_Dialog