网站大量收购独家精品文档,联系QQ:2885784924

最新第7章 IO接口及增强型捕捉准时器模块.ppt

最新第7章 IO接口及增强型捕捉准时器模块.ppt

  1. 1、本文档共76页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
最新第7章 IO接口及增强型捕捉准时器模块

例二:输入捕捉 初始化,需要在main函数中调用初始化函数ic_init()。 以下是在main函数中,如何使用PORTA_BIT6来产生一个方波信号。 DDRA=0xff; //设置PORTA的方向寄存器,为输出 PORTA=0x00; //PORTA的输出初始化为低电平 DDRB=0xff; //PORTB设置为LED灯的控制信号 PORTB=0xff; //LED全灭 for(;;) { for(i=0;i6000;i++) { PORTA_BIT6=1;//循环中设置信号为高电平 } for(i=0;i6000;i++) { PORTA_BIT6=0; //循环中设置信号为低电平,产生方波,,,,,,,, } } 握熏择航冗宵哈茶樟屎锨霸梭漱互造港翠腐路水入筹褒姥肥瓦琶偶隶父弊第7章,IO接口及增强型捕捉定时器模块第7章,IO接口及增强型捕捉定时器模块 例二:输入捕捉 方波信号已经成功得产生了,下面是中断服务程序: void,interrupt,8,ic0_int(void) { TFLG1_C0F=1;//中断标志清除 ic4=TC0; //通过读TC0寄存器来响应中断,ic4 PORTB=0x55; //用LED灯来指示已经进入了中断 /*以下放置其他代码*/ } 妄乌涌抨由擒系埋疫氰彝苍崇辐倘笔搐鲍称穿着凭出瓶炎酚使毯盏努囤餐第7章,IO接口及增强型捕捉定时器模块第7章,IO接口及增强型捕捉定时器模块 TFLG1:主定时器中断寄存器1, BIT R W RESET 7 C7F 0 6 C6F 0 5 C5F 0 4 C4F 0 3 C3F 0 2 C2F 0 1 C1F 0 0 C0F 0 TFLG1指示了中断发生在哪个通道,需要对相应位清零时,可以对它进行置一操作。,C7F-C0F:IC/OC的中断标志。 凯蔫防贤莆纤枣卤佛钞瓜勿艰否尹彰建扎快迪秀妆煤静瘟战镊辊具氯钓亲第7章,IO接口及增强型捕捉定时器模块第7章,IO接口及增强型捕捉定时器模块 TCx:定时器输入捕捉和输出比较寄存器0-7, BIT R W RESET 15 TCx 15-0 0 14 0 13 0 12 0 11 0 10 0 9 0 8 0 7 0 6 0 5 0 4 0 3 0 2 0 1 0 0 0 TC0-TC7寄存器用来锁存自由计数计数器的值,当得到有效的边沿触发时,我们可以通过读这些寄存器来获得输入捕捉计数值;通过写这些寄存器来设置输出比较的计数值。 任意时刻可读。在输出比较模式任何时刻可写。在输入捕捉模式对寄存器的写操作没有意义。当寄存器复位后,寄存器值等于$0000。, 迫达醒吓藤揭淖兢馈匆避讶尧清句紧雌搔堆痉普趋氢侩蝗爱效坯漆组乍饼第7章,IO接口及增强型捕捉定时器模块第7章,IO接口及增强型捕捉定时器模块 例三:输出比较 ,,,,,这里讲一个输出比较例子,目的是通过OC0通道输出一个有一定宽度的脉冲。 OC0的初始化: void,oc_init() { TSCR2,=,0x07;//128分频,定时器溢出中断禁止 TIOS,=,0xff;,//所有通道作为输出比较通道 TIE,,=,0x00;,//中断全部禁止 TSCR1=,0x90;,//主定时器使能 TCTL2=0xaa;,//,OC0输出电平为低电平 CFORC=0xff;,//强制输出比较 } 核阔站音沈治兵询呻柳檀长毅孟旁枷内十缓妖片鸣处虞杨樊瑟亥灸悍涯惊第7章,IO接口及增强型捕捉定时器模块第7章,IO接口及增强型捕捉定时器模块 例三:输出比较 void,main(void) { EnableInterrupts; oc_init(); //初始化函数调用 asm_main();, TCTL2_OM0=1; TCTL2_OL0=1;, //OC0输出电平为高电平 CFORC_FOC0=1; //OC0强制输出比较 TC0=TCNT+40000; //设置脉冲宽度,在自由计数器TCNT的基础上加上脉冲宽度的计数值 TCTL2_OM0=1; TCTL2_OL0=0; //OC0输出电平为低电平 for(;;){/*其他代码*/} } 仆秩衡衣账控汰针叙摄景疑桔熙百侗纹寇赐刊诛凡提蕉撂例洼推纫草渣搅第7章,IO接口及增强型捕捉定时器模块第7章,IO接口及增强型捕捉定时器模块 定时器,预分频,计数器 寄存器: 1. TCNT 16 位自由运行/模计数器 B15.................................................................................................................

文档评论(0)

beoes + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档