32kHz同步:定时器启动/停止在《证书认证密钥管理系统检测规范》中的实现

需积分: 50 25 下载量 161 浏览量 更新于2024-08-09 收藏 8.82MB PDF 举报
"定时器启动/停止同步-gm/t 0038-2014 《证书认证密钥管理系统检测规范》" 本文档主要介绍了定时器启动和停止的同步机制,尤其关注在32kHz时钟和32MHz系统时钟同步下如何操作。在18.4章节中,详细阐述了定时器同步启动和停止的细节。 18.4.1 概述部分提到,定时器的启动和停止可以通过32kHz时钟的上升沿同步。这种同步依赖于32kHz时钟与32MHz系统时钟的同步,只有在两个时钟都稳定运行的情况下,才能进行同步操作。 18.4.2 定时器同步停止的步骤包括:当T2CTRL.SYNC设置为1时,可以通过将0写入T2CTRL.RUN来停止定时器。停止过程会在32kHz时钟的上升沿采样为1时完成,此时定时器停止,存储当前的睡眠定时器值,并且T2CTRL.STATE由1变为0。 18.4.3 定时器同步启动的流程则是在定时器处于IDLE模式且T2CTRL.SYNC为1时,写1到T2CTRL.RUN开始同步。等待32kHz时钟的上升沿检测,然后计算新的计数值和溢出值,基于当前的睡眠定时器值和16位定时器值。计数值和溢出计数器值装入后,定时器进入RUN模式,T2CTRL.STATE变为1。 在同步启动和停止过程中,特别强调了系统时钟频率的选择。若选择32MHz,同步操作可顺利进行;若选择16MHz,则需对新计算值添加偏移以补偿可能的误差。如果未先执行同步停止就进行同步启动,定时器可能会加载不确定的值,因此建议先执行同步停止,再启动。 此外,由于定时器2的时钟频率与睡眠定时器的频率不同步,计算的计数值可能存在±1的误差。这涉及到异步时钟系统中的定时精度问题。 文档还提及了CC253X片上系统解决方案,主要用于2.4GHz IEEE 802.15.4和ZigBee应用。这部分内容涵盖了8051 CPU、存储器、时钟和电源管理、中断系统、调试接口、电源管理寄存器、振荡器和时钟、以及复位和闪存控制器等,但这些并非定时器启动/停止同步的直接相关知识,而是提供了一个更广泛的技术背景。