时钟源频率验证功能的使用

本方法适用于APT32F110X、APT32F173X。

概述

时钟源频率验证,参考源时钟计数到指定的计数值,然后获取时钟源的计数值,通过参考源时钟的计数值和时钟源时钟的计数值,可以验证时钟源频率是否正确,通过此种方式,可以对时钟源频率进行校正。

寄存器控制配置

在SYSCON系统配置CQCR寄存器中,BIT[5:4]选择参考源时钟,BIT[7:6]选择时钟源时钟,BIT[25:8]配置参考时钟计数器的目标计数值。配置完成之后,BIT[0]CQC启动控制位即可。

当参考计数器的计数值等于CQRVAL的设置值时,源时钟计数器的当前计数值将被载入到CQSR寄存器中。

实例说明

 uint32_t wCqsrValue = 0;
// 参考时钟选择 EM(24M), 源时钟选择控 IM(5.556m),参考时钟目标计数值为0x3ff
csi_set_cqcr(CQCR_REFSEL_EM,CQCR_SRCSEL_IM,0x3ff);   
csi_cqcr_enable();                            //CQC启动控制位
wCqsrValue = csi_get_cqsr();                  //读取源时钟计数值
 

启动后,等待CQC结束,可以读出源时钟计数值:wCqsrValue 为0x1149。

 通过此种方式判断源时钟频率是否准确,判断依据如下:

参考时钟频率REFFREQ(24M),源时钟频率SRCFREQ(5.556M),参考时钟计数值REFValue(0x3ff),源时钟计数值SRCValue(0x1149)。

如果REFFREQ * REFValue > SRCFREQ*SRCValue,说明源时钟频率偏慢,

如果REFFREQ * REFValue < SRCFREQ*SRCValue,说明源时钟频率偏快。

   校正HF、IM、IS时钟频率,在SYSCON中的CLCR寄存器中,修改对应频率的TRIM位,频率输出随着调整值递

增,值越大,频率越高。

注意事项

(1)、CQC参考时钟选择EM或ES,必须要外接晶振,同时确保频率输出必须正确;

(2)、如果源时钟的频率远大于参考时钟的频率,参考时钟配置的目标计数值不能太大,以防源时钟计数值溢出。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值