大虾们帮刚入门菜鸟看看程序,恳请指导 <br /><br />谢谢<br /><br />/*****************************************<br />间隔300ms先奇数亮再偶数亮,循环三次;<br />一个灯上下循环三次;<br />两个分别从两边往中间流动三次,再从中间往两边流动三次;(这个还不会)<br />8个全部闪烁3次;<br />关闭发光管,程序停止。<br /><br /><br />******************************************/<br /><br /><br />#include <reg52.h><br />#include<intrins.h><br />#define uchar unsigned char<br />#define uint unsigned int<br />void delay(uint);<br />void main()<br />{<br /> uint x,y,z;<br /> uchar temp1,temp2,temp3,temp4;<br /> temp1=0xaa;<br /> temp2=0xfe;<br /> temp3=0x00;<br /> temp4=0xff;<br /> <br />/************************/<br /> for(x=6;x>0;x--) //间隔300ms先奇数亮再偶数亮,循环三次<br /> {<br /> P1=temp1;<br /> delay(340);<br /> temp1=_crol_(temp1,1);<br /> <br /> }; <br /><br />/************************/<br /> P1=temp4;<br /> delay(340);<br /> P1=temp2;<br /> for(x=3;x>0;x--) //一个灯左右循环三次<br /> {<br /> <br /><br /> for(y=7;y>0;y--) //向左流动7位<br /> {<br /> temp2=_crol_(temp2,1);<br /> P1=temp2;<br /> delay(340);<br /> };<br /> <br /> for(z=0;z<7;z++) //向右流动7位<br /> {<br /> temp2=_cror_(temp2,1);<br /> P1=temp2;<br /> delay(340);<br /> };<br /> };<br />/*************************<br />两个分别从两边往中间流动三次,再从中间往两边流动三次;<br />这个算法还不会,请大虾们给个解。谢谢。<br /><br />*************************/<br /><br /><br /><br /> for(x=3;x>0;x--) //8个全部闪烁3次<br /> {<br /> P1=temp4;<br /> delay(340);<br /> P1=temp3;<br /> delay(340);<br /><br /> } <br /> P1=temp4;<br />}<br /><br />/****************************/<br /><br />void delay(uint z)//延时<br />{<br /> uint x,y;<br /> for(x=z;x>0;x--)<br /> for(y=100;y>0;y--);<br />}<br /><br /> <br /> <br /> |
|