完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
问题如下:最近外挂了一个外部32kHz晶振,sdkconfig中宏定义:#define CONFIG_BTDM_LPCLK_SEL_EXT_32K_XTAL 1
bt.c 部分代码如下: #if CONFIG_BTDM_LPCLK_SEL_EXT_32K_XTAL // check whether or not EXT_CRYS is working if (rtc_clk_slow_freq_get() == RTC_SLOW_FREQ_32K_XTAL) { btdm_lpclk_sel = BTDM_LPCLK_SEL_XTAL32K; // set default value #ifdef CONFIG_PM_ENABLE s_btdm_allow_light_sleep = true; #endif } else { ESP_LOGW(BTDM_LOG_TAG, "32.768kHz XTAL not detected, fall back to main XTAL as Bluetooth sleep clockn" "light sleep mode will not be able to apply when bluetooth is enabled"); btdm_lpclk_sel = BTDM_LPCLK_SEL_XTAL; // set default value } 开机logo如下: [14:42:52.219]收←◆[0;33mW (1826) clk: 32 kHz XTAL not found, switching to internal 150 kHz oscillator[0m [14:42:52.361]收←◆[0;31mE (2090) DBY?[0;33mW (2095) BTDM_INIT: 32.768kHz XTAL not detected, fall back to main XTAL as Bluetooth sleep clock light sleep mode will not be able to apply when bluetooth is enabled[0m 为什么找不到32kHz的晶振,我还需要做什么另外的操作吗?外挂晶振电路图是按照硬件指导做的。 |
|
相关推荐
1个回答
|
|
1. 确认晶振是否连接正确:首先,我们需要确保外部32kHz晶振已经正确连接到ESP32的相应引脚。请检查晶振的引脚是否与ESP32的晶振输入引脚相连。
2. 检查晶振是否工作正常:使用示波器或频率计检查晶振的输出频率是否为32kHz。如果晶振没有输出,可能需要更换晶振。 3. 检查代码配置:根据提供的代码片段,我们可以看到已经定义了CONFIG_BTDM_LPCLK_SEL_EXT_32K_XTAL宏。这表明ESP32应该使用外部32kHz晶振作为低功耗时钟源。请确保在sdkconfig.h文件中已经正确设置了这个宏定义。 4. 检查时钟源选择:在代码中,我们可以看到使用了rtc_clk_slow_freq_get()函数来获取当前的慢速时钟频率。如果这个函数返回RTC_SLOW_FREQ_32K_XTAL,说明系统已经检测到外部32kHz晶振。请确保这部分代码没有被其他条件编译指令排除。 5. 检查电源管理配置:代码中提到了CONFIG_PM_ENABLE宏。请确保在sdkconfig.h文件中已经正确设置了这个宏定义,以便启用电源管理功能。 6. 检查其他可能的问题:如果以上步骤都没有问题,可能需要检查其他部分的代码,看看是否有其他地方影响了晶振的检测和使用。 |
|
|
|
只有小组成员才能发言,加入小组>>
968 浏览 1 评论
553浏览 6评论
463浏览 5评论
有没有办法在不使用混杂模式的情况下实现Wifi驱动程序接收缓冲区访问中断呢?
447浏览 5评论
448浏览 4评论
418浏览 4评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-27 17:01 , Processed in 0.994473 second(s), Total 79, Slave 62 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号