单片机如何让一个while循环运行一定的时间 int i=1000;while(i>;0){i-;}以上程序时一个简单地例子,到i=0时,就退出了循环,这样就延时了一段时间,STM32单片机程序有内置延时函数,可以直接调用。
单片机程序:while(1) ; //无限循环,防止程序跑飞。什么意思? 这一般用在仅仅依靠中断工作的场合,也就是说,单片机做完初始化后,之后的所有工作完全由中断产生时才完成相应的工作,比如日历等等。如果没有这句的话,程序就如流水一样永不回头的走了,执行完最后一句就寿终正寝。
51单片机加不加while(1) 都能无限循环?不是说不加不循环吗? 1、首先回答你,这个while(1)必须加,这点不用怀疑;2、为什么去掉还能运行,你检查下屏蔽后是否有重新编译重新烧录程序,如果没有那么现运行的还是以前的程序。3、不加while(1)的危害,在执行完第二个delay()函数后,pc指针(程序运行指针)即跳出了main函数,此刻程序指针就进入了一个未知的非法地址,也就是通常所说的程序跑飞了。那么跑飞了后为什么还能正常运行,这个原因是有的芯片在设计时有所就是对PC指针出了main函数后,进行了复位保护。4、总结,就是必须加上while(1),不论是否有复位保护。