微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > 射频无线通信设计 > 板子没有焊接32K晶振导致板子工作不稳定的解决办法

板子没有焊接32K晶振导致板子工作不稳定的解决办法

时间:10-02 整理:3721RD 点击:

自己有经历过这个事儿,群里也经常出现这个事儿。就是板子不焊32K晶振,结果摸一摸就能正常干活,或者是时好时坏,这个主要原因是协议栈默认的是要用启用外部32K晶振,虽然不用低功耗模式这个32K没用。那么我们不焊的话,怎么解决呢?
找到hal_board_cfg.h,打开,找到这个地方。。。。
/* 32 kHz clock source select in CLKCONCMD */
#if !defined (OSC32K_CRYSTAL_INSTALLED) || (defined (OSC32K_CRYSTAL_INSTALLED) && (OSC32K_CRYSTAL_INSTALLED == TRUE))
#define OSC_32KHZ 0x00 /* external 32 KHz xosc */
#else
#define OSC_32KHZ 0x80 /* internal 32 KHz rcosc */
#endif
看定义,应该是如果定义OSC_32KHz 0x00的话,就用32K外部晶振,要是0x80,就用内部的。
那好,解决办法1:把这个地方的0x00改成0x80.别的地方不用动,下载程序试试看可以了吧?
解决办法2define一下OSC32K_CRYSTAL_INSTALLED
两种办法都是逼着协议栈用内部32KRC振荡器。
想搞清楚协议栈里面到底怎么用了OSC_32KHz,就自己找找代码,我不说了。

这个为许多自己做模块的朋友带来了福音

这个支持一下

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top