用keil写的来回流水灯程序,要求左右来回的
1个回答
展开全部
#include <reg52.h>
#include <intrins.h>
#define uchar unsigned char
#define uint unsigned int
void DelayMS(uint x)
{
uchar t;
while(x--)
{
for(t=120;t>0;t--);
}
}
void main()
{
uchar i;
P2=0x01;
while(1)
{
for(i=7;i>0;i--)
{
P2=_crol_(P2,1);
DelayMS(150);
}
for(i=7;i>0;i--)
{
P2=_cror_(P2,2);
DelayMS(150);
}
}
}
不懂就问,要根据你电路图的连接来适当调整管脚定义。
#include <intrins.h>
#define uchar unsigned char
#define uint unsigned int
void DelayMS(uint x)
{
uchar t;
while(x--)
{
for(t=120;t>0;t--);
}
}
void main()
{
uchar i;
P2=0x01;
while(1)
{
for(i=7;i>0;i--)
{
P2=_crol_(P2,1);
DelayMS(150);
}
for(i=7;i>0;i--)
{
P2=_cror_(P2,2);
DelayMS(150);
}
}
}
不懂就问,要根据你电路图的连接来适当调整管脚定义。
更多追问追答
追答
你写的有点啰嗦了,j和k要了干嘛,
还有_crol_是循环左移,你移完了不延时的话也看不出来啊,所以要用一个for循环,每移动一次就延时一次。
把我上面程序里的P2改成P1就可以了。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询