亲爱的支持,
我们最近从AvantWave DA14580模块转移到muRata DA14580模块(ZY型),其他一切都保持不变。DA14580上的P0_2/P0_3作为TX/RX,这意味着我们正在以115k2波特率通信。
引导协议对两个模块都完美地工作,之后两个模块都向我们的主机处理器发送以下消息:
13313年,63年,13日0
GAPM_DEVICE_READY_IND
13312年,63年,13日2
GAPM_CMP_EVT
28673年,63年,28岁,1
DISS_CREATE_DB_CFM
16388年,63年,16岁,1
PROXR_CREATE_DB_CFM
13312年,63年,13日2
GAPM_CMP_EVT
您看到的是消息id、目标任务id、源任务id、参数长度(全十进制);使用下一行上消息id的文本表示。我没有包含从主机发送到da14580的消息。到目前为止,一切顺利。
当我使用智能手机应用BLE扫描仪(Android),我可以看到设备与AvantWave模块和一个muRata模块。当我连接AvantWave板通过应用程序,我可以看到以下信息被打印:
14337、63、14、16
GAPC_CONNECTION_REQ_IND
13312年,63年,13日2
GAPM_CMP_EVT
14353、63、14日6
14353、63、14日6
我现在可以在App中看到所有公开的服务和浏览特征。现在,当我通过应用连接muRata板,应用改变状态从断开连接,但没有服务出现,屏幕保持空白。而且没有输出任何消息,主机甚至没有接收到一个字节(我检查了UART接收中断)。应用现在陷入了一个连续的连接-断开-连接等循环中。
不幸的是,我只有1个muRata板来测试,所以我还不能证实这是否是一种类型的问题。然而,我很想知道我所描述的是否能让论坛上的某个人想起我。
谢谢,
阿扬
顺便说一下,当我在muRata DA14580模块上加载完全嵌入的邻近报告者项目(所以所有内容包含在DA14580代码中,没有GTL over UART)时,我可以连接到模块,浏览所有服务和读写特征,没有任何问题。连接到它似乎也更快,但也许这是意料之中的,因为DA14580不需要等待主机的响应。
注意,代码本身仍然通过UART @ 115k2加载到DA14580中。
我刚在iPad上测试了LightBlue App;设备显示在概述上(所以广告是有效的),但当我选择设备以便连接时,我得到“连接…”' FE_PROXR',接着是'连接警报。询问外围设备超时'。在我点击解散后,应用程序也不再能够找到设备。
此外,我不使用RTS/CTS,我不能(主机硬件/软件限制)。我需要明确地禁用这在DA14580项目?尽管这看起来很奇怪,因为直到您尝试连接时,所有UART/GTL消息都被发送(如上所述)。
希望它可以帮助。
请确认,为了禁用DA14580代码中的RTS/CTS,您只需要将GPIO_reservations()和user_外围_setup.c中的set_pad_functions()中'#if !HW_CONFIG_USB_DONGLE'后面的两行注释掉就可以了。
//设置pio (uart1_rtsn_gpio_port, uart1_rtsn_gpio_pin, pid_uart1_rtsn);
//设置pio (uart1_cts, uart1_ctsn_gpio_port, uart1_ctsn_gpio_pin, pid_uart1_ctsn);
//GPIO_ConfigurePin(UART1_RTSN_GPIO_PORT, UART1_RTSN_GPIO_PIN, OUTPUT, PID_UART1_RTSN, false);
//GPIO_ConfigurePin(UART1_CTSN_GPIO_PORT, UART1_CTSN_GPIO_PIN, INPUT, PID_UART1_CTSN, false);
嗨abremen,
是的,如果你禁用这些线,你将禁用那些引脚的RTS/CTS配置。
由于MT_dialog
谢谢你的确认,关闭那些线路似乎奏效了。你可以结束这个话题了。
亲切的问候,
阿扬