问答

汇集网友智慧,解决技术难题

Bobby13

TA的家园币:244  

  • 点亮流水灯只能用延时函数吗?

    本人用delay函数可以成功完成流水灯,但是用for却失败了,问了C语言老师,他也不清楚,请问该如何修改呢?谢谢。/*成功*/。#include#include#defineuintunsignedint#defineucharunsignedcharuchartemp;voiddelay();voidmain(){temp=0xfe;P1=temp;while(1){temp=_crol_(temp,1);delay();P1=temp;}}voiddelay(){uintx,y;for(x=1000;x>0;x--)for(y=200;y>0;y--);}/*失败*/#include#includesbitp1_1=P1^0;#defineucharunsignedchar//宏定义#defineuint2unsignedintuchartemp;//字符型,要8位的,uchar是8位的unsignedinta;voiddelay(uint2);voidmain(){temp=0xfe;p1_1=temp;while(1){temp=_crol_(temp,1);uint2x,y;a=50000;p1_1=temp;while(a--);for(x=130;x>0;x--)for(y=452;y>0;y--);a=50000;p1_1=temp;while(a--);for(x=130;x>0;x--)for(y=452;y>0;y--);}}