标题: [求助]TMOD的写法。 [打印本页]

作者: 单斗鱼    时间: 2010-4-18 14:25
标题: [求助]TMOD的写法。
如何用C语言来写TMOD? 例:使用用定时器功能,10秒计时,
作者: zjjhtony    时间: 2010-4-22 11:19
                        //      T1      |      T0
                        //GATE|C/T|M1|M0|GATE|C/T|M1|M0
TMOD=0X01      // 0    0   0  0   0   0   0  1
                        //定时器0设置为16位定时器,可用定时50000×200=10 000 000(us)=10S

作者: s393936863    时间: 2010-8-9 17:34

#include<reg52.h>
#define uint unsigned int //宏定义
#define uchar unsigned char、//宏定义
uint i;
void inter0(); 
void main()
{

TMOD=0x01; //定时器中断0.,方式1
TH0=(65536-50000)/256; //设定初值 定时为50ms
TL0=(65536-500000)%256;  //设定初值 定时为50ms
EA=1;  //开总中断
ET0=1; //开定时器0中断
TR0=1; //启动中断
}

 

void inter0() interrupt 1  //中断程序

{

TH0=(65536-50000)/256;

TL0=(65536-500000)%256;

i++;

if(i==200)//i=200即10s

   {

;  //这部分自己写

    }

}


作者: angang    时间: 2010-8-14 17:11
以下是引用s393936863在2010-8-9 17:34:22的发言: #include#define uint unsigned int //宏定义#define uchar unsigned char、//宏定义uint i;void inter0();  void main(){ TMOD=0x01; //定时器中断0.,方式1TH0=(65536-50000)/256; //设定初值 定时为50msTL0=(65536-500000)%256;  //设定初值 定时为50msEA=1;  //开总中断ET0=1; //开定时器0中断TR0=1; //启动中断}   void inter0() interrupt 1  //中断程序 { TH0=(65536-50000)/256; TL0=(65536-500000)%256; i++; if(i==200)//i=200即10s    { ;  //这部分自己写     } } 补充一句,中断函数不用声明
作者: 吴旭明    时间: 2010-8-16 00:54
哈哈 啊   啊   啊啊




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1