This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] CC2564:CC2564BRVMR

Guru**** 652440 points
Other Parts Discussed in Thread: CC2564, CC2564C
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/1049583/cc2564-cc2564brvmr

器件型号:CC2564
当 MCU 尝试创建连接时、CC2564BRVMR 模块(BT)发出错误应答。
 
我尝试使用逻辑分析仪和示波器检测 BT 引脚逻辑、例如 TX/RX 引脚。
MCU 将正确的命令数据发送到 BT、但 BT 回答似乎是疯狂的数据。
 
此捕获仅显示 BT TX 引脚应答(0xFF)、我假设 BT 工作不正常。
 
 
您可能会问"您确定发送了正确的数据吗?"
我非常确定、因为我可以使用逻辑分析仪看到正确的数据、并且我还使用 BT TX_DBG 引脚来查看正确的配置
 
下面是 TI Logger 显示为吹扫表
 
164 ZKD1 (组装批次代码)
UART_HCI 参数:UartDIV=3、OS=23、SP=0、mag=10
温度感测:温度20、读取0x23、Vbe 0x299597d、斜率0x1f2f0
温度区= 6
LC_RF_INIT_Period_CALIBRATION 中
接收到同步事件 REG、模块 RF_CALIBRATION、msi 0
synch cmd 开始实例、模块 rf_calibration、msi:0
同步命令返回事件已启动、模块 RF_CALIBRATION
Orca 平台
进程类型:弱
芯片版本:6.
检测到的时钟= 26000000 Hz
参考时钟= 26000000 Hz
XTAL 唤醒模式 被禁用
REF 时钟对 PLL 有效
PLL 时钟输出正常
PLL 时钟输出= 40000000Hz
时钟工作模式:PLL 模式
ARM 时钟= 40000000Hz、慢时钟:外部
OCP 时钟= 80000 Hz
UART HCI 波特率= 115200
Gemini 型 Soft Gemini
LM_LC_GET_LOCAL 功能
LM_LC_SET_brcst_retran
LM_LC_self_test_run_init_tests
自检通过
I2C 不存在!
LM_LC_GET_LOCAL_BD_addr
软件版本- 7.0.16
停用计时器:初始化
LM_LC_RF_Period_calibration
校准已开始。 VECTOR = 0x1、0x0
PHY FW 版本3.27
随机0x8fca 0x2b78
随机0x1eb8 0x475d
随机0xe63a 0x2728
随机0xb09e 0x1e9c
随机0x6b41 0xa9e6
LM_LC_Generate_Rand
LM_LC_Generate_Rand
接收到同步事件完成、模块 RF_CALIBRATION、msi 0
LM_LC_Generate_Rand
LM_LC_Generate_Rand
传输检测:检测到 UART
第一个字节接收1
禁用飞行模式-启用 TX 校准
UART 活动协议:H4协议
HCIC_PROCESS_HCI_commands:HCI_RESET (组3操作码0x3)
LM_LC-Gemini_COEX_NOTIFY_SCAN_STATUS
HCI_Reset 完成
hcic_get_num_for_host_commands。 空闲总计= 3、报告给主机= 1
HCI 发送事件:HCI_COMMAND_COMPLEE_EVT
UART_HCI 参数:UartDIV=3、OS=23、SP=0、mag=10
温度感测:温度23、读取0x22、Vbe 0x2934cb1、斜率0x1f2f0
温度区= 6
LC_RF_INIT_Period_CALIBRATION 中
接收到同步事件 REG、模块 RF_CALIBRATION、msi 0
synch cmd 开始实例、模块 rf_calibration、msi:0
同步命令返回事件已启动、模块 RF_CALIBRATION
 
 
我不知道 流程类型:弱流程 类型和流程类型:标称流程类型之间有何区别。
但我们可以看到 BT 接受了该命令并给出了应答
HCI 发送事件:HCI_COMMAND_COMPLEE_EVT
 
BT 从 TX 引脚发送错误数据。
 
 
我的问题:
如何查看 BT 使用 TI Logger 或其他软件工具发送或接收的原始数据?
2.如何确认导致此问题的原因是什么? 这种 BT 非常奇怪。
 
我们有 ZT9Y、ZKD1和 ZKD2 BT 模块。(汇编批次代码)

