左右来回的流水灯 PROTEUS 和51单片机教程(附仿真文件+源代码)
程序员文章站
2022-07-12 22:40:15
...
左右来回的流水灯 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);
}
}
最后,如果有什么意见或者建议欢迎您留言给我,让我们共同学习一起进步,
如果需要 程序完整源代码和 设计文件,请在下方留言或者私信我,看到后会第一时间回复。
谢谢!