当前文档版本为 v0.3.0,您可以访问当前页面的 开发中 版本以获取最近可能的更新。

常见问题(FAQs)

Q1:PAN271x芯片烧录方式是什么?

我们推荐使用 Panchip 提供的量产烧录工具 PANLink 烧录 OTP 版本的芯片(详见 量产烧录 文档说明);

而 JLink 用于调试烧录预生产版本(SRAM 模拟 OTP)的芯片。

Q2:PAN271x 收发两端为什么不能正常通信?

RF 收发通信需要多个参数匹配才能正常通信,具体包括以下几点:

​ 1. 工作模式:保证收发两端处于相同的工作模式

​ 2. 通信速率:保证收发两端处于相同的通信速率

​ 3. 通信地址:保证收发两端通信地址长度和内容都相同

​ 4. 数据长度:普通模式时(固定包长)保证收发两端通信数据长度要相同

​ 5. CRC校验:CRC校验的开启/关闭两端要匹配

​ 6. 距离较远时,选择高功率,低速率方式通信

Q3:16M晶振与32M晶振使用的区别是什么?

  1. 16M、32M在硬件上使用对应的16M/32M晶振;

  2. 使用16M晶振时,修改Clock_Init函数,将DPLL设置为16M晶振模式;

  3. 使用16M晶振时,导入 prf_lib_16m.lib 的 RF 库;

具体可以查看 samples/proprietary_rf/02_clock_16m_trx 例程;

Q4:普通模式(NORMAL)与增强模式(ENHANCE)有什么区别?

  • NORMAL:常用于固定包长的简单通信。

  • ENHANCE:常见能力包括 ACK、自动重传、多 PIPE 等。

增强模式常用参数:

  • EnTxNoAck:是否需要 ACK(DISABLE 表示需要 ACK,ENABLE 表示不需要 ACK)

  • RxTimeoutUs:等待接收/ACK 的超时(单位 us)

  • AutoDelayUs / AutoMaxCnt:自动重传间隔与次数

Q5:增强模式下 Tx 端一直打印 rx timeout,怎么排查?

rx timeout 通常表示 Tx 侧等待 ACK(或等待接收)超时。建议按以下顺序排查:

  1. 两块板是否分别烧录了 Tx 与 RxTX_MODE 是否一 Tx 一 Rx)。

  2. Tx/Rx 配置是否完全一致Channel/DataRate/WorkMode/AddrWidth/TxAddr/RxAddr/TxLen/RxLen

  3. 若确实要使用 ACK:

    • Tx和Rx 侧 EnTxNoAck = DISABLE(需要 ACK),并设置合理的 RxTimeoutUs

    • Rx 侧需要在“接收完成回调”里尽量在第一时间准备 ACK payload(例程会在 rx_cb 中调用 PAN271_RF_SetTxData() 封装 ACK 数据)。

  4. 缩短距离、避开强干扰环境,必要时更换信道。

Q6:串口没有打印或出现乱码,怎么排查?

按例程默认配置,常见排查点:

  1. 串口参数是否为 115200, 8N1

  2. UART0 引脚复用是否正确:例程通常使用 P0.5=TXP0.6=RX(见 Sys_Init())。

  3. 底板跳线/杜邦线是否按要求短接(部分例程文档提到 J8/J9 对应引脚的短接)。

  4. PC 侧是否打开了正确的 COM 口(USB->UART 是否正常枚举)。

Q7:如何做单频载波发射用于射频测试?

驱动提供了载波相关接口:

  • PAN271_RF_StartCarrierWave(Channel):开始载波发射

  • PAN271_RF_StopCarrierWave():停止载波发射

一般流程是先完成 RF 初始化并设置信道/功率,再启动载波。注意在合规的测试环境下进行。