
delay(unsigned int z)
{
unsigned int x,y
for(x=zx>0x--)
for(y=110y>0y--)
}
延时时间为t=z微秒=0.001*z秒
2.也可以用定明嫌时/计数器
void time0() interrupt 1
{
TH0=(65536-50000)/256
TL0=(65536-50000)%256
tt++
}
当激脊手tt=20时刚好是1秒
#include<reg52.h>sbit output=P0^0
void init()
{
TMOD|=0x10 //设置定时器1工笑段作方式1
TH1=(65535-1000)/256 //定时器1设定初始值 1ms中断一次即频率500Hz
TL1=(65535-1000)%256
EA=1 //开总中碰备誉断
ET1=1 //开定时器1中断
TR1=1 //启滚散动定时器1
}
void t1() interrupt 3
{
TH1=(65535-1000)/256
TL1=(65535-1000)%256
output=!output
}
void main()
{
init()
while(1)
}
一般情况下是要根据你所使用的单片机的晶振来确定的,如果晶振频率为24MHZ就不用改了,如果不是梁升的话就应该改为晶振频率。橡烂老改的时候先打开keil,在左上方找Target1,找到后单击右键,在d出的窗口中选择第一个,会d出一个新的窗历镇口,在最上面一行选择target,把Xtal后的频率改为你所使用的晶振的频率就可以了。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)