ARM定时器.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
ARM定时器

S3C2410定时器 主要内容 定时器结构 定时器控制寄存器 定时器设置程序 应用程序设计 定时器结构 定时器控制寄存器 配置寄存器1 设置死区时间 设置两个预分频器值0-255 配置寄存器2 设置定时器时钟频率 定时器控制 定时器设置程序 void __irq TimeISR1(void);//定时器中断必须声明才能用 void Timer1_init(void){ rTCFG0 =1; //Prescale =0 rTCFG1 =0; //div MUX=1/2 1/2PCLK=25.35MHz rTCNTB1 =60000; //初始值为60000 中断一次为0.04us*60000值 rTCON =(111)|(19)|(08); //time1=stop pISR_TIMER1 =(int)TimeISR1; rINTMSK =~(BIT_TIMER1); } rTCON =(111)|(09)|(18); //time1 start rTCON =(08); //time1 stop b=rTCNTO1; //读time1 值 ,减计数 定时器中断服务程序 void __irq TimeISR1(void) { … … rSRCPND |=BIT_TIMER1; rINTPND |=BIT_TIMER1; } 应用程序设计 测量程序执行时间 void Timer1_init(void){ rTCFG0 =1; //Prescale =0 rTCFG1 =0; //div MUX=1/2 1/2PCLK=25.35MHz rTCNTB1 =60000; //初始值为60000 rTCON =(111)|(19)|(08); //time1=stop } void Main(void){ int fill_time; Timer1_init(); … rTCON =(111)|(09)|(18); //time1 start fill(); //被测函数 rTCON =(08); //time1 stop fill_time=rTCNTO1; //读time1 值 ,减计数 fill_time=60000-fill_time; … } 定时中断服务程序 void VIRQ_Relate_Task_Init(void) { pISR_TIMER1 = (INT32U)UCOS_IRQHandler; } * * 当PCLK=66MHz时,TOUT周期最大值约4秒 PCLK=50.7M void Timer1INT_Init(void) //定时器接口使能,定时器初始化 { if ((rINTPND BIT_TIMER1)) rSRCPND |= BIT_TIMER1; rINTMSK = ~(BIT_TIMER1); //开中断; } void __irq Key_ISR( void ) { 。。。 } *

文档评论(0)

yan698698 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档