我想用51单片机定时器一在方式一下延时一秒的函数。但是实际结果很快。不正常
什么叫“先编写50毫秒循环20次为一秒”
你怎么知道是50毫秒。
给你一个例子
#include
void InitTimer0(void)
{
TMOD = 0x01;
TH0 = 0x0FC;
TL0 = 0x18;
EA = 1;
ET0 = 1;
TR0 = 1;
}
void main(void)
{
InitTimer0();
while(1);
}
void Timer0Interrupt(void) interrupt 1
{
TH0 = 0x0FC;
TL0 = 0x18;
//把你的定时中断代码放在这里
}
main()
{
TMOD=0x10;
.....
}
编程题 设MCS-51单片机系统中晶振频率为12MHz,欲使用定时器\/计数器1...
while(1){ Delay1S(1);\/\/延时1秒 Delay1S(2);\/\/延时2秒 Delay1S(3);\/\/延时3秒 Delay1S(4);\/\/延时4秒 } } Delay1S函数是调用时才开始计时,根据需要的定时长度到时停止计时。如果定时精度要求不高,可以不用在中段服务程序中关闭定时器,每次调用误差也就在50ms。可以用KEIL仿真看一下实际...
51单片机定时器什么时候用方式1,什么时候用方式2?
方式2是自动重装模式,少了两条重装计数器初值的语句,在中断频繁的情况下,明显可以提高CPU的工作效率 例如用定时器模拟PWM波,频率要想达到100KHZ,每次中断间隔只有10us,即使主程序什么也不干,中断程序在10us内完成也很困难,这时采用自动重装模式就很有效果 但方式2是8位计数器、定时器,一次定时时...
设MCS-51单片机使用的晶振是12MHz,欲使用定时器\/计数器1实现50ms定时中...
不管使用什么工作方式都是可以完成的,这个取决于你设置的定时\/计数器的初值。下面使用方式一和方式二来分别说明。一、使用方式一:晶振频率为12MHz,机器周期为1us,50ms时间需要计数50000次,故计数器初值为(65536-50000),65536是因为方式一中,定时\/计数器的最大值为65536(2^16),当然写程序时不...
怎样使用51单片机的定时器?
51单片机定时器的使用 51单片机定时器\/计时器的使用 步骤:1、 打开中断允许位:对IE寄存器进行控制,IE寄存器各位的信息如下图所示:EA: 为0时关所有中断;为1时开所有中断 ET2:为0时关T2中断;为1时开T2中断,只有8032、8052、8752才有此中断 ES: 为0时关串口中断;为1时开串口中断 ET1:...
...51单片机的晶振频率为12MHZ,使用定时器1工作方式1中断方式在P1输出周...
include <reg51.h>void InitTimer1(void){ TMOD = 0x10;\/\/定时器1 方式1 TH1 = 0x3C;\/\/12Mhz晶振,定时50ms TL1 = 0x0B0; EA = 1; ET1 = 1; TR1 = 1;}void main(void){ P1=0xff; InitTimer1(); while(1);}void Timer1Interrupt(void) interrup...
51单片机的定时器有几种工作模式?
51单片机的定时器T1具备三种工作模式,分别是方式0、方式1和方式2。在以下条件下,定时器T0会被启动:INT0引脚处于高电平状态且TR0置位;同理,定时器T1则是在INT1引脚处于高电平状态且TR1置位时启动。对于MCS-51单片机,定时器T0提供了四种工作模式,包括方式0、方式1、方式2和方式3。而定时器T1则...
AT89C51单片机 用定时器1,方式0定时1s的C语言程序怎么写
(这是我同学编的,拿来给你)include <reg51.h> include <intrins.h> unsigned char i;void main(){ TMOD=0x00;TH1=0x3c;TL1=0xb0;EA=1;ET1=1;TR1=1;while(1){ if(i==20){ i=0;\/\/下面写你要处理的的其他程序,你只要了定时1s。} } } void a(void) interrupt 3 { unsigned ...
51单片机当定时器在方式一下晶振频率为12MHZ请计算最短定时时间和最长...
最长定时时间65536us,初值为0,65536个脉冲后溢出,最短定时1uS,初值为65535,但是由于进出中断或判断溢出标志都需要时间,因此lus的定时极不准确
51单片机中用定时器定时1毫秒,怎么编写
假设晶振为12MHz,不用中断时程序语句如下:TMOD=0x01;\/\/定时器0工作方式1 TH0=(65536-1000)\/256;\/\/装入初值 TL0=(65536-1000)%256;TF0=0;\/\/清溢出标志;TR0=1;\/\/启动定时器0 while(TF0==0);\/\/等待定时时间到 TR0=0;TF0=0;...
晶振频率为12MHz的MCS-51单片机,使用定时器1以定时方法在P2.0输出周期...
定时160us。输出一次高电平,四次低电平。即可。程序如下:ORG 0000H MOV TMOD, #20H MOV TH1, #(256 - 160)MOV TL1, TH1 SETB TR1 LP1:SETB P2.0 MOV R2, #5 LP2:JNB TF1,CLR P2.0 CLR TF1 DJNZ R2, LP2 SJMP LP1 END ...