找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 5745|回复: 10
收起左侧

51单片机延时函数delay()里面最大写多少

[复制链接]
ID:261451 发表于 2018-6-15 14:21 | 显示全部楼层 |阅读模式


/**1ms延时函数**/
void delay(uint z)
{
   uint x,y;
        for(x=z;x>0;x--)
                for(y=110;y>0;y--);
}
回复

使用道具 举报

ID:261451 发表于 2018-6-15 14:29 | 显示全部楼层
delay()的括号里面最大写多少呢,是由z的类型uint 决定么 ,0~65535
回复

使用道具 举报

ID:261451 发表于 2018-6-15 14:48 | 显示全部楼层
还有就是可以写多个delay()增加延时么,比如、
void main()
{
delay(1000);
delay(1000);
  .....
delay(1000);
}
这样
回复

使用道具 举报

ID:352606 发表于 2018-6-15 17:23 | 显示全部楼层
这要看你Z的定义及后面的定义是多少位的了 U8 254 U16 65535 类推
回复

使用道具 举报

ID:261451 发表于 2018-6-15 17:53 | 显示全部楼层
scordl 发表于 2018-6-15 17:23
这要看你Z的定义及后面的定义是多少位的了 U8 254 U16 65535 类推

明白了,谢谢
回复

使用道具 举报

ID:352637 发表于 2018-6-15 18:07 | 显示全部楼层
2的16次方  因为 uint最该占16位
回复

使用道具 举报

ID:234075 发表于 2018-6-15 23:35 | 显示全部楼层
楼主自己的理解都是正解~~
回复

使用道具 举报

ID:352754 发表于 2018-6-16 08:35 | 显示全部楼层
如果你的晶振是12M的话,就是执行一条语句是1us,那就是10
回复

使用道具 举报

ID:347510 发表于 2018-6-16 14:02 | 显示全部楼层
少用这类延时,最好用定时器计数延时,过去我也是用这种,程序大了不好用.
回复

使用道具 举报

ID:11804 发表于 2018-6-16 15:21 | 显示全部楼层
最大是65535。
回复

使用道具 举报

ID:352877 发表于 2018-6-16 15:42 | 显示全部楼层
这种延时不是很精确
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表