您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > 如何使用W7100A的定时器计数器
1ver.1.0如何使用W7100A的定时器/计数器版本1.0ver.1.02Howtouse定时器/计数器inW7100A目录1简介........................................................................................42定时器0/计数器0.........................................................................42.1定时器08位定时器软件门控.......................................................62.2定时器08位定时器硬件门控.......................................................72.3定时器08位计数器软件门控.......................................................72.4定时器08位计数器硬件门控.......................................................82.5定时器016位定时器软件门控.....................................................92.6定时器016位定时器硬件门控......................................................92.7定时器016位计数器软件门控.....................................................102.8定时器016位计数器硬件门控.....................................................102.9定时器08位自动重装定时器软件门控...........................................112.10定时器08位自动重装定时器硬件门控...........................................122.11定时器08位自动重装计数器软件门控...........................................122.12定时器08位自动重装计数器硬件门控...........................................132.13定时器02个8位定时器软件门控..................................................142.14定时器02个8位定时器硬件门控..................................................152.15定时器02个8位计数器软件门控..................................................152.16定时器02个8位计数器硬件门控..................................................163定时器1/计数器1........................................................................183.1定时器18位定时器软件门控......................................................193.2定时器18位定时器硬件门控......................................................203.3定时器18位计数器软件门控......................................................203.4定时器18位计数器硬件门控......................................................213.5定时器116位定时器软件门控.....................................................213.6定时器116位定时器硬件门控.....................................................223.7定时器116位计数器软件门控.....................................................233.8定时器116位计数器硬件门控.....................................................233.9定时器18位自动重装定时器软件门控...........................................243.10定时器18位自动重装定时器硬件门控...........................................253.11定时器18位自动重装计数器软件门控...........................................253.12定时器18位自动重装计数器硬件门控...........................................264定时器2/计数器2........................................................................284.1定时器216位自动重装定时器......................................................304.2定时器216位上/下自动重装计数器...............................................304.3定时器216位捕获定时器............................................................31ver.1.03Howtouse定时器/计数器inW7100A4.4定时器216位捕获计数器............................................................324.5定时器2波特率发生器..............................................................335看门狗定时器............................................................................345.1看门狗定时器中断应用..............................................................345.2看门狗定时器复位应用..............................................................356运行实例..................................................................................376.1创建Keil工程..........................................................................376.2编译生成HEX文档....................................................................386.3下载HEX文件到iMCU7100EVB......................................................386.4运行定时器/计数器..................................................................39文档历史信息........................................................................................40ver.1.04Howtouse定时器/计数器inW7100A1简介这篇应用手册主要介绍W7100A单片机的内部定时器/计数器、看门狗定时器和基本的示例程序。更多的详细信息,请参考W7100数据手册中与W7100A定时器/计数器相关的寄存器。具体的例子将会在后面利用W7100A的定时器/计数器实现GPIO端口P0_3和P0_4翻转时讲到。由于iMCU7100EVB开发板的P0_3、P0_4和LED相连接,利用简单的代码实现P0_3和LED连接,就可以使LED闪烁。由于时钟的工作频率非常快,LED灯看起来像是一直在亮。文中所有的代码都是用C语言写的,并且基于Keil编译器实现。(注意:因为W7100AQFN64引脚的封装和LQFP100引脚的封装不同,用户必须确认GPIO引脚可用。)2定时器0/计数器0本章主要介绍定时器/计数器的结构,图2.1为模式0下的定时器0/计数器0的结构图:预分频的8位定时器/计数器。TL0的5位用来预分频,TH0的8位用来指示定时器/计数器。从图中我们可以得知,88.4736MHZ是内部的时钟频率,T0是外部的计数输入,TM0D.3是软件门控制位。同时,GATE0作为硬件门控制引脚,TCON.4是定时器0的启动位。图2.1定时器/计数器0,模式0:8位定时器/计数器ver.1.05Howtouse定时器/计数器inW7100A图2.2是定时器0/计数器0模式1:16位定时器/计数器的结构图;它能够利用TL0的8位和TH0的8位实现16位的定时/计数。图2.2定时器/计数器0,模式1:16位定时器/计数器图2.3为定时器0/计数器0模式2的结构图:自动重装的8位定时器/计数器。如果在模式2下发生中断,则重新装载保存的TH0的值到TL0寄存器中。在中断发生时,输入TL0的初始值,TH0的输入值就会重新装载。图2.3定时器/计数器0,模式2:自动重装的8位定时器/计数器ver.1.06Howtouse定时器/计数器inW7100A图2.4所示为定时器0/计数器0模式3下的结构图:2个8位定时器/计数器。在这种模式下,定时器1和定时器0同时使用TH0和TL0寄存器进行操作。根据定时器0和定时器1的设定分别发生不同的定时/计数事件。TCON.6是定时器1的启动位。图2.4定时器/计数器0,模式3:2个8位定时器/计数器下面的章节将会介绍上图中定时器/计数器0的示例代码。2.1定时器08位定时器软件门控voidmain(void){TMOD=0x00;//定时器0,模式0,8位定时器,软件门控TH0=0;TL0=0;//TH0,TL0赋初值ET0=1;//允许定时器0中断EA=1;//开放全局中断TR0=1;//启动定时器0while(1);}voidint_test(void)interrupt1{EA=0;TF0=0;//定时器0中断标志位复位P0_3=~P0_3;//P0_3取反ver.1.07Howtouse定时器/计数器inW7100AEA=1;}通过TMOD寄存器将定时器0设置为模式0下的8位定时器,然后利用TH0和TL0设置其中断发生循环周期。设置完成后,将TR0置位来启动定时器0。如果发生中断,通过中断处理函数复位定时器0中断标志位;然后执行用户设定的中断事件。在本文档中,是对Port0.3端口进行取反操作。2.2定时器08位定时器硬件门控voidmain(void){TMOD=0x08;//定时器0:模式0,8位定时器,硬件门控TH0=0;TL0=0;
本文标题:如何使用W7100A的定时器计数器
链接地址:https://www.777doc.com/doc-6130825 .html