void delay(uint i) { uint t; while(i--) { for(t=0;t<120;t++); } } void main() { P1=0xfe; while(1) { delay(250); P1=_crol_(P1,1); } }
时间: 2024-04-28 07:22:17 浏览: 85
常用的延时函数delay()
5星 · 资源好评率100%
这段代码是一个简单的循环移位程序,可以将 P1 口上的数据进行循环左移并输出,同时通过 delay 函数控制了移位的速度。
具体实现方式为:在主函数 main 中,首先将 P1 口上的数据设置为 0xfe,然后进入一个死循环,不断执行左移和延时操作。
在循环中,调用 delay 函数,传入参数 250,表示需要延时的时间。delay 函数会进入一个 while 循环,每次循环将 i 减 1,直到 i 的值为 0。在每次循环中,使用一个 for 循环进行 120 次的空循环,以达到延时的效果。
延时结束后,回到主函数中,使用 _crol_ 函数对 P1 口上的数据进行循环左移,并将移位后的结果赋值回 P1 口。这样,程序就可以不断地循环移位输出 P1 口上的数据,并通过延时控制移位速度。
阅读全文