目录
1 前言
选择合适的晶振对于射频芯片是十分重要的,本文主要介绍了SX126x芯片的时钟模块,主要包括2个内部的RC和一个外部的晶振,详细介绍了各自的作用,以及不同晶振方案的对比。
2 内部RC振荡器
内部包含2个RC振荡器,直接由VBAT供电:64Khz RC 和13Mhz RC:
- RC64K 用于内部定时器功能,比如在RxDuty模式下,周期执行Rx-Sleep,或者用于发送/接收超时判定
- RC13M 用于SPI接口
3 外部时钟源
射频收发器通常需要一个外部时钟参考,以便为射频和数字操作产生高频时钟。除了自身的RC,外部还需要一个晶振,它被用作锁相环频率合成的参考,并作为所有数字处理的时钟信号。
- 在设计上兼容Crystal和TCXO两种方案
3.1 Crystal方案
1)电路图设计
外部采用32Mhz晶振,两端连接到引脚XTA和XTB上
2)内部可编程电容
SX126x不需要用户在32 MHz时钟的XTAL上设置外部脚电容,该设备配备了内部可编程电容。可通过寄存器来调整匹配电容大小
- 每个电容大小可单独设置,步进值为0.47pF
- 上电,复位,或者从sleep cold star模式唤醒,这3种场景时,寄存器会被初始化为0x05即13.6pF
- 当设备被设置为STDBY_XOSC模式时,寄存器值会被值0x12覆盖,即19.7pF
3.2 TCXO方案
TCXO是一种将温度补偿电路与晶体结合在一起的器件,具有更大的频率稳定性在广泛的温度范围,下图可以看出温度补偿对晶振漂移的影响。
1)电路图设计
- 内部配置DIO3作为TCXO的电源,电压可配置1.6V~3.3V,正常电流负载为1.5mA,最大可支持4mA
- TCXO通过220Ω电阻和10pF的电容连接到XTA引脚上,XTB引脚悬空。
2)内部可编程电容
使用TCXO时,需要使用命令SetDIO3AsTCXOCtrl()配置DIO3作为电源。该命令还会使XTA内部电容配置为0x2F即33.4pF
3)DIO3作为TCXO电源
命令SetDIO3AsTCXOCtrl()用于配置芯片的外部TCXO参考电压,由DIO3控制。
- tcxoVoltage
设置输出电压1.6V~3.3V,需注意的是,受限于芯片的供电电压,实际可配置最大电压不能超过芯片电源电压-200mv
- delay
TCXO供电后,需要一定时间起振,最终稳定到所需的频率。这个时间会依据不同TCXO厂家而不同,这个参数就是设置内部状态机等待TCXO稳定的时间。如果超时,会标记XOSC_START_ERR。
PS:该命令发送后,并不是立即执行。而是在TCXO需要的时候(STDBY_XOSC,FS,TX,RX模式下),芯片才控制DIO3输出电压值,并且设定delay超时时间来等待TCXO起振。选择TCXO方案时,启动发射和接收需注意这里的时间开销。
4 Crystal和TCXO方案比较
- TCXO提高了频率稳定性,但成本较高,并且启动时间慢,功耗高。
- Crystal成本低,但容易受温度影响,需要在PCB上开槽进行热隔离
类型 | Crystal | TCXO |
型号 | NX2016SA-32MHz-EXS00A-CS06465 | NT2016SA-32MHz-END4263A |
标称频率 | 32MHz | 32MHz |
供电电压 | 不需要 | 1.65V~3.65V |
供电电流 | 不需要 | 2mA |
输出类型 | - | 正弦波 |
输出电压 | - | 0.8Vpp |
温漂 | +/- 10 ppm for -20 to +70°C +/- 30 ppm for -40 to +85°C | +/- 2.5 ppm for -30 to 85°C |
老化 | +/- 3 ppm for 1st year +/- 5 ppm for 5 years +/- 10 ppm for 10 year +/- 15 ppm for 15 year | +/- 1 ppm 1 year +/- 3 ppm for 5 year +/- 5 ppm per 10 year |
相噪 | - | -86dBc/Hz @ 10Hz offset -114dBc/Hz @ 100Hz offset -137dBc/Hz @ 1kHz offset -149dBc/Hz @ 10kHz offset |
负责阻抗 | 10kΩ||10pF | 10kΩ||10pF |
启振时间 | 150us | 2ms S |