请高手帮忙翻译一下这个段程序。
这是一段从左到右流水灯的单片机程序,请高手帮忙编译一下,有一些小地方不太清楚。#include<reg52.h>#include<intrins.h>#defineuch...
这是一段从左到右流水灯的单片机程序,请高手帮忙编译一下,有一些小地方不太清楚。
#include <reg52.h>
#include <intrins.h>
#define uchar unsigned char
#define uint unsigned int
void DelayMS(uint x)
{
uchar i;
while(x--)
{
for(i=120;i>0;i--);
}
}
void main()
{
P0 = 0xFE;
while(1)
{
P0 = _crol_(P0,1);
DelayMS(150);
}
} 展开
#include <reg52.h>
#include <intrins.h>
#define uchar unsigned char
#define uint unsigned int
void DelayMS(uint x)
{
uchar i;
while(x--)
{
for(i=120;i>0;i--);
}
}
void main()
{
P0 = 0xFE;
while(1)
{
P0 = _crol_(P0,1);
DelayMS(150);
}
} 展开
1个回答
展开全部
void DelayMS(uint x)//延时x毫秒
{
uchar i;
while(x--)
{
for(i=120;i>0;i--);
}
}
void main()
{
P0 = 0xFE;
//P1.0控制的灯点亮
while(1)
{
P0 = _crol_(P0,1);//循环左移1位,//例如0xfe=11111110
左移1位后为0xfd=11111101(P1.1控制的灯亮
DelayMS(150);)//延时150毫秒
while循环这一段相当于反复执行
P0=0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe,为P0为0的位控制的灯点亮,循环点亮P1.0~P1.7对应的灯,
}
}
{
uchar i;
while(x--)
{
for(i=120;i>0;i--);
}
}
void main()
{
P0 = 0xFE;
//P1.0控制的灯点亮
while(1)
{
P0 = _crol_(P0,1);//循环左移1位,//例如0xfe=11111110
左移1位后为0xfd=11111101(P1.1控制的灯亮
DelayMS(150);)//延时150毫秒
while循环这一段相当于反复执行
P0=0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe,为P0为0的位控制的灯点亮,循环点亮P1.0~P1.7对应的灯,
}
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询