这个软件延时的代码有啥问题

img

这个是一段51单片机的代码,用了个小灯来测试,但就是不知道为什么会卡在循环那出不来。能否帮忙看看。

把全部的程序截个图,应该是程序设计的问题~

参考GPT和自己的思路:这段代码的问题在于,在内层while循环中,j只有当它减到0时才会退出循环,但是j的初始值为217,每次减1达到0需要进行217次循环,而外层循环的i只有减到0时才会退出,因此总共需要进行的循环次数为217*2=434。这会造成很大的延时,并且会让程序看起来像是卡死了。如果需要实现延时功能,可以考虑使用定时器中断或者其他更加高效的延时算法。

不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^