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

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

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
求助以下两个DelayX10us函数循环有没有区别啊?51单片机中在设定温度传感器的等待时间的时候,为什么前者不能初始化,后者就能初始化呢?
9 C4 |# h$ J- z3 {- m
+ |/ U) k+ |: u9 P7 n; nvoid DelayX10us(unsigned char t){
- c- m# F, X+ r7 l        while(t--){9 S) [! d/ t+ Q3 D1 ^  R0 A
                _nop_(); _nop_(); _nop_();
% z6 V* i% B" f3 y. o, x                _nop_(); _nop_(); _nop_();
  t" Y; U, v3 n  Z2 s" b( ^                _nop_(); _nop_(); _nop_();* W0 I+ D1 ^3 B/ H- Y
        }6 B# S1 t$ u; Z5 Q* L1 ~
}4 V& [% c( u+ e% j& U) R8 \
void DelayX10us(unsigned char t){
( z. e# H# u2 S7 ]* h4 ]7 X7 y        do{
, [6 t7 ]  h; h, _                _nop_(); _nop_(); _nop_();
, d+ C& v1 n& S. M+ U; F" N                _nop_(); _nop_(); _nop_();/ U6 _$ `0 Z) N6 c+ Q4 s
                _nop_(); _nop_(); _nop_();9 t1 x1 B# `( m& K
        }while(--t);) _# b$ {. I& l$ c, I& [  w
}8 t6 [( m+ g+ ^% i+ \

- W3 |; \6 k$ f- V' V6 X  |—————————————————————! i1 C- ^& ]) w% W8 Z+ `
bit Get18B20Ack(){
' B, u+ O& F) [; A& a- P7 v        bit ack;
! a6 {) e  G" ~6 t8 [" k5 |7 T! e. o8 x4 E) z' w/ O# |5 w
        EA = 0;/ ^2 r. n8 W; R& e3 h& H$ C. R
        IO_18B20 = 0;
1 E2 O: j9 @& L- }. T6 |        DelayX10us(50);
  g5 A- U; H; S  m# u' y: r+ C% H* `1 M        IO_18B20 = 1;
: B* y  l7 _: T        DelayX10us(6);
" i3 `# k/ {: n6 O5 m        ack = IO_18B20;2 @4 _! r% H! y7 K
        while(!IO_18B20);
% Z- G  [( Q0 O) E% K        EA = 1;
8 z) M! C9 b; E. G
( j+ ~! q! J$ n. J% h8 I        return ack;
7 A5 N: E- J, e) r; G4 o}
. R: \* X% U' a' u& A5 K- {& _. W# A. g. D* k6 y

该用户从未签到

2#
发表于 2022-3-29 13:23 | 只看该作者
8 Q" m3 [9 U, B
do while  和 while语句的区别   6 _0 y( ~' }! T0 ?) z% }
  do while  是指先运行语句 之后再判断,也就是while(1)
5 c! e  w- {. g, n( O$ h而while 是指先进行判断再执行语句

该用户从未签到

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

# C# {' c$ |, G: e( u) edo while  和 while语句的区别      do while  是指先运行语句 之后再判断,也就是while(1) 而while 是指先进行判断再执行语句

该用户从未签到

4#
发表于 2022-3-29 14:28 | 只看该作者
do while  和 while语句的区别   
1 D# a' v, g8 E3 ~; `  do while  是指先运行语句 之后再判断,也就是while(1)
7 g" M% b3 x: l# ~& }2 F9 \: o而while 是指先进行判断再执行语句
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-7-18 07:24 , Processed in 0.109375 second(s), 23 queries , Gzip On.

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

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

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