m0_74062664 2022-11-01 15:29 采纳率: 80%
浏览 46
已结题

单片机的while语句

对单片机还不太了解,想知道下面的while语句是什么意思
#include<reg52.h>
sbit D2=P1^2;
unsigned int a;
void main()
{
while(1)
{
a=50000;
D2=0;
while(a--);

        a=50000;
        D2=1;
        while(a--);
}

}

  • 写回答

1条回答 默认 最新

  • dceacho 2022-11-01 16:12
    关注

    while(逻辑值)
    {
    一些动作
    }
    小括号里就两种情况假0,真1(或者非0)
    当小括号里的表达式,注意是表达式,最终的结果为真时就一直执行大括号里的 ”一些动作"

    先来第一个while

    void main()
    {
    while(1)
    {
    

    while(1), 小括号里是个常数1,所以这个表达式的结果就是1,所以它一直为真,它这一层的大括号里的内容就会一直执行

    然后看第二个

    a=50000;
    D2=0;
    while(a--);
    
    

    while(a--); 你可以把省略掉的大括号加上
    while(a--)
    {
    ;//空操作
    }
    每执行一次大括号里的内容就a--一次,一直这样直到a--到0就结束大括号里的循环,从而达到延时目的

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 11月10日
  • 已采纳回答 11月2日
  • 创建了问题 11月1日

悬赏问题

  • ¥20 有人知道这种图怎么画吗?
  • ¥15 pyqt6如何引用qrc文件加载里面的的资源
  • ¥15 安卓JNI项目使用lua上的问题
  • ¥20 RL+GNN解决人员排班问题时梯度消失
  • ¥15 统计大规模图中的完全子图问题
  • ¥15 使用LM2596制作降压电路,一个能运行,一个不能
  • ¥60 要数控稳压电源测试数据
  • ¥15 能帮我写下这个编程吗
  • ¥15 ikuai客户端l2tp协议链接报终止15信号和无法将p.p.p6转换为我的l2tp线路
  • ¥15 phython读取excel表格报错 ^7个 SyntaxError: invalid syntax 语句报错