第四章S3C2410X系统结构2摘要.ppt

  1. 1、本文档共183页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
初值装载与缓冲功能 初值自动重装功能:当计数器中值减到0后,在自动重装功能下,则在下一计数周期开始前、将初值装入计数器重新计数。 初值手动装载功能:在启动计数前,必须使用手动装载功能将初值装入计数器,而初值自动重装仅是一次计数结束后重新装入初值。 缓冲功能:如果定时器正在工作,又写入新的数据到TCNTBn、或者到TCMPBn,该写入的数据不影响本次定时器的操作。当定时器到达0后下一次运行定时器时,新写入的TCNTBn、或者TCMPBn才生效。 PWM输出 寄存器TCNTB的作用:控制输出方波周期 寄存器TCMPB的作用:当计数器TCNT中的值减到与TCMPB的值相同时,TOUT的输出值取反。改变TCMPB的值,便改变了输出方波的占空比。 周期开始 每个周期计数值为100 定时器的输出 TOUT的输出可以设置为反相输出,如下图所示。 正向输出 反相输出 死区产生器 死区的概念:是一小段时间间隔,在这个时间间隔内,禁止两个开关同时处于开启状态。死区是在功率设备控制中常采用的一种技术,防止两个开关同时打开起反作用。 S3C2410的timer0具有死区发生器功能,可用于控制大功率设备。 死区发生器开启前后输出波形对比 死区发生器开启前后输出波形对比 DMA功能 S3C2410中定时器的DMA功能:系统中的5个定时器都有DMA请求功能,但是在同一时刻只能设置一个使用DMA功能,通过设置其DMA模式位来实现。 DMA请求过程:定时器可以在任意时间产生DMA请求,并且保持DMA请求信号(nDMA_REQ)为低直到定时器收到ACK信号。当定时器收到ACK信号时,它使请求信号变得无效。 DMA请求与中断的关系:如果一个定时器被配置为DMA模式,该定时器不会产生中断请求。其他的定时器会正常的产生中断。 计数时钟和输出计算 定时器输入时钟频率f Tclk(计数时钟) f Tclk=[f pclk∕(Prescaler+1)] ×分频值 Prescaler为预分频值,0---255; 分频值为1/2、1/4、1/8、1/16。 PWM输出信号频率 : PWM输出信号频率= f Tclk ∕TCNTBn PWM输出信号占空比:即高电平持续时间所占信号周期的比例 PWM输出信号占空比 = TCMPBn∕TCNTBn 定时器最大、最小输出周期 设PCLK的频率为50MHz,经过预分频和分频器后,送给定时器的可能计数时钟频率由下表给出。 分频值 最小输出周期 (预分频器=0、 TCNTBn=1) 最大输出周期 (预分频器=255、 TCNTBn=65535) 最小输出周期 (预分频器=0、 TCNTBn=65535) 最小输出周期 (预分频器=0、 TCNTBn=255) 1/2 25.00MHz(0.04μs) 0.6710s 381Hz 97656Hz 1/4 12.50MHz(0.08μs) 1.3421s 191Hz 48828Hz 1/8 6.250MHz(0.16μs) 2.6843s 95Hz 24414Hz 1/16 3.125MHz(0.32μs) 5.3686s 48Hz 12207Hz 4.7.3 定时器专用寄存器 共有6种、17个寄存器,基地址0 TCNTBn---计数缓冲寄存器,16位 TCMPBn---比较缓冲寄存器,16位 TCNTOn---计数读出寄存器,16位 Register Address R/W Description Reset Value TCFG0 0 R/W 配置寄存器 0 0 TCFG1 0 R/W 配置寄存器 1 0 TCON 0 R/W 控制寄存器 0TCNTBn 0x510000xx R/W 计数初值R(5个) 0x0000 TCMPBn 0x510000xx R/W 比较寄存器(4个) 0x0000 TCNTOn 0x510000xx R 观察寄存器(5个) 0x0000 TCFG0--预分频器配置寄存器0 Dead zone length---死区宽度设置位 其值N为: 0~255,以timer0的计数时钟为单位 死区宽度为:(N+1)×timer0的计数时钟周期 Prescaler1---timer2、3、4的预分频值 其值N为: 0~255 输出频率为:PCLK /(N+1) Prescaler0--- timer0、1的预分频值, 其值N为: 0~255 输出频率为:PCLK /(N+1) 31 …… 24 23 …… 16 15 …… 8 7 …… 0 保留(为0) Dead zone

文档评论(0)

光光文挡 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档