關鍵字:晶體
目錄預覽
1 前言2 BlueNRG-低速晶體3 BlueNRG-高速晶體4如何測試和校準頻偏
5 小結
1. 前言
鑒于經常有客戶對如何選擇外部低速晶體,如何測試外部 32khz 時鐘,如何直接使用外部32khz 信號源 以及 如何選擇外部高速晶體,如何測試和校準頻偏存在諸多困惑,我整理了該文檔以備解惑用。
2.BlueNRG-低速晶體
2.1. 低速晶體的選擇
下面是 BlueNRG-1/2 規格書上列的一些指標,主要 Fnom=32.768Khz, PD 不要超過 0.1uW就可以了:
下面是 BlueNRG-LP 規格書上列的一些指標,主要關注 Fnom=32.768Khz, PD 不要超過0.1uW 就可以了:
2.2.32khz 時鐘的測試
鑒于有客戶反饋:板子可以正常工作,但是無法測量到 32khz 的時鐘。這里我展示了 32khz時鐘的具體測試方法:
2.2.1 測試過程:
1. Connect an oscilloscope probe in the pin 14 (ANATEST1) test point.
2. Power up the BlueNRG-1 platform. Set the scope to capture a consistent number of 32 kHz waveform periods (for example 64 cycles, so set the time base at 200 μs). In this way, the influence of the jitter in the measure is minimized.
3. In the IFR tool of the GUI, perform a “Read” of the current IFR configuration, then tick the check-box “LS crystal measure” and then perform a “Write” operation. Now a power cycle is required to let the new IFR be operative.
(note: the firmware the device programmed is DTM_UART.bin or DTM_SPI.bin ,which is located in C:Program Files (x86)STMicroelectronicsBlueNRG-1_2 DK
3.1.0FirmwareBLE_ExamplesDTMBlueNRG-1).
4.At this point, the 32.768 kHz waveform is visible on the oscilloscope screen. Perform the measurement of the frequency: the difference between the target value (f = 32.768 kHz) and the measured one is the frequency offset Δf.
2.2.2 期望結果:
If DUT frequency > 32.768 kHz → increases XTAL caps
If DUT frequency < 32.768 kHz → decreases XTAL caps?
To find the oscillator ppm, use the following formula:
where:
Δf = offset
f = 32.768 kHz
Add to the found ppm value the one declared in the adopted crystal datasheet.
當 BLE 堆棧初始化時,這個最終值必須在從 SCA 和主 SCA 字段中使用。
2.3.如何直接使用外部 32khz 信號源
鑒于一些客戶不想使用內部 RC 也不想外加 32khz low crystal , 客戶想知道如何使用外部32khz 時鐘源,如何使用?這里我展示了具體的使用方法:
2.3.1 正確的輸入 PIN 腳應該是 SXTAL0 pin, 時鐘源的要求如下:
1. 提供 0 到 1.2V 的方波:
In this case the internal xtal circuit will be disable (less power consumption).
The firmware configuration LS_SOURCE=LS_SOURCE_EXTERNAL_32KHZ should be used and, in addition to this, a modification on the file system_bluenrg1.c is needed, that is
.
.
cold_start_config[11] = (1 << 1); / <<<<<<<<<<< New line added / / Cold start configuration device /
BLUE_CTRL->RADIO_CONFIG = 0x10000U | (uint16_t)((uint32_t)cold_start_config & 0x0000FFFFU);
while ((BLUE_CTRL->RADIO_CONFIG & 0x10000) != 0);
.
.
2. 提供從 0 到 1.2 Vpp 的周期波形:
In this case the configuration LS_SOURCE=LS_SOURCE_EXTERNAL_32KHZ should be used without further modification.
3. BlueNRG-高速晶體
3.1. 高速晶體的選擇
下面是 BlueNRG-1/2 規格書上列的一些指標,主要關注 Fnom=32Mhz(雖然下圖可以選擇16MHZ,但是不建議選用,會導致部分 ble 功能無法使用),fTOL 建議選擇+-20ppm, PD 不要超過 100uW,對 CL 沒有特殊要求 :
下面是 BlueNRG-LP 規格書上列的一些指標,主要關注 Fnom=32Mhz,fTOL 建議選擇+-20ppm, PD 不要超過 100uW,CL 選用 6~8pf 的 :
3.2. 如何調諧 BlueNRG-LP 內部的負載電容
BlueNRG-LP 內部已經嵌入了高速晶體的負載電容,所以無須額外的負載電容,對內部的負載電容的調諧有如下兩種方式:
3.2.1 利用 DTM_UART_WITH_UPDATER 或者 DTM_SPI_WITH_UPDATER 固件,配 ST BlueNRG GUI 上位機軟件對內部的負載電容進行調諧,如下圖所示:
1. 選擇 IFR/Device Configuration2. 調諧內部的負載電容值,取值 0~633. 最后,點擊 Write 即可。
3.2.2 在軟件中配置內部的負載電容值方法如下:
LL_RCC_HSE_SetCapacitorTuning(XO_TUNE_VALUE); //其中 XO_TUNE_VALUE 取值 0~63
4. 如何測試和校準頻偏
4.1. 頻偏的測試步驟
4.1.1 對于 BlueNRG-1/2 或者 BlueNRG-LP 來說基本上是一樣的:
1.下載 DTM 軟件到 BlueNRG-LP 板子;2. 通過 GUI 工具打開對應的串口,如下圖所示;3. 按如下步驟 1,2,3 操作就可以產生-2dbm,2402MHZ 的載波信號,其它的載波只要更改步驟 2 中的參數就可以了;
4. 通過 RF cable 連接 BlueNRG-LP 設備和頻譜分析儀,并且設置頻譜分析儀:res BW = 1 kHz,SPAN = 500 kHz;5. 如果實測的頻率與設置的頻率差異如下:|Offset| < 50 kHz?If DUT frequency > 2402.05 MHz → increases XTAL capsIf DUT frequency < 2401.95 MHz→ decreases XTAL caps
4.2. 頻偏的測試方法
4.2.1 對于 BlueNRG-1/2,參考上面測試步驟 5)進行下圖中負載電容(C14 和C15)的調節:
4.2.1 對于 BlueNRG-LP, 參考上面“2.2 如何調諧 BlueNRG-LP 內部的負載電容”進行內部負載電容的調節。
5. 小結
本篇從高速晶體的選擇、頻偏的調試著手提供實用的指導以使客戶在實際選型、設計中少走彎路。
完整內容請點擊“閱讀原文”下載原文檔。
長按掃碼關注公眾號
更多資訊,盡在STM32
▽點擊“閱讀原文”,可下載原文檔
原文標題:應用筆記|如何選擇和設置外部晶體適配 BlueNRG-X
文章出處:【微信公眾號:STM32單片機】歡迎添加關注!文章轉載請注明出處。
-
單片機
+關注
關注
6040文章
44602瀏覽量
637029 -
STM32
+關注
關注
2270文章
10918瀏覽量
356821
原文標題:應用筆記|如何選擇和設置外部晶體適配 BlueNRG-X
文章出處:【微信號:STM32_STM8_MCU,微信公眾號:STM32單片機】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論