1、 先八盞燈從左至右依次點亮,同一時刻僅有一盞燈處于被點亮狀態(tài),每盞燈亮0.5s,然后八盞燈從右至左依次點亮,同一時刻僅有一盞燈處于被點亮狀態(tài),每盞燈亮0.5s,循環(huán)兩遍;
2、 八盞燈同時閃爍,亮1s,滅0.5s;,實現(xiàn)4次;
3、 上述過程周而復始的循環(huán)運行;
代碼如下(示例):
#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)//延時函數(shù)
{uchar j;
while(n--)
for(j=0;j<113;j++);
}
int main()
{uchar i,temp;//temp控制次數(shù)
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
總結(jié)本次實驗不是特別難,我所做的也只是一種方法而已。代碼之路何其艱辛,條條大路通羅馬,大家要是還有其他方法,可以在評論區(qū)留言。我期待與大家進行學習交流。
你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機房具備T級流量清洗系統(tǒng)配攻擊溯源,準確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級服務(wù)器適合批量采購,新人活動首月15元起,快前往官網(wǎng)查看詳情吧