按键一接单片机P3_1,按键2接P3_0
8个流水灯接P2口文章来源:https://www.toymoban.com/news/detail-504664.html
以下是代码:文章来源地址https://www.toymoban.com/news/detail-504664.html
#include <regx52.H>
#include <INTRINS.H>
//延时函数,xms等于1,此函数延时一毫米
void DelayMs(unsigned int xms)
{
unsigned char i, j;
while(xms){
i=2;
j=239;
do{
while(--j);
}while(--i);
xms--;
}
}
//单片机不一样的自行理解,或者问我
void main(){
unsigned char i;
unsigned int temp;
while(1){
//如果按键1按下
if(P3_1==0){
temp=0xfe;
DelayMs(20);
while(P3_1==0);
for(i=0;i<8;i++){
//先点亮P2端口的一个led灯,二进制值为:11111110
P2=temp;
//需要引入头文件:#include <INTRINS.H>,第一个变量用来控制位,第二个用来控制每次移动的位数。及流水灯向左移动
temp=_crol_(temp,1);
//每次移动一个,延时500毫秒
DelayMs(500);
}
//移动完,将P2口赋0
P2=0xff;
}else if(P3_0==0){
temp=0x7f;
DelayMs(20);
while(P3_0==0);
for(i=0;i<8;i++){
P2=temp;
temp=_crol_(temp,-1);
DelayMs(500);
}
P2=0xff;
}
}
}
到了这里,关于51单片机通过两个按键控制流水灯方向的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!