你好,
请让我询问关于外部32kHz时钟源用例的SDK的使用情况。
我使用具有32kHz xtal的DA14583和合作MCU,我想从MCU到DA14583提供32K时钟源。关于“DA14583”数据表,有寄存器CLK_32K_REG,当我们在XTAL32KP端口上使用外部时钟时,我们必须将“1”设置为“1”到XTAL32K_DISABLE_AMPREG位。
另一方面,在SDK中,System_Init()函数进行某些系统和外设初始化。在此初始化中,调用init_pwr_and_clk_ble()函数。此函数被编码如下:
if(arch_clk_is_xxtal32())
{
SetBits16(CLK_32K_REG,XTAL32K_ENABLE,1);//启用xtal32khz.
//在升压模式下禁用XTAL32幅度调节
if(getBits16(ANA_STATUS_REG,BOOST_SELECTED)== 0x1)
setBits16(CLK_32K_REG,XTAL32K_DISABLE_AMPREG,1);/// 这里 !!!
别的
setbits16(clk_32k_reg,xtal32k_disable_ampreg,0);/// 这里 !!!
setbits16(clk_32k_reg,xtal32k_cur,5);
setBits16(CLK_32K_REG,XTAL32K_RBIAS,3);
setbits16(sys_ctrl_reg,clk32_source,1);//选择xtal32k作为LP时钟
}
否则if(arch_clk_is_rcx20())
{
setBits16(CLK_RCX20K_REG,RCX20K_NTC,0xB);
setBits16(CLK_RCX20K_REG,RCX20K_BIAS,1);
setBits16(CLK_RCX20K_REG,RCX20K_TRIM,0);
SetBits16(CLK_RCX20K_REG,RCX20K_LOWF,1);
setBits16(CLK_RCX20K_REG,RCX20K_ENABLE,1);
setbits16(clk_rcx20k_reg,rcx20k_select,1);
SetBits16(Sys_ctrl_reg,clk32_source,0);
SetBits16(CLK_32K_REG,XTAL32K_ENABLE,0);//禁用xtal32khz.
}
别的
assert_warning(0);
我使用da14583作为降压模式,所以setbits16(clk_32k_reg,xtal32k_disable_ampreg,0);
甚至32kHz被提供为外部时钟。(我认为 - setBits16(CLK_32K_REG,XTAL32K_DISABLE_AMPREG,1); - 应在将外部32K时钟提供给DA14583时执行。)
我的问题是,当外部32kHz时钟提供给DA14583时,我们应该如何修改/使用SDK 5.0.x?是否有任何配置切换如#define设置????
是否有其他部分在提供外部32kHz时钟时必须修改?(即睡眠和唤醒相关的功能......它们似乎设置了32kHz相关参数......)
如果我能得到任何意见,那就非常感谢。
感谢您提前合作。
此致,
光盘
嗨CD,
使用外部时钟设置设备时,SDK在SDK中没有定义。外部32.768 kHz信号必须应用于引脚XTAL32KP,另一个引脚可以留下浮动。对于此PIN的级别,请查看数据表。当施加外部时钟信号时,必须将XTAL32K_Disable_AMPREG设置为“1”,也可以设置为降压或升压模式,否则振荡器将无法正常工作。
谢谢mt_dialog.
嗨mt_dialog,
非常感谢您的快速回复!
好的,我想将xtal32k_disable_ampreg寄存器的值固定为“1”。这是我必须修改SDK的全部吗?
从睡眠睡眠后醒来后需要再次设置此寄存器吗?(是否将寄存器分为A-ON域??)
如何设置其他寄存器相关的clk_32k_reg?
对不起很多问题,但如果我能从你那里得到任何评论,我会很感激。
谢谢您的合作。
此致,
光盘
嗨CD,
系统初始化发生在设备到循环中的WHER循环之前,并非所有寄存器都在A-ON域中,但CLK_32_REG可保留。
rc32k_trim:你不必担心这个
rc32k_enable:是的,让SDK处理此
xtal32k_cur:XTAL32K_RBIAS:如果这些比特将为您提供较低的功耗但是,我不能确定由于您有一个外部时钟来源,我不认为他们会对你有好处,但你可以申请和衡量。
XTAL32K_ENABLE:由于您使用的外部源您不必启用此功能,因此在未选择RCX20时,SDK使其启用它。
谢谢mt_dialog.
嗨MT,
非常感谢您的意见。
我明白了,我会试试。
非常感谢,
光盘