欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

左右来回的流水灯 PROTEUS 和51单片机教程(附仿真文件+源代码)

程序员文章站 2022-07-12 22:40:15
...

左右来回的流水灯 PROTEUS 和51单片机教程:

左右来回的流水灯 PROTEUS 和51单片机教程(附仿真文件+源代码)
左右来回的流水灯 PROTEUS 和51单片机教程(附仿真文件+源代码)
程序源代码如下:

/*
左右来回的流水灯
*/
#include<reg51.h>
typedef unsigned char uint8;
typedef unsigned int uint16;

void delay(uint16 x)
{
uint8 i,j;
for(i = x; i > 0; i --)
for(j = 114; j > 0; j --);
}

void main()
{
uint8 b = 0, way = 0; //移动位数变量及移动方向变量
while(1)
{
if(way == 0) //根据way选择左移还是右移
P0 = ~(0x01 << b); //最低位的0被左移b位
else
P0 = ~(0x80 >> b); //最高位的0被右移b位

	 if( ++b == 8) 				  //如果移动到左端或右端
	 {
	 	b = 0;					  //b归0
		way = !way;				  //改变方向
	 }
	 delay(200);
}

}

最后,如果有什么意见或者建议欢迎您留言给我,让我们共同学习一起进步,
如果需要 程序完整源代码和 设计文件,请在下方留言或者私信我,看到后会第一时间回复。

谢谢!