void delay(unsigned int z){ while(z--);}这个函数的延时精度你要测试一下,或者通过反汇编看下指令就知道了。一条单指令是1us,但是一个while(z--);汇编时由多条指令组成,估计需要10us执行完毕,所以你的参数50000×10us=500ms
需要帮你写吗