找回密码
 注册
关于网站域名变更的通知
查看: 306|回复: 3
打印 上一主题 下一主题

求助DelayX10us单片机函数到底延时多久?

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2022-3-29 10:40 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
求助以下两个DelayX10us函数循环有没有区别啊?51单片机中在设定温度传感器的等待时间的时候,为什么前者不能初始化,后者就能初始化呢?1 n' I1 y3 l( }' K# @
& Q0 S2 p2 \) f) t; z0 v" W+ h
void DelayX10us(unsigned char t){6 p- ]2 K! [! z+ e& N5 A
        while(t--){$ l: i. Q3 X+ ~6 ^9 G2 u
                _nop_(); _nop_(); _nop_();, z) v1 x% O2 j. l
                _nop_(); _nop_(); _nop_();
* P  z% N  M+ d8 C  A* m                _nop_(); _nop_(); _nop_();( h% s, I! `4 G/ q7 e
        }
! Z+ T* ^  Z! U: _, J}
  _; H. O' R- J$ p; Nvoid DelayX10us(unsigned char t){! D1 K9 ]# I4 M, k/ }4 i( K8 T
        do{5 Z9 A2 Y& D6 a+ Y7 U
                _nop_(); _nop_(); _nop_();
, G" t# v* Q5 U1 [( W                _nop_(); _nop_(); _nop_();* ~: W: D/ T3 \; x/ S3 \$ D
                _nop_(); _nop_(); _nop_();
% a* s0 A! r# b        }while(--t);
( j5 r: L& Q' T# w* q  s, \}" |& Y+ X( O+ Q+ y/ k/ V5 @3 @8 M0 s
. u  T5 T! B1 B) m! |
—————————————————————
& ~' M2 z' A& Z7 ~1 ]1 Pbit Get18B20Ack(){6 w) z% {/ _, L7 G
        bit ack;) Z3 G3 a- b( x- l' M9 F; b
) l2 ^/ b) T; m& c: P
        EA = 0;
3 Z7 P" r* {' ~8 p+ g- o4 a+ H  M        IO_18B20 = 0;
$ J7 s. U* i" a0 ~2 v# _: |6 h8 |" }! w        DelayX10us(50);2 O( ^, {. d6 l) b4 v1 r
        IO_18B20 = 1;
: {; R2 _8 z. G3 p* ~        DelayX10us(6);
  H6 w" J0 X0 e; l- _: K8 o# h" L        ack = IO_18B20;
3 @* @& g& k1 g3 z2 w( A( \5 v6 f        while(!IO_18B20);
% ~& n2 d% T5 `3 u% h/ g        EA = 1;
5 Z8 V0 F+ V5 j+ n3 S# b
! M) Z' j) ~1 e. O, {        return ack;3 ~& k; D; Z+ l) k2 E
}! o! o2 b; W  _% |5 Y: s
9 f$ O( W  M5 w2 W- I& y  g

该用户从未签到

2#
发表于 2022-3-29 13:23 | 只看该作者

9 n& E7 I1 D0 m: @5 K; O5 Bdo while  和 while语句的区别   
. X# ?1 T9 N) L0 Z  do while  是指先运行语句 之后再判断,也就是while(1)7 M; I9 w" H6 ~+ F, J7 t% z
而while 是指先进行判断再执行语句

该用户从未签到

3#
发表于 2022-3-29 13:37 | 只看该作者
8 F, [2 m6 R) c  o
do while  和 while语句的区别      do while  是指先运行语句 之后再判断,也就是while(1) 而while 是指先进行判断再执行语句

该用户从未签到

4#
发表于 2022-3-29 14:28 | 只看该作者
do while  和 while语句的区别   # G( z: F% u; r" d
  do while  是指先运行语句 之后再判断,也就是while(1)9 |, c8 X8 X6 W5 w0 Y
而while 是指先进行判断再执行语句
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-8-5 04:01 , Processed in 0.125000 second(s), 23 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

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