延时程序 的使用方法求教

[复制链接]
1014|10
 楼主| guoyt 发表于 2021-5-9 19:04 | 显示全部楼层 |阅读模式
yufe 发表于 2021-5-9 19:05 | 显示全部楼层

void delay(int a)
{
      unsigned char i,j;
      for(i=a;i>0;i--)
       for(j=110;j>0;j--);
}
能够延时ams,具体看什么样的单片机了,处理速度越快,a值越大
hanwe 发表于 2021-5-9 19:09 | 显示全部楼层
void yanshi(uint xms)
{
   uint i,j;
   for(i=xms;i>0;i--)
  for(j=110;j>0;j--);
}
优先定义延时功能函数,定义形参uint形xms,进入for嵌套循环,达到延时目的
pangb 发表于 2021-5-9 19:10 | 显示全部楼层

void delay(u16 i)
{
   while(i--);
}
主函数里再写delay();括号里面写时间,为1的时候是10微秒。这是最简单的一个延时。
还有就是主程序里面需要短暂的延时的时候可以直接写个for的空循环。
llia 发表于 2021-5-9 19:12 | 显示全部楼层
延时可用延时函数,也可用延时语句。
wangpe 发表于 2021-5-9 19:14 | 显示全部楼层
下载一个单片机小精灵,很好用,输入自己想延时的时间就能出来程序。
langgq 发表于 2021-5-9 19:16 | 显示全部楼层
先定义一个
void delayms(uint k)
{
uint i,j;
for(i=k;i>0;i--)
for(j=110;j>0;j--);
}
然后后面调用
delayms(5);
里面的数值自己设定
wangzsa 发表于 2021-5-9 19:17 | 显示全部楼层
void delay(int a)
{
      unsigned char i,j;
      for(i=a;i>0;i--)
       for(j=110;j>0;j--);
}
zhanglli 发表于 2021-5-9 19:20 | 显示全部楼层

void delay_1ms(unsigned int mas)   //延时1ms
{
        uint i,j;
        for(i=0;i<mas;i++)
        for(j=0;j<110;j++);
}
wangzsa 发表于 2021-5-9 19:22 | 显示全部楼层
用个for循环就行了,用单片机精灵也可以。
 楼主| guoyt 发表于 2021-5-9 19:26 | 显示全部楼层
多谢大家讨论这么多哈,呵呵
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1018

主题

9067

帖子

3

粉丝
快速回复 在线客服 返回列表 返回顶部