常见问题(FAQs)¶
Q1:工程移位后,无法调用内置jflash烧录¶
KEIL下,工程配置部分选择jflash:

Q2:ADC功能在仿真板测试读数一直为0¶
异常原因,芯片adc需要做校准;
仿真板芯片为RAM版本芯片无法实现adc校准值存储功能,需要在adc校准函数里面手动赋一个初始值,v0.3.0之后的版本已经默认添加初始值。(OTP芯片无此问题,芯片出厂会进行校准,内部有校准值)

Q3:芯片看门狗+休眠功能下会出现异常¶
异常现象:芯片唤醒后直接喂狗后立即进入休眠,会出现看门狗无法正常唤醒的现象。 解决方法:喂狗操作后,添加至少66us延时(或者执行其它任务超过66us)后再进入休眠;喂狗需要一个过程,内部有握手动作,需要几个时钟周期才能完成,如果在未完成喂狗动作立即进入休眠,看门狗会一直处于喂狗状态从而引起唤醒异常。
Q4:RF参数切换后,功能容易出现异常¶
异常现象:在或者发过程中,直接切换射频参数或者切换模式,有可能出现收发不能正常通讯。 解决方法:修改射频参数前,先软复位射频(调用PAN271_RF_RFModuleReset函数实现),让射频停止当前动作,再修改射频参数,修改完后再进入对应收发状态。
Q5:休眠状态下漏电流大¶
异常现象:芯片进入休眠后,电流还有140ua左右。
解决方法:P00 P01两个IO在休眠前配置关闭上拉功能。(这两个端口默认是上拉输入)

Q6:休眠状态下漏电流大¶
异常现象:程序下载到仿真后,断电后没有功能。 由于仿真板是RAM芯片,芯片不支持掉电存储数据,芯片断电后程序丢失。
Q7:16M和32M晶振切换¶
1、更新RF LIB,16M和32M的rf lib不一致。 2、更新时钟初始化,16M时钟情况下需要使能16M XTH(默认是32M)
具体可以查看 samples/proprietary_rf/02_clock_16m_trx 例程;

Q8:滚码使用和读取¶
1、滚码读取:读取滚码地址需要和设置地址一致
2、滚码设置:需要用panlink进行滚码烧录。

Q9:机台接线方式¶
1、VCC和VIO短接(红色)
2、芯片接线(黑色):VDD \ 6V\A3\A4\GND 对应芯片 VDD\ P22 \ P01\ P00\GND
3、机台接线(黄色):VDD\C2\C3\C4\B5\GND
注:由于VDD只有一个接线端口,机台烧录需要从vdd进行1分2,1路给MCU供电,1路给机台接线使用。

Q10:PAN271x芯片烧录方式是什么?¶
我们推荐使用 Panchip 提供的量产烧录工具 PANLink 烧录 OTP 版本的芯片(详见 量产烧录 文档说明);
而 JLink 用于调试烧录预生产版本(SRAM 模拟 OTP)的芯片。
Q11:PAN271x 收发两端为什么不能正常通信?¶
RF 收发通信需要多个参数匹配才能正常通信,具体包括以下几点:
1. 工作模式:保证收发两端处于相同的工作模式
2. 通信速率:保证收发两端处于相同的通信速率
3. 通信地址:保证收发两端通信地址长度和内容都相同
4. 数据长度:普通模式时(固定包长)保证收发两端通信数据长度要相同
5. CRC校验:CRC校验的开启/关闭两端要匹配
6. 距离较远时,选择高功率,低速率方式通信
Q12:普通模式(NORMAL)与增强模式(ENHANCE)有什么区别?¶
NORMAL:常用于固定包长的简单通信。
ENHANCE:常见能力包括 ACK、自动重传、多 PIPE 等。
增强模式常用参数:
EnTxNoAck:是否需要 ACK(DISABLE表示需要 ACK,ENABLE表示不需要 ACK)RxTimeoutUs:等待接收/ACK 的超时(单位 us)AutoDelayUs/AutoMaxCnt:自动重传间隔与次数
Q13:增强模式下 Tx 端一直打印 rx timeout,怎么排查?¶
rx timeout 通常表示 Tx 侧等待 ACK(或等待接收)超时。建议按以下顺序排查:
两块板是否分别烧录了 Tx 与 Rx(
TX_MODE是否一 Tx 一 Rx)。Tx/Rx 配置是否完全一致:
Channel/DataRate/WorkMode/AddrWidth/TxAddr/RxAddr/TxLen/RxLen。若确实要使用 ACK:
Tx和Rx 侧
EnTxNoAck = DISABLE(需要 ACK),并设置合理的RxTimeoutUs。Rx 侧需要在“接收完成回调”里尽量在第一时间准备 ACK payload(例程会在
rx_cb中调用PAN271_RF_SetTxData()封装 ACK 数据)。
缩短距离、避开强干扰环境,必要时更换信道。
Q14:串口没有打印或出现乱码,怎么排查?¶
按例程默认配置,常见排查点:
串口参数是否为
115200, 8N1。UART0 引脚复用是否正确:例程通常使用
P0.5=TX、P0.6=RX(见Sys_Init())。底板跳线/杜邦线是否按要求短接(部分例程文档提到
J8/J9对应引脚的短接)。PC 侧是否打开了正确的 COM 口(USB->UART 是否正常枚举)。
Q15:如何做单频载波发射用于射频测试?¶
驱动提供了载波相关接口:
PAN271_RF_StartCarrierWave(Channel):开始载波发射PAN271_RF_StopCarrierWave():停止载波发射
一般流程是先完成 RF 初始化并设置信道/功率,再启动载波。注意在合规的测试环境下进行。