十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
#include stdio.h
创新互联建站是一家专注于成都网站制作、成都网站建设与策划设计,金凤网站建设哪家好?创新互联建站做网站,专注于网站建设十多年,网设计领域的专业建站公司;建站业务涵盖:金凤等地区。金凤做网站价格咨询:18980820575
#include stdlib.h
int main()
{
Sleep(1000); //延迟1秒
putchar('\a'); //响铃
return 0;
}
请采纳。
可以用以下两种方式
1.sleep(n);n是以毫秒为单位的;
2.delay(n);n是以毫秒为单位的;
例如延迟一秒是sleep(1)或者是delay(1000);
unsigned char rSecondCount; //秒计时数
unsigned char rMinuteCount; //分计时数
sbit IsOneSecondReach;
sbit Pulse_Sec=P1^0;
sbit Pulse_Min=P1^1;
main()
{
rSecondCount=0;
rMinuteCount=0;
TH1=0x3C;
TL1=0xAF; //定时器50ms产生一次中断 (FFFF-3CAF)us
MOD = 0x10; //定时器1工作于模式1,(用工作于模式2也可以,而且更 简便)
TR1=1; //使能定时器1
ET1=1; //开中断
EA=1; //开全局中断
while(1)
{
if (IsOneSecondReach)
{
IsOneSecondReach = 0;
//do something,如果一秒延时标志为1,则清除此标志,等待下次1秒,在此处
//执行需要执行的程序
}
}
}
/* 定时器50ms产生一次中断 */
void Timer(void) interrupt 3
{
/* 重新载入T1参数 */
TH1=0x3C;
TL1=0xAF;
/* 一秒累加 */
rSecondCount++;//秒计时+1
if (rSecondCount==20) //1sec到,50ms*20
{
IsOneSecondReach = 1;
}
}
//
脉冲宽度为50ms,如果有其他要求的话,修改T1参数和“秒分”的参数凑下就行了.