你好,
我用的是PAN1740 USB狗狗板。我已经将sps_device代码写入PAN1740。
(1)我可以在IOS DSPS app中看到设备序列号,但是在android app中看不到设备序列号。android是否没有这个设施?
(2)在使用接线板的时候,可以从串口发送数据到app。然而,当我使用我的自定义板时,我不能发送数据。我有调试器从TI和我已经连接PAN1740在SWD接口(SWCLK和SWDIO)引脚。可能是什么原因呢?
(3)我有来自我的经理的消息,“我看到这个模块没有命令,而是实现了一些东西。”然而,如果你改变了模块的flash,堆栈认证过程如何保持?还有电台的认证呢?”
在这里,我只需刻录系统RAM。我们是否需要进行上述认证,以刻录系统RAM或SPI Flash或OTP?
谢谢你!
设备:
嗨,甘地,
谢谢,PM_Dialog
嗨PM_Dialog,
1.使用iOS DSP移动应用时,是否可以连接到PAN ?
是的。我可以连接设备。我也可以通过这个应用程序发送一些数据。比如一些字母数字。我可以在串行终端上看到它们。
DSPS移动应用程序适用于Android设备,所以你不能看到你的设备有点奇怪
不。我也能看到Android设备。
另外,你说的“序列号”是什么意思?
我的意思是设备BLE的序列号。在iOS应用程序中,我可以看到类似A92B3191-3A43-F4ED-ADFC-67等的东西。我认为这是BLE设备的序列号。此信息我在Android中没有看到。如果这是别的,是否有任何方法可以看到Android应用程序中设备的序列号。?。
2.你使用的是iOS还是Android的DSPS移动应用程序?在你的定制板上,我猜你用的是PAN,是吗?
我有aps ios和Android。在iOS中,如果我在应用程序中输入100个字母,我可以在串行终端中看到最多50个。在Android中,它更少。
是的,我在我的定制板中使用PAN。
请问在DSPS设备的源代码中,您是否使用了扩展睡眠模式?
是的,它处于延长睡眠模式。
const static sleep_state_t app_default_sleep_mode = ARCH_EXT_SLEEP_ON;
3.如果您的问题对BLE堆栈进行了问题。否则,请澄清。
过段时间我会澄清的。我应该从我的经理那里得到澄清。谢谢你!
嗨,甘地,
谢谢,PM_Dialog。
嗨PM_Dialog,
1.这里我附上截图。我可以看到设备名称和一些其他信息(下标),我不理解。它显示了DIALOG-SPS的名称。我的要求是显示一些数字,比如CL820-xxxx,以便我们识别产品。以前我们有一些序列号为CL820-xxxx的设备。所以这个项目将是他们的下一个版本。我们很容易理解。很抱歉我沟通错误。我还以为要显示BLE的序列号。 But our manager intension is to display our product number instead of DIALOG-SPS.
2.我使用的是115200。我也试过其他波特率。使用PAN1740 USB加密狗只显示部分数据。
当我使用我的定制板时,没有数据传输。在代码中,我将扩展sleep改为sleep off。仍然没有改变。
我没有使用任何UART流控制。我刚看过那份文件。我将使用UART流控制。
如果我使用UART软件流控制,我可以有代码片段吗?
如果我使用UART硬件流控制,我应该只连接硬件如Rx,Tx,CTS和RTS或我应该做任何其他事情?
3.今天我试着把PC和我的定制板配对。我可以在PC上看到设备(DIALOG-SPS)。当我尝试配对/连接它们时,它说连接一段时间,然后再尝试连接。我已经附上了图片。
我该怎么做?UART流控制也是解决这个问题的方法。谢谢你!
嗨,甘地,
#定义CFG_UART_HW_FLOW_CTRL
# undef CFG_UART_SW_FLOW_CTRL
谢谢,PM_Dialog
嗨PM_Dialog,
1.谢谢你!
2.因为你使用扩展睡眠模式,你需要硬件流控制和CTS/RTS/TX/RX引脚应该连接。
如果我使用ARCH_SLEEP_OFF。然后我还应该使用硬件/软件流控制。
我对界面/连接有一些疑问。
例如>
我想实现软件浮动控制。
我已经将我的DA14850设备连接到MSP432 EXP Breakout板。MSP分接板由两部分组成,一是调试器部分,二是单片机部分。我已经将DA14850的SWDIO,SWDCLK引脚连接到Debugger的SWDIO,SWDCLK引脚,以及DA14850的RXD a,TXD引脚连接到Debugger部分的RXD,TXD引脚。
当我尝试闪烁sps_device代码时,它说rdi - dap错误。DA14850引脚的RXD和TXD引脚如何连接到MCU?或调试器部分?。
如果我想要硬件流控制:
我可以像下面这样连接引脚吗?
#定义GPIO_UART1_TX_PORT GPIO_PORT_0
#定义GPIO_UART1_TX_PIN GPIO_PIN_4
#定义GPIO_UART1_RX_PORT GPIO_PORT_0
#定义GPIO_UART1_RX_PIN GPIO_PIN_5
#定义GPIO_UART1_RTS_PORT GPIO_PORT_0
#定义GPIO_UART1_RTS_PIN GPIO_PIN_3
#定义GPIO_UART1_CTS_PORT GPIO_PORT_0
#define gpio_uart1_cts_pin gpio_pin_2
3.当我试图在调试模式下运行设备时,它正在尝试恢复调试连接。也写在那里,设备可能进入深度睡眠模式,应用程序不能走出它。此时设备是ARCH_EXT_SLEEP_ON。
当我把它改为ARCH_DEEP_SLEEP_ON时。我甚至没有在蓝牙列表中看到设备。
当我使用ARCH_SLEEP_OFF时,我可以看到类似ARCH_EXT_SLEEP_ON的设备。在这两种情况下,我都无法对设备进行配对。请帮我解决这个问题。
流量控制也是如此的原因。谢谢你!
嗨,甘地,
谢谢,PM_Dialog
嗨PM_Dialog,
这里我不用MCU。我正在使用开发板的调试器部分。
1.我只是想把BLE和我的电脑配对。我没有使用睡眠模式。
我改变了路线
const static sleep_state_t app_default_sleep_mode = ARCH_SLEEP_OFF;
我也没有使用UART。我刚刚将PAN1740的SWD引脚连接到调试器的SWD引脚。在keil中启动和停止调试后,我尝试在PC上连接BLE。它正在尝试连接,一段时间后,它说尝试连接你的设备。
有什么问题吗?为什么不是配对。设备未处于休眠模式。
2.另一方面,我尝试了软件流控制,在调试器部分,我有SWD和RXD,TXD的插脚。我已经将PAN1740的RXD和TXD引脚分别连接到调试器部分的TXD和RXD引脚。
那么代码就不会运行。keil显示rdi - dap错误。
我无法对设备进行配对。如果我这样做,那么我将尝试进行通信(软件调试)。
你好,
软件流控制:
我已经关掉了睡眠模式
const static sleep_state_t app_default_sleep_mode = ARCH_SLEEP_OFF;
然后我改变了宏:
#define cfg_uart_sw_flow_ctrl.
# undef CFG_UART_HW_FLOW_CTRL
之后我将BLE的引脚RXD连接到调试器的TXD,将BLE的TXD连接到调试器的RXD。
接下来,我试着让dubug断断续续。我去不了。
keil显示rdi - dap误差。如果我断开RXD和TXD引脚,那么我能够调试和关闭,并能够看到设备。
我无法对设备进行配对。我不能弄清楚为什么它显示错误RDDI-DAP当我连接RXD和TXD。
嗨,甘地,
你看过DSPS用户手册了吗?首先,您需要将PAN的UART引脚连接到FTDI的引脚,以便在PAN和PC之间建立连接。之后,您应该决定将使用哪种流控制。请您看一下DSPS用户手册。然后,将固件下载到Sys-RAM中,并热连接调试器,并尝试连接到DSPS移动应用程序。说实话,我不完全理解你做了什么,你使用了哪些联系。我强烈建议您阅读DSPS用户手册。
谢谢,PM_Dialog
嗨PM_Dialog,
1.“我正在使用开发板的调试器部分。”:SWD用于调试目的。你也可以下载固件到系统内存中。你能解释一下你的意思吗?
是的。我正在通过社署下载固件到Sys-RAM。我的意思是说我只使用调试器部分是我不使用开发板的MCU部分(MSP-EXP432P401R)。这里我的疑问是,我应该使用MCU部分下载固件到BLE_或我可以只使用调试器部分下载固件?
我有答案了。我不需要使用开发板上的MCU。
“我只是想把ble搭配给我的电脑。”我需要澄清一下。你正在使用PC应用程序吗?
这里我没有使用任何PC应用程序。在PC上。如果我想通过蓝牙使用我的手机,首先我们需要通过输入一些密码配对设备。然后它们将配对并可用于文件或数据共享。这是我的问题。
在看了我们的论坛后,我也差不多得到了答案。我应该使用ble_app_security项目与PC配对。我已经做到了。在这里,我的设想是在我的PC机和BLE之间有一个串行通信。为此,我们首先需要对设备进行配对,然后我们应该进行串行通信。
3.“我也没有使用UART。我刚刚将PAN1740的SWD引脚连接到debugger的SWD引脚”:这是错误的,因为DSPS使用UART
这也是我的错误。我从我们的论坛上了解到,我应该使用ble_app_security项目,然后必须在项目中实现UART功能,在terterm串行终端上进行串行通信。在这里我问你这是对的吗?我们现在有没有可以进行串行通信的ble项目?
4.另一方面,我尝试了软件流控制,在调试器部分,我有SWD和RXD,TXD的插脚。我已经将PAN1740的RXD和TXD引脚分别连接到调试器部分的TXD和RXD引脚。”;这不是软件流控制!SW流量控制是HW流量控制的软件实现,而不是CTS/RTS,你将有XOF/XON。
使用UART的ble_app_security还需要硬件流控制的软件实现?我在user_peripheral.h文件中没有看到这些宏。还有一个疑问,你之前提到,对于软件流控制,我们只需要有RXD和TXD连接,设备不能处于n睡眠模式,我们还必须在user_peripheral.h文件中将宏从HW更改为SW。然后在硬件流量控制软件实现中自动实现通信。我说的对吗?。
5.“那么代码就不能运行了。keil显示rdi - dap错误。:能不能发个截图给我?
我仍然看到这个错误。当我只连接SWD引脚,我可以下载固件到Sys-Ram。另外,当我连接RXD和TXD引脚有串行通信,然后我看到这个RDDI DAP错误在keil。我也在其他一些论坛问过。一个人问我用电平移位器,如果MCU的逻辑电平和BLE还是不同的。这有意义吗?你认为BLE的逻辑水平是不同的吗?当我测量调试器RXD引脚的逻辑电平时(没有连接ble),我看到3.3V。
我被串行通信困住了。我也附上了截图。请找到它。谢谢你!
你好,
在这里,我已经将RX和TX引脚分别连接到P0.5和P0.4。
#定义GPIO_UART1_TX_PIN GPIO_PIN_4
#定义GPIO_UART1_RX_PORT GPIO_PORT_0
#定义GPIO_UART1_RX_PIN GPIO_PIN_5
嗨,甘地,
我有点困惑,所以你可以用你的问题创建新的论坛线程吗?您能否告诉我您目前正在使用哪个项目,这是您的问题?您还在是否正在研究DSP参考应用程序代码?
# elif HW_CONFIG_PRO_DK
#定义UART2_TX_GPIO_PORT GPIO_PORT_0
#定义UART2_TX_GPIO_PIN GPIO_PIN_4
#定义UART2_RX_GPIO_PORT GPIO_PORT_0
#定义UART2_RX_GPIO_PIN GPIO_PIN_5
谢谢,PM_Dialog
亲爱的PM_Dialog,
实际上,我以前在sps_device项目上工作。当我发现这个项目,我们只能与DSPS应用程序沟通,然后我切换到ble_app_security。我目前的任务是测试BLE与PC (terterm terminal)之间的串行通信。
我们可以在sps_device项目上测试串行通信吗?你说我应该实现流程控制来实现串行通信。你也说过对于ble_app_security项目我不需要流量控制。
因此我使用ble_app_security项目。你之前说的修改我都做了
就像
#在da1458x_config_basic.h中定义CFG_PRINTF
修改fw的uart端口,将UART_TX端口/pin配置为P04,将UART_RX端口/pin配置为P05(要确保修改的配置在HW_CONFIG_PRO_DK下,且该单板在HW_CONFIG定义中声明)。
调用arch_printf()函数来打印,例如当设备开始发布广告时。
包括arch_console.h文件。
但是我在串行终端上没有看到消息。我在keil上进行调试时出现了一个错误。错误是
***错误122,第17行:AGDI:内存读取失败(0x000000C6)
我也附上了截图。你能告诉我解决这个错误的方法吗?
我没有看到SPS_DEVICE项目的错误。如果我对SPS_DEVICE项目进行上述过程,我可以看到序列数据吗?谢谢你!
嗨,甘地,
尝试在一个新的推导路径文件夹中解压缩SDK,然后重新安装Keil工具和JLink。之后,尝试构建项目。你能正确地构建它们吗?请注意,我不能复制你的问题,所以请尝试这个,并让我知道。
c: \ myWorkshop \ DA1458x_SDK \ 5.0.4
同时,请尝试禁用代码中设置的所有断点。
谢谢,PM_Dialog