51单片机如何用C程序中的_crol_和_cror_实现流水灯来回显示?

51单片机如何用C程序中的_crol_和_cror_实现流水灯来回显示?,第1张

for(i=0i<8i++)

{

P2=(1<<i)

delay()

}

for(i=0i<8i++)

{

P2=(1<<(7-i))

delay()

}

用个移位处理就行了 set(void) { 流水灯.c * 描述 : 该程序实现LED的流水灯显示。 该程序用于学习 LED流水本例中是调用的 intrins.h 中

程序利用循环移位函数_crol_和_cror 形成来回滚动的效果 #include #include #define ... R17 220R //名称:花样流水灯 //说明:16 只LED 分两段组按预设的多种花样变换显示

1、首先要写入单片机的头函数,定义单片机P1口的8个管脚,让他们分别代表流水灯的8个led。

2、写一个大约一小时的延时函数,为了清楚的看到流水灯的、效果。

3、下面是流水灯的主函数,流水灯一个点亮后一个熄灭反复循环点亮熄灭。

4、这样流水灯就可以反复循环了。把程序下到仿真软件或者是开发板,进行仿真即可完成。

#include<reg51.h>

#include<intrins.h>

#define uchar unsigned char

#define uint unsigned int

//延时

void DelayMS(uint x)

{

uchar i

while(x--)

{

for(i=0i<120i++)

}

}

//主程序

void main()

{

uchar i

P2=0x01

while(1)

{

for(i=0i<7i++)

{

P2=_crol_(P2,1)//P2 的值向左循环移动

DelayMS(150)

}

for(i=0i<7i++)

{

P2=_cror_(P2,1)//P2 的值向右循环移动

DelayMS(150)

}

}

}


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/11429477.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-16
下一篇 2023-05-16

发表评论

登录后才能评论

评论列表(0条)

保存