单片机C语言中的的死循环即while(1)有什么作用?详细说明

供稿:hz-xin.com     日期:2024-05-22
单片机C语言中的的死循环即while(1)有什么作用?详...???

一般而言,单片机程序中至少是有一个“死循环”的,这是为了保证单片机运行程序不“跑飞”,始终在“可控”之下。

while(1);
意义:这是一个死循环,代码不再向下执行。
用途:
1. 一般在调试代码时,为了检测一部分代码是否OK,防止后面的代码干扰执行结果,会在观测点加上while(1);
2. 有些代码检测到运行错误时,会抛出错误(打印、设置错误码),然后进入while(1);
3. 机器需要复位时,停止喂看门狗,进入while(1); 迫使看门狗超时,产生硬件复位


while( 1 ) { 代码 }
意义:这里将会重复执行{}中的代码
用途:
1. 单片机在不使用操作系统时,主程序一般都使用这种架构
2. 操作系统中的进程,执行任务时,有些也会使用这种架构
3. {}中的代码不停地检测某个条件,当条件符合时,跳出该循环,继续向下执行

单片机用这个死循环应该是为了使它一直运行,它运行结束的方法就是关闭电源,这是单片机的普遍用法。我同学在用keiluVision3编程时如果没有while(1),单片机只执行一遍。但是我在keiluVision4里去掉while(1)之后,单片机循环执行main()中的所有内容,但效果有时好像不太好。

一般在主程序中有个死循环一直运行,等待中断程序发生然后去处理中断程序。

让某程序段不断的重复执行

C语言里while里只包含一个常量是什么意思?这个循环的条件是什么?
答:就是WHILE的括号里只能有一个常量 用这个常量来控制WHILE循环多少次 也就是说 这个常量是WHILE循环的条件 WHILE(1)代表循环一直成立 也就是死循环 当然不只这么一种写法的 int i=0 while(i<10){ i++;} 上面这个代表循环10次 while(1=1){ } while(true){ } 上面两个代表死循环 ...

跪求51单片机(c语言)高手解答,图中main函数最后一句的while(1)作何解...
答:死循环,让程序始终执行这一条指令,而不是退出(有操作系统)或者继续往后执行未知的指令 时钟中断来了,就会到中断的响应函数执行,而中断执行完后,又会跑到while(1)继续死循环,等着下次中断的来临

单片机C语言中 WHILE(1)的含义?
答:原地转移,貌似死循环,实则等待中断的发生。中断后,执行:void IMER (void) interrupt 1 using 0 结束后,返回到:while(1);继续等待。

c语言中while的用法
答:while是循环流程控制,while的语法格式为 :while(condition){ //do something 1 } //do something 2 说明:①while循环的表达式是循环进行的条件,用作循环条件的表达式中一般至少包括一个能够改变表达式的变量,这个变量称为循环变量。②当表达式的值为真(非零)时,执行循环体;为假(0)时,则...

c语言while的用法
答:当n==1时执行while循环结构里的语句,当n不等于1时,则跳过该循环执行循环体外的语句。while 循环的格式:while (表达式){语句;} while 循环的执行顺序:当表达式为真,则执行下面的语句,语句执行完之后再判断表达式是否为真,如果为真,再次执行下面的语句,然后再判断表达式是否为真……就这样一直...

C语言中while(1)表示什么意思?
答:while(1) 表示无限循环。while的语法格式为 :while(condition){ //do something 1}//do something 2condition 为循环条件,每次判断condition是否为真,为真时执行while循环体中的语句块(代码中块1);为假时结束循环,执行后续语句(代码中块2)。这里condition为1 表示条件永远为真,一直执行循环...

C语言中死循环怎么做?
答:在C语言的循环中,无论是何种循环结构,都会在循环中指明退出条件,这个条件会是一个逻辑运算表达式。 要做死循环,只需把对应的退出条件置为恒为真即可。例:for循环。for循环的判断条件,是for后面括号中的第二条语句。由于for的特殊性,以下两种方式,均可以构建死循环。(1) for(expr1; 1; expr...

在C语言中用while语句时,当进去死循环时怎么让它跳出循环?
答:C#中,可以使用以下几种方式退出While循环。1、break语句。此语句是正常退出while的方法。可以在满足条件时,调用此语句退出循环。2、return语句。此语句是通过返回函数的方式退出循环。从编码规范上来说,不建议使用。会造成逻辑混乱,不易理解。3、throw exception语句。此语句通过抛出异常的方式退出while...

C语言中死循环怎么解决?
答:C语言中死循环怎么解决?首先应该将对应的退出条件置为恒为真,然后按照“while循环”“for循环 ”“do-while循环”三个循环模式分别描述。在这个过程中,还要注意管理好循环控制变量,使while 的条件有机会为FALSE,或在循环体中加入break,并使它有机会执行。另外,也可以设置循环计数变量。为了防止程序...

一道c语言题:以下程序中,while循环的循环次数是:
答:死循环。初值i=0 进入循环后有一句 if(i<1)continue;//此时if语句成立,执行continue continue语句就是跳过本次循环,重新进行while条件的判断,所以后面的i++没法被执行,i一直为0,所以永远跳不出i<10这个条件。