5509A_DSP通用定时器使用详解

5星 · 超过95%的资源 需积分: 9 7 下载量 66 浏览量 更新于2024-09-13 收藏 185KB PDF 举报
5509A_DSP通用定时器 5509A_DSP通用定时器是DSP系统中的一个重要组件,主要用于实现定时和计数功能。在本文中,我们将详细介绍5509A_DSP通用定时器的使用和配置。 一、寄存器介绍 在5509A_DSP通用定时器中,有四个寄存器用于配置和控制定时器: 1. TIM:主计数寄存器,用于存储当前的计数值。 2. PRD:主周期寄存器,用于存储定时器的周期值。 3. PRSC:定时器预定标寄存器,用于存储预定标值和主周期值。 4. TCR:定时器控制寄存器,用于控制定时器的状态和行为。 二、定时器中断频率 定时器中断频率是指定时器在每个周期内触发中断的次数。如果DSP没有使用锁相环,Inputclockrate为外接晶振的频率。 三、定时器自动重新加载 通过设置TCR寄存器中的ARB位,可以配置定时器自动重新加载。在此模式下,两个计数寄存器中的值将在主计数寄存器中的值到达0之后从周期寄存器自动重载,使定时器持续工作。 四、定时器引脚功能 通过设置TCR寄存器中的FUNC位,可以定义定时器引脚的功能: * 00:高阻态 * 01:定时器输出 * 10:通用输出,这个输出信号的电平反映TCR中DATOUT位的值 * 11:外部时钟输入,该引脚从DSP的外部时钟源接收一个时钟信号 五、初始化定时器 初始化定时器需要按照以下步骤进行: 1. 确定定时器已经被停止,即TCR中TSS==1;允许加载定时器,即TCR中TLB==1。 2. 向PRSC寄存器中的TDDR(9-6bit)位写入期望的预定标计数值。 3. 向PRSC寄存器中的PRD(3-0bit)位写入期望的主计数值。 4. 关闭定时器载入(TLB=0)并打开定时器(TSS=0),当定时器启动之后,主计数器(TIM)保留了PRD的值,预定标计数器(PSC)保留了TDDR的值。 六、关闭/开启定时器 通过控制TCR中的TSS位,可以关闭(TSS=1)或开启(TSS=0)定时器。 七、定时器引脚功能合法变迁流程图 在DSP复位后,在FUNNC变迁前,TIN\TOUT上的外部时钟源至少需要持续4个时钟周期。 八、DSP复位后的定时器状态 在DSP复位后,定时器的状态为: * 定时器被停止(TSS=1) * 预定标计数器的值为0 * 主计数器的值为0xFFFFh * 定时器被设置执行(ARB=0,不自动重载)一次而不是多次 * 定时器不会被闲置指令强制设置成闲置状态(IDLEEN=0) * 仿真过程中的软件中断会使定时器立即停止(SOFT=FREE=0) * 定时器使用内部时钟源,且定时器引脚呈高阻态(FUNC=00) 5509A_DSP通用定时器是一个功能强大且灵活的定时器模块,通过配置和控制寄存器,可以实现多种定时和计数功能。