微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > 延时2秒

延时2秒

时间:10-02 整理:3721RD 点击:
#include<reg52.h>
unsigned int count=0;
sbit A=P3^0;
void Time0_Init(void)
{
TMOD=0x01;
TH0=0x4c;
TL0=0x00;
ET0=1;
EA=1;
TR0=1;
}
void Time0_Int() interrupt 1
{
TH0=0x4c;
TL0=0x00;
count++;
}
void main(void)
{
Time0_Init();
if(count==40)
{A=1;
count=0;
}
}
请大神帮忙看看哪里有问题!

          while(1);?

应该加在哪里?

你是用了方式1?

从你的计数初值看来你应该是用了方式二,那么TMOD应该要改吧,应该是0x20

我用的是定时器C/T=0,方式1!初值50ms!循环四十次!达到2s,延时2s后让P3^0口为高电平,用来控制两线舵机旋转!
但是程序下到单片机后,不能驱动舵机旋转!

我学的计数初值是这样的:TH0=(65536-50000)/256;TH1=(65536-50000)%256;你可以试试,我这有图为证
我也是初学者,你学的两线舵机我不懂,,,


你好,他这个问题怎么解决啊?

你好, 可能我没说清楚,我计算初值是用下面这个软件,选好方式,设好定时时间久可以计算出TH0和TL0!


我也不知道,他没有给我回复!

不好意思,舵机我也不懂,主程序里面是不是要加while(1);//无限循环等待中断

求大神帮忙,江湖救急啊!

嗯, 我试试!谢谢!

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top