单片机C语言流水灯移位指令

流水灯的设计内容:设计一组彩灯,4个以上,可以轮流显示。(1)四个灯首先依次从左到右点亮,间隔时间为1秒,共计四秒时间;(2)四个灯从右到左依次熄灭,间隔时间1秒。共计4... 流水灯的设计内容:
设计一组彩灯,4个以上,可以轮流显示。
(1)四个灯首先依次从左到右点亮,间隔时间为1秒,共计四秒时间;
(2)四个灯从右到左依次熄灭,间隔时间1秒。共计4秒时间;
用单片机C语言实现,我只要移位指令就好了。急,谢了!!
展开
 我来答
豆大根深
2011-01-10 · TA获得超过659个赞
知道小有建树答主
回答量:128
采纳率:0%
帮助的人:117万
展开全部
//没有编译过,大概思路就这样
#define P_LED P1; //定义到你自己的端口

void main(void)
{
unsigned char circledata=0x01,i=0;
while(1)
{
for(i=0;i<4;i++) //显示范围 P_LED.0:P_LED3
{
P_LED=circledata<<i;
Delay_ms(1000);//根据自己的晶振写延时1S的函数
}
circledata=0xfe;
for(i=3;i>=0;i--) //显示范围 P_LED.3:P_LED.0
{
P_LED=circledata<<i;
Delay_ms(1000);//根据自己的晶振写延时1S的函数
}
}
return;
}
sunzhengheng
推荐于2016-11-27 · TA获得超过176个赞
知道答主
回答量:40
采纳率:0%
帮助的人:38万
展开全部
移位指令为temp=temp<<1左移一位 temp=temp>>1右移一位
但是哥们,你这个用移位反而复杂了,四个灯的直接写就好了嘛
无非是0111间隔1秒0011间隔一秒0001间隔一秒0000
反过来就是熄灭咯
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
超级大木头人
2011-01-11
知道答主
回答量:55
采纳率:0%
帮助的人:23.4万
展开全部
#include<reg52.h>
#include<intrins.h>
#define uchar unsigned char
#define uint unsigned int
void delay(uint z) //延时函数
{
uint x,y;
for(z=x;x>0;x--)
for(y=110;y>0;y--);
}
void main()
{
uchar temp,i;
temp=0xfe;
while(1)
{ for(i=0;i<4;i++)
{
P1=temp;
delay(1000);
temp<<=1;

}
for(i=3;i>=0;i--)
{
P1=temp;
delay(1000);
temp>>=1;

}

}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
释然丶云淡风轻
推荐于2017-09-02 · 知道合伙人互联网行家
释然丶云淡风轻
知道合伙人互联网行家
采纳数:1235 获赞数:5789
参与北大青鸟网络工程师培训,从2011年从技术支持,擅长硬件维护,网站使用。

向TA提问 私信TA
展开全部
实现的代码如下:

[plain] view plaincopyprint?
#include<reg52 h="">
sbit LED0 = P1^0;
sbit LED1 = P1^1;
sbit LED2 = P1^2;
sbit LED3 = P1^3;
sbit LED4 = P1^4;
sbit LED5 = P1^5;
sbit LED6 = P1^6;
sbit LED7 = P1^7;
void delayms(unsigned int xms) //参考郭天祥书上的延时函数
{
unsigned int i,j;
for(i=xms;i>0;i--)
for(j=120;j>0;j--);//使用12MHZ晶振
}
void main()
{
while(1)
{
LED0 = 0;
delayms(100);
LED0 = 1;

LED1 = 0;
delayms(100):
LDE1 = 1;

LED2 = 0;
delayms(100):
LDE2 = 1;

LED3 = 0;
delayms(100):
LDE3 = 1;

LED4 = 0;
delayms(100):
LDE4 = 1;

LED5 = 0;
delayms(100):
LDE5 = 1;

LED6 = 0;
delayms(100):
LDE6 = 1;

LED7 = 0;
delayms(100):
LDE7 = 1;
}

}</reg52>
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式