C51实现流水灯-创新互联
文章目录
一、实验要求
网页标题:C51实现流水灯-创新互联
新闻来源:http://azwzsj.com/article/doohsc.html
- 一、实验要求
- 二、实验代码和原理图
- 1.代码
- 2.原理图
- 总结
一、实验要求
1、 先八盏灯从左至右依次点亮,同一时刻仅有一盏灯处于被点亮状态,每盏灯亮0.5s,然后八盏灯从右至左依次点亮,同一时刻仅有一盏灯处于被点亮状态,每盏灯亮0.5s,循环两遍;
2、 八盏灯同时闪烁,亮1s,灭0.5s;,实现4次;
3、 上述过程周而复始的循环运行;
代码如下(示例):
#include"reg51.h"
#include"intrins.h"
#define uchar unsigned int //起小名
#define uint unsigned int //+1
uchar code ledcode[]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80}; //共阴极码表
void delay(uint n)//延时函数
{uchar j;
while(n--)
for(j=0;j<113;j++);
}
int main()
{uchar i,temp;//temp控制次数
while(1)
{ temp=2;
while(temp)//要求1
{ for(i=0;i<8;i++)
{ P0=ledcode[i]^0xFF;
delay(300);
P0=0xFF;
}
temp--;
}
temp=2;
while(temp)
{
for(i=6;i>0;i--)
{
P0=ledcode[i]^0xFF;
delay(300);
P0=0xFF;
}
P0=ledcode[0]^0xFF;
delay(300);
P0=0xFF;
temp--;
if(temp)
{ P0=ledcode[7]^0xFF;
delay(300);
P0=0xFF;
}
}
temp=4;
while(temp)//要求3
{ P0=0x00;
delay(600);
P0=0xFF;
delay(300);
temp--;
}
}
}
2.原理图proteus版本为8.10
总结本次实验不是特别难,我所做的也只是一种方法而已。代码之路何其艰辛,条条大路通罗马,大家要是还有其他方法,可以在评论区留言。我期待与大家进行学习交流。
你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧
网页标题:C51实现流水灯-创新互联
新闻来源:http://azwzsj.com/article/doohsc.html