首页 > 编程语言 >单片机的主程序中为什么都要加一个while(1)?

单片机的主程序中为什么都要加一个while(1)?

时间:2025-01-07 17:56:03浏览次数:7  
标签:要加 主程序 ROM 程序 计数器 单片机 while

*** * C51 为什么都要加一个while(1)?******

while(1)的作用:
while(1) 是一个死循环 为了不让代码继续向下执行。

单片机中使用while(1),大部分:为了防止程序跑飞;
程序执行完之后 单片机的程序计数器 PC(程序指针) 并不会停止 而是会继续从ROM(总存储内存) 继续读取指令并执行,这样就会出现不确定的情况,导致程序跑飞的可能性增加。
加上while(1) 就会让程序停在原地,防止跑飞。

原则上讲,如果程序中没有加结尾的话,程序计数器会一直累加,继续执行 正常程序之后的 ROM空间里面的指令;ROM里面的指令一般都为0xFF, 若不是此时就需要看该条指令的含义;
如果是空的话,就会一直执行到最后 直至程序计数器溢出;
但程序计数器溢出之后的状态无法判断 有可能复位 有可能让单片机直接卡死在这里工作不了,此时就需要看单片机的具体设计了。

所以在主程序中 加上while(1) 是非常必要的。

出自:CSDN code_snow

标签:要加,主程序,ROM,程序,计数器,单片机,while
From: https://www.cnblogs.com/xff1218/p/18658050

相关文章

  • 51单片机--动态数码管显示
    点击查看代码/*动态数码管显示(数码管扫描) xff 2025/1/7 扫描方式:单片机直接扫描*/#include<REGX52.H>#include"Delay.h"voidNixieDisplay(unsignedintloc,num);voidmain(){ while(1) { NixieDisplay(1,1); NixieDisplay(2,2); Nix......
  • 基于单片机的速度里程表设计(论文+源码)
    1  系统方案本次智能速度里程表的总体架构如图2-1所示,在硬件上包括了STC89C52单片机,电机,显示模块,报警模块,DS1302时钟模块,超速检测模块,按键等等。在软件设计功能的功能上,按下开关按键驱动电机,由霍尔传感器来检测脉冲信号,模拟汽车行驶,并且可以通过霍尔传感器进行实时速度,如果......
  • 51单片机
    最近在接受51单片机培训,并且要完成一个课设。基于老师今天讲的定时器和前天讲的数码管的知识,迸发出灵感设计了一个计时器,开机即从0s开始计时,一直到60h,此时hmins三个时间都归零并重新计时(设置什么样的归零时间看自己需求),由于我只是对于c代码的使用较熟练一些,这里就不写硬件......
  • STM32 单片机 练习项目 LED灯闪烁&LED流水灯&蜂鸣器 未完待续
    个人学习笔记文件路径:程序源码\STM32Project-DAP&DAPmini\1-1接线图                        3-1LED闪烁图片新建项目新建项目文件选择F103C8芯片关闭弹出窗口拷贝资料在项目内新建3个文件夹Start、Library、UserStart文件拷贝从......
  • 基于51单片机的直流调速系统设计 
     摘要  在如今的电子产品中,不论是通讯设备还是家用电器、电子玩具等等,直流电机都得到了相关的应用,目前的直流电机已经由数字化走向实用化,即使能够满足功能需求,但可靠性和准准确定得不到保障,所以对于直流电机的调速控制是一个关键性的技术。本文主要研究利用51单片机控......
  • 高校单片机毕业设计选题大全(源码+原理图+PCB+洞洞板+开题报告+任务书等)
    1.基于单片机智能空气加湿器设计与实现2.基于单片机汽车疲劳驾驶监测设计与实现3.基于C51单片机矿井矿工作业安全监测设计4.基于C51单片机智能坐垫座椅设计与实现5.基于STM32单片机智慧图书馆系统设计与实现6.基于STM32单片机云平台居家老人健康监测系统设计7.基于STM......
  • 在开发移动端时为什么要加上viewport?
    在开发移动端网页时,加入viewport元标签的原因主要有以下几点:适应不同屏幕尺寸:移动端设备屏幕尺寸多样,从智能手机到平板电脑,它们的屏幕尺寸和分辨率各不相同。通过设置viewport,可以确保网页内容在不同设备上都能以合适的比例和布局显示。例如,通过设置width=device-width,可以让vi......
  • 【STC8H】STC8 系列单片机低功耗延时方法
    STC8 单片机低功耗延时方法单片机延时通常方法就是跑while循环,但在低功耗要求下可以利用定时唤醒方式使MCU在延时期间睡眠,降低功耗。以STC8G1K08为例:寄存器WKTCH^8为使能,其余15位用于控制唤醒时间。并且在唤醒后系统会继续从掉电语句的下一句执行。 延时计算按照公式推导......
  • 通信工程专业课设[音响放大器设计与制作、电梯内部控制器的设计、基于单片机的GRPSGSM
    通信工程专业课设各种课设总览①模电级课程设计-音响放大器设计与制作②数电课程设计-电梯内部控制器的设计③单片机课设-基于单片机的GRPSGSM系统设计`&`基于单片机的433M无线通信系统④FPGA课设-异步fifo设计⑤Protel课程设计-基于单片机的温湿度控制系统⑥信息论课设-......
  • 基于51单片机的智能扫地机器人设计
      摘   要  如今随着机械工业不断的发展,越多越多的工业产品出现在人们的生活中,代替做着原本人们生活中简单而枯燥的事情,智能扫地机器人就是这一种的一款,能够代替人力清洁小范围的空间,代替人力进行工作,这样的智能设备现在越来越占据人们的生活。本文主要是设计一......