關(guān)于CH582F啟用外部32K晶振的問題

????關(guān)于如何啟用外部32K晶振,我看到有兩種方法,一個(gè)是修改工程配置添加宏,也就是把CLK_OSC32K改成0,我使用這種方法之后CH582F就卡住了。另一種方法是使用函數(shù)啟用,如下圖。

????LClk32K_Select(Clk32K_LSE);?????????????//啟用外部32K?精度20ppm?推薦晶體參數(shù)32768hz?12.5pf?20ppm
????R8_SAFE_ACCESS_SIG?=?SAFE_ACCESS_SIG1;
????R8_SAFE_ACCESS_SIG?=?SAFE_ACCESS_SIG2;
????R8_CK32K_CONFIG?|=?RB_CLK_XT32K_PON;????//給外部32K上電
????R8_SAFE_ACCESS_SIG?=?0;

????單獨(dú)使用這種方法倒是可以正常運(yùn)行,但是如果我同時(shí)也將CLK_OSC32K改為了0,則還是會(huì)卡住。

????我想請問這兩種啟用方法有什么區(qū)別嗎?是否可以用什么方法查看啟用的是外部還是內(nèi)部32K?

對了,我是使用了RF通訊的


您好,是用的官方評估板+最新EVT測試RF通訊嗎?CH583EVT.ZIP - 南京沁恒微電子股份有限公司 (wch.cn)

檢查以下您板子上有沒有焊接32K晶振,有沒有虛焊。我這邊在工程配置中添加CLK_OSC32K宏為0測試,是可以運(yùn)行的,您可以重新解壓一份EVT測試,可能是誤修改了某些公共文件導(dǎo)致異常。


你好,我用其他板子試了下,CLK_OSC32K更改為0后可以正常運(yùn)行了,應(yīng)該是我自己的畫的板子有些問題,我到時(shí)再檢查一下。不過我還是想問下我前面提到的方法一和方法二是等價(jià)的嗎?可以靠api函數(shù)啟用外部32k嗎?


不等價(jià)。

如果是單純跑RTC,用LClk32K_Select切換內(nèi)/外部32K時(shí)鐘源,是沒問題的。

一般涉及到CLK_OSC32K宏,是要跑BLE協(xié)議棧的。在初始化BLE庫時(shí),CLK_OSC32K宏傳遞給協(xié)議棧了,協(xié)議棧會(huì)根據(jù)CLK_OSC32K判斷是否啟用了內(nèi)部32K;若啟用了內(nèi)部32K,在默認(rèn)每2分鐘執(zhí)行一次的RF校準(zhǔn)事件HAL_REG_INIT_EVENT下,是要校準(zhǔn)內(nèi)部RC的,圍繞校準(zhǔn)功能需要注冊多個(gè)函數(shù)(見MCU.c內(nèi)CH58X_BLEInit函數(shù))。

實(shí)測在BEL協(xié)議棧初始化后調(diào)用LClk32K_Select切換到外部32K時(shí)鐘源會(huì)影響連接。


只有登錄才能回復(fù),可以選擇微信賬號登錄

国产91精品新入口,国产成人综合网在线播放,九热这里只有精品,本道在线观看,美女视频a美女视频,韩国美女激情视频,日本美女pvp视频