ZT9Y 可以正常工作、但 ZKD1会出现此问题。

 
 
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    此处添加了 BT TX 逻辑捕捉缺失。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 TI 专家:

    我发现新:禁用 UART 硬件流会影响这一点。

    但我还有一个新问题:

    MCU 调用 BSC_Initialize()接口时的过程是什么? 您能否分享有关 BSC_Initialize 或 HCI 处理流程的更多信息?

    您知道、在禁用 UART 硬件流设置时、BT 可以查看来自 MCU 的正确数据(运算代码03)。 在这种情况下、我不清楚 BT 为何向 MCU 发送错误数据。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Carlos、

    我将在本周稍后的时间跟进。

    谢谢、
    Jacob

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Carlos:

    要回答上述问题:

    您可以通过探测 CC2564器件上的 TX_DBG 引脚来查看来自器件的固件/HCI 通信。 您确实需要一个 UART 转 USB 转换器来处理电压转换。 您可以 在此处阅读更多信息

    2. 要回答此问题、您能否共享您正在使用的 MCU 和受支持的蓝牙堆栈? 我想知道是否存在不一致。

    [引用 userid="503188" URL"~/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/1049583/cc2564-cc2564brvmr/3884286 #3884286]MCU 调用 BSC_Initialize()接口时的过程是什么? 您能否分享有关 BSC_Initialize 或 HCI 处理流程的更多信息?

    我无法分享所有这些信息、因为这是我们源代码中的一个函数。 简而言之、该函数会检查传入的 HCI 驱动程序信息是否有效。 接下来、它会检查蓝牙 BD 地址。 然后、它会初始化层和配置文件。

    如果您禁用流量控制、您是否说您从 MCU 接收到正确的数据?

    谢谢、
    Jacob  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    1.我觉得不能解决我的问题

    在本例中、我使用的是 ST (stm32f405rgt6)和 GD (gd32f450vkt6) MCU。

    BT 堆栈为蓝泰式、具有 BT 4.2软件版本和 BT 1.2硬件版本。

    我只想知道流程/流程、不需要您的源代码。

    3.我很确定 BT 从 MCU 接收正确的数据如果我禁用流控制、请参阅我在第一个提交问题中上传的表格

    ```μ A

    HCIC_PROCESS_HCI_commands:HCI_RESET (组3操作码0x3)
    LM_LC-Gemini_COEX_NOTIFY_SCAN_STATUS
    HCI_Reset 完成

    ```μ A

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Logger 无法显示 它接收到的原始数据类型。 但它显示它接受了带有 RESET 命令的 MCU 命令数据

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Carlos:

    记录器程序列出了来自 BT 控制器的固件和协议事务。 我认为您可以查看通过 RX 线接收的原始数据(看起来就像您在上面所做的那样)。   

    您的问题是否仍然存在: BT 控制器为什么以0xFF 进行响应? 如果是、我认为获取简单用例的日志将会有所帮助-使用我们的一 个 STM32演示应用程序运行"Inquiry"命令。 您能否从 SPPDemo 获取运行"查询"的日志?  

    当然、您使用 的是 CC256XSTBTBLESW 堆栈、对吧? 这是一个与 CC2564B 兼容的 BT 4.0堆栈。 对于4.2堆栈、您需要 CC2564C。  

    谢谢、
    Jacob

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    ```μ A


    /*蓝牙协议栈内核支持。 *
    #define BTPS_VERSION_MAJUSE_CORE_SUPPT支助4.

    /*蓝牙协议栈内核支持。 *
    #define BTPS_VERSION_MINAL_CORE_SUPPT0


    /*蓝牙协议栈主要版本号。 *
    #ifndef BTPS_VERSION_VERSION_NUMBER
    #define BTPS_VERSION_MOVING_NUMBER 2.
    #endif

    /*蓝牙协议栈次版本号。 *
    #ifndef BTPS_VERSION_MINOR VERSION_NUMBER
    #define BTPS_VERSION_MINOR VERSION_NUMBER 1.
    #endif


    /*客户主要版本号。 *
    #ifndef platform_main_version_number
    #define platform_main_version_number 1.
    #endif

    /*蓝牙协议栈次版本号。 *
    #ifndef platform_minal_version_number
    #define platform_minor version_number 1.
    #endif

    ```μ A

    啊、可能有些信息解释的不好、但我粘贴在这里。

    该代码在许多年前移植。 我最近才注意到这个问题。

    很难基于 GD MCU 测试原始代码。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Carlos:

    我将在下周跟进。

    谢谢、
    Jacob

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    BTW、我发现另一个 BT 模块硬件问题、同时请检查错误代码、我不知道如何跟踪此问题。

    UART 活动协议:H4协议
    HW_ERR、276、11

    TL-、H4协议、H4_ABORT_Receive ()- ERROR_code = 11

    1296 11/25/21 10:22:29.286  -551:13:53.528 0x00000028 0x00000028 <-- HCI_Hardware_Error_Event
    1297 11/25/21 10:22:29.287  -551:13:53.527 UART_HCI 参数:UartDIV=3、OS=23、SP=0、mag=10
    1298 11/25/21 10:22:29.287  -551:13:53.527 温度感测:温度34、读取0x22、Vbe 0x2934cb1、斜率0x1e0a7
    1299 11/25/21 10:22:29.287  -551:13:53.527 温度区= 7
    1300 11/25/21 10:22:29.287  -551:13:53.527 LC_RF_INIT_Period_CALIBRATION 中
    1301 11/25/21 10:22:29.287  -551:13:53.527 接收到同步事件 REG、模块 RF_CALIBRATION、msi 0
    1302. 11/25/21 10:22:29.287  -551:13:53.527 synch cmd 开始实例、模块 rf_calibration、msi:0
    1303 11/25/21 10:22:29.287  -551:13:53.527 同步命令返回事件已启动、模块 RF_CALIBRATION
    1304 11/25/21 10:22:29.287  -551:13:53.527 Orca 平台
    1305 11/25/21 10:22:29.287  -551:13:53.527 工艺类型:标称值
    1306. 11/25/21 10:22:29.287  -551:13:53.527 芯片版本:6.
    1307 11/25/21 10:22:29.287  -551:13:53.527 检测到的时钟= 26000000 Hz
    1308. 11/25/21 10:22:29.287  -551:13:53.527 参考时钟= 26000000 Hz
    1309. 11/25/21 10:22:29.287  -551:13:53.527 XTAL 唤醒模式 被禁用
    1310 11/25/21 10:22:29.287  -551:13:53.527 REF 时钟对 PLL 有效
    1311. 11/25/21 10:22:29.287  -551:13:53.527 PLL 时钟输出正常
    1312. 11/25/21 10:22:29.287  -551:13:53.527 PLL 时钟输出= 40000000Hz
    1313. 11/25/21 10:22:29.287  -551:13:53.527 时钟工作模式:PLL 模式
    1314. 11/25/21 10:22:29.287  -551:13:53.527 ARM 时钟= 40000000Hz、慢时钟:外部
    1315. 11/25/21 10:22:29.287  -551:13:53.527 OCP 时钟= 80000 Hz
    1316. 11/25/21 10:22:29.287  -551:13:53.527 UART HCI 波特率= 115200
    1317. 11/25/21 10:22:29.287  -551:13:53.527 Gemini 型 Soft Gemini
    1318. 11/25/21 10:22:29.287  -551:13:53.527 LM_LC_GET_LOCAL 功能
    1319. 11/25/21 10:22:29.287  -551:13:53.527 LM_LC_SET_brcst_retran
    1320 11/25/21 10:22:29.287  -551:13:53.527 LM_LC_self_test_run_init_tests
    1321. 11/25/21 10:22:29.287  -551:13:53.527 自检通过
    1322. 11/25/21 10:22:29.287  -551:13:53.527 I2C 不存在!
    1323. 11/25/21 10:22:29.287  -551:13:53.527 LM_LC_GET_LOCAL_BD_addr
    1324. 11/25/21 10:22:29.287  -551:13:53.527 软件版本- 7.0.16
    1325 11/25/21 10:22:29.287  -551:13:53.527 传输检测:ESPI 或 UART
    1326. 11/25/21 10:22:29.287  -551:13:53.527 停用计时器:初始化
    1327. 11/25/21 10:22:29.287  -551:13:53.527 传输检测:检测到 UART
    1328. 11/25/21 10:22:29.287  -551:13:53.527 第一个字节接收6
    1329. 11/25/21 10:22:29.287  -551:13:53.527 UART 活动协议:H4协议
    1330 11/25/21 10:22:29.287  -551:13:53.527 HW_ERR、276、11
    1331. 11/25/21 10:22:29.287  -551:13:53.527 TL-、H4协议、H4_ABORT_Receive ()- ERROR_code = 11
    1332. 11/25/21 10:22:29.287  -551:13:53.527 LM_LC_RF_Period_calibration
    1333) 11/25/21 10:22:29.287  -551:13:53.527 HCI 发送事件:HCI_hardware_error_EVT
    1334. 11/25/21 10:22:29.287  -551:13:53.527 校准已开始。 VECTOR = 0x1、0x0
    1335. 11/25/21 10:22:29.287  -551:13:53.527 PHY FW 版本3.27
    1336. 11/25/21 10:22:29.287  -551:13:53.527 随机0xeba3 0xa413
    1337. 11/25/21 10:22:29.287  -551:13:53.527 随机0x4c72 0xa6bb
    1338. 11/25/21 10:22:29.287  -551:13:53.527 随机0xc538 0xc5d7
    1339. 11/25/21 10:22:29.287  -551:13:53.527 随机0xeecb 0x7f4
    1340. 11/25/21 10:22:29.287  -551:13:53.527 随机0xf72c 0x24ba
    1341. 11/25/21 10:22:29.287  -551:13:53.527 LM_LC_Generate_Rand
    1342. 11/25/21 10:22:29.287  -551:13:53.527 LM_LC_Generate_Rand
    1343 11/25/21 10:22:29.287  -551:13:53.527 接收到同步事件完成、模块 RF_CALIBRATION、msi 0
    1344. 11/25/21 10:22:29.287  -551:13:53.527 LM_LC_Generate_Rand
    1345. 11/25/21 10:22:29.287  -551:13:53.527 LM_LC_Generate_Rand
    1346. 11/25/21 10:22:30.273  -551:13:52.541 LM_LC-Gemini_COEX_NOTIFY_SCAN_STATUS
    1347. 11/25/21 10:22:30.273  -551:13:52.541 HCI_Reset 完成
    1348. 11/25/21 10:22:31.659  -551:13:51.155 0x00000028 0x00000028 <-- HCI_Hardware_Error_Event
    1349. 11/25/21 10:22:31.660  - 551:13:51.154 UART_HCI 参数:UartDIV=3、OS=23、SP=0、mag=10
    1350 11/25/21 10:22:31.660  - 551:13:51.154 温度感测:温度34、读取0x22、Vbe 0x2934cb1、斜率0x1e0a7
    1351. 11/25/21 10:22:31.660  - 551:13:51.154 温度区= 7
    1352. 11/25/21 10:22:31.660  - 551:13:51.154 LC_RF_INIT_Period_CALIBRATION 中
    1353 11/25/21 10:22:31.660  - 551:13:51.154 接收到同步事件 REG、模块 RF_CALIBRATION、msi 0
    1354. 11/25/21 10:22:31.660  - 551:13:51.154 synch cmd 开始实例、模块 rf_calibration、msi:0
    1355. 11/25/21 10:22:31.660  - 551:13:51.154 同步命令返回事件已启动、模块 RF_CALIBRATION
    1356. 11/25/21 10:22:31.660  - 551:13:51.154 Orca 平台
    1357. 11/25/21 10:22:31.660  - 551:13:51.154 工艺类型:标称值
    1358. 11/25/21 10:22:31.660  - 551:13:51.154 芯片版本:6.
    1359. 11/25/21 10:22:31.660  - 551:13:51.154 检测到的时钟= 26000000 Hz
    1360. 11/25/21 10:22:31.660  - 551:13:51.154 参考时钟= 26000000 Hz
    1361. 11/25/21 10:22:31.660  - 551:13:51.154 XTAL 唤醒模式 被禁用
    1362. 11/25/21 10:22:31.660  - 551:13:51.154 REF 时钟对 PLL 有效
    1363 11/25/21 10:22:31.660  - 551:13:51.154 PLL 时钟输出正常
    1364 11/25/21 10:22:31.660  - 551:13:51.154 PLL 时钟输出= 40000000Hz
    1365 11/25/21 10:22:31.660  - 551:13:51.154 时钟工作模式:PLL 模式
    1366 11/25/21 10:22:31.660  - 551:13:51.154 ARM 时钟= 40000000Hz、慢时钟:外部
    1367 11/25/21 10:22:31.660  - 551:13:51.154 OCP 时钟= 80000 Hz
    1368 11/25/21 10:22:31.660  - 551:13:51.154 UART HCI 波特率= 115200
    1369 11/25/21 10:22:31.660  - 551:13:51.154 Gemini 型 Soft Gemini
    1370 11/25/21 10:22:31.660  - 551:13:51.154 LM_LC_GET_LOCAL 功能
    1371. 11/25/21 10:22:31.660  - 551:13:51.154 LM_LC_SET_brcst_retran
    1372 11/25/21 10:22:31.660  - 551:13:51.154 LM_LC_self_test_run_init_tests
    第1373号决议 11/25/21 10:22:31.660  - 551:13:51.154 自检通过
    1374. 11/25/21 10:22:31.660  - 551:13:51.154 I2C 不存在!
    1375 11/25/21 10:22:31.660  - 551:13:51.154 LM_LC_GET_LOCAL_BD_addr
    1376. 11/25/21 10:22:31.660  - 551:13:51.154 软件版本- 7.0.16
    1377 11/25/21 10:22:31.660  - 551:13:51.154 传输检测:检测到 UART
    1378 11/25/21 10:22:31.660  - 551:13:51.154 第一个字节接收到26
    1379 11/25/21 10:22:31.660  - 551:13:51.154 第一个字节接收6
    1380 11/25/21 10:22:31.660  - 551:13:51.154 UART 活动协议:H4协议
    1381. 11/25/21 10:22:31.660  - 551:13:51.154 HW_ERR、276、11
    1382 11/25/21 10:22:31.660  - 551:13:51.154 TL-、H4协议、H4_ABORT_Receive ()- ERROR_code = 11
    1383 11/25/21 10:22:31.660  - 551:13:51.154 停用计时器:初始化
    1384 11/25/21 10:22:31.660  - 551:13:51.154 LM_LC_RF_Period_calibration
    1385 11/25/21 10:22:31.660  - 551:13:51.154 HCI 发送事件:HCI_hardware_error_EVT
    1386 11/25/21 10:22:31.660  - 551:13:51.154 校准已开始。 VECTOR = 0x1、0x0
    1387 11/25/21 10:22:31.660  - 551:13:51.154 PHY FW 版本3.27
    1388 11/25/21 10:22:31.660  - 551:13:51.154 随机0xe1fc 0x4460
    1389 11/25/21 10:22:31.660  - 551:13:51.154 随机0xfb4c 0xacd
    1390 11/25/21 10:22:31.660  - 551:13:51.154 随机0x370 0x4332
    1391 11/25/21 10:22:31.660  - 551:13:51.154 随机0x8563 0x6813
    1392 11/25/21 10:22:31.660  - 551:13:51.154 随机0x4b19 0x897
    1393 11/25/21 10:22:31.660  - 551:13:51.154 LM_LC_Generate_Rand
    1394 11/25/21 10:22:31.660  - 551:13:51.154 LM_LC_Generate_Rand
    1395. 11/25/21 10:22:31.660  - 551:13:51.154 接收到同步事件完成、模块 RF_CALIBRATION、msi 0
    1396 11/25/21 10:22:31.660  - 551:13:51.154 LM_LC_Generate_Rand
    1397 11/25/21 10:22:31.660  - 551:13:51.154 LM_LC_Generate_Rand
    1398 11/25/21 10:22:32.648  -551:13:50.166 LM_LC-Gemini_COEX_NOTIFY_SCAN_STATUS
    1399 11/25/21 10:22:32.648  -551:13:50.166 HCI_Reset 完成
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Carlos:

    我将在本周跟进、因为我上周已不上班。

    谢谢、

    Jacob

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Carlos:

    您能否确认您  正在使用的 Bluetopia STM32协议栈? 它是与 CC2564B 兼容的 STM32协议栈。  

     TL-、H4协议、H4_ABORT_Receive ()- ERROR_code = 11、您会看到一个 HCI 组帧错误。 您是否已连接4线 UART (RX、TX、RTS、CTS)?

    谢谢、
    Jacob

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    实际上、我不知道如何确认、因为我的 blutopia 是一个二进制文件、不包括整个资源代码。 我只能检查 API 标头。

    我确信我在工厂连接了4根导线和相同的 PCBA。

    那么、我假设这个模块焊接问题或调制解调器意外损坏了吗?

    提醒此模块与我粘贴日志之前的模块不同。 我太懒了、不能将它们分为两个主题。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Carlos:

    新问题 是 CC2564BRVMR 模块还是完全不同的器件?  如上所述、您可以通过查看 BTPSVER.h 来检查 Bluetopia 版本。  

    您是否能够使用  CC2564B 兼容的 Bluetopia STM32协议栈中的 SPPDemo 示例对此器件进行编程?

    [引用 userid="503188" URL"~/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/1049583/cc2564-cc2564brvmr/3895036 #3895036"]Logger 无法显示 它收到的原始数据类型。 但它显示它接受了带有复位命令的 MCU 命令数据[/quot]

    如果我之前没有解决这个问题、您可以通过使用逻辑分析仪跟踪 UART RX 和 TX 引脚来查看控制器发送和接收的原始数据。

    谢谢、
    Jacob