100分急求单片机程序,答得好追分

来源:百度知道 编辑:UC知道 时间:2024/06/03 02:19:16
实现灯左右移动和闪烁
功能说明:单片机端口接八只LED,使端口P1做单一灯的变化:从P1.0开始先向左移3次,然后向右移2次,再闪烁4次,不断循环。

各位大大帮帮忙啊!

编程思路(采用C语言):
1、P10开始向左移:P10-->P17逐位由低电平变成高电平,移位后,高电平再变低电平,并循环3次;
2、P17开始向右移:P17-->P10逐位由高电平变成低电平,移位后,低电平再变高电平,并循环2次;
3、闪烁4次:P1口电平由低到高、再由高到低循环4次。

程序如下:
#include<reg51.h>
void main(void)
{
uchar i, j, t;
for(;;)
{
for(i=0;i<3;i++)
{
for(j=0,j<8,j++)
{
P1=1;
for(t=0;t<100,t++)//延时一定时间
P1=P1<<1;
}
}//左移3次
for(i=0;i<2;i++)
{
for(j=0,j<8,j++)
{
P1=128;
for(t=0;t<100,t++) //延时一定时间
P1=P1>>1;
}
} //右移2次
for(i=0;i<4;i++)
{
P1=255;
for(t=0;t<100;t++) //延时一定时间
P1=0;
} //闪烁4次
} //不断循环

留邮箱 发给你

要汇编的给你写个