Arduino 入門

Arduino 程序結(jié)構(gòu)

變量申明
子程序定義
setup() 初始化變量,管腳模式,調(diào)用庫函數(shù)等
void loop() 連續(xù)執(zhí)行函數(shù)內(nèi)的語句

廣告燈實驗 程序代碼:


//設(shè)置控制 Led 的數(shù)字 IO 腳
int Led1 = 1;
int Led2 = 2;
int Led3 = 3;
int Led4 = 4;
int Led5 = 5;
int Led6 = 6;

//led 燈花樣顯示樣式 1 子程序
//LED從左邊到右邊依次點亮,接著從右邊到左邊依次熄滅
void style_1(void)
{
  unsigned char j;
  for(j=1;j<=6;j++)//每隔 200ms 依次點亮 1~6 引腳相連的 led 燈
  {
    digitalWrite(j,HIGH);//點亮 j 引腳相連的 led 燈
    delay(200);//延時 200ms
  }
  for(j=6;j>=1;j--)//每隔 200ms 依次熄滅 6~1 引腳相連的 led 燈
  {
    digitalWrite(j,LOW);//熄滅 j 引腳相連癿 led 燈
    delay(200);//延時 200ms
  }
}

//燈閃爍子程序
// 6個LED先全部點亮,接著延時200ms,最后6個LED全部熄滅。這個過程循環(huán)兩次,就實現(xiàn)了閃爍的效果。
void flash(void)
{
unsigned char j,k;
for(k=0;k<=1;k++)//閃爍兩次
{
  for(j=1;j<=6;j++)//點亮 1~6 引腳相連癿 led 燈
    digitalWrite(j,HIGH);//點亮與 j 引腳相連的 led 燈
   delay(200);//延時 200ms
  for(j=1;j<=6;j++)//熄滅 1~6 引腳相連的 led 燈
    digitalWrite(j,LOW);//熄滅與 j 引腳相連的 led 燈
  delay(200);//延時 200ms
  }
}

//led 燈花樣顯示樣式 2 子程序
//設(shè)置兩個變量k和j讓中間兩個黃燈先亮,接著讓挨著兩個黃燈兩邊的紅燈亮,最后讓兩邊的綠燈亮。
//執(zhí)行一遍后,改變k和j的值,讓兩邊的綠燈先熄滅,接著兩邊的紅燈熄滅。
void style_2(void)
{
  unsigned char j,k;
  k=1;//設(shè)置 k 癿刜值為 1
  for(j=3;j>=1;j--)
  {
    digitalWrite(j,HIGH);//點亮燈
    digitalWrite(j+k,HIGH);//點亮燈
    delay(400);//延時 400ms
    k +=2;//k 值加 2
  }
  k=5;//設(shè)置 k 值為 5
  for(j=1;j<=3;j++)
  {
    digitalWrite(j,LOW);//熄滅燈
    digitalWrite(j+k,LOW);//熄滅燈
    delay(400);//延時 400ms
    k -=2;//k 值減 2
  }
}

//led 燈花樣顯示樣式 3 子程序
void style_3(void)
{
  unsigned char j,k;//led 燈花樣顯示樣式 3 子程序
  k=5;//設(shè)置 k 值為 5
  for(j=1;j<=3;j++)
{
    digitalWrite(j,HIGH);//點亮燈
    digitalWrite(j+k,HIGH);//點亮燈
    delay(400);//延時 400ms
    digitalWrite(j,LOW);//熄滅燈
    digitalWrite(j+k,LOW);//熄滅燈
    k -=2;//k 值減 2
}
  k=3;//設(shè)置 k 值為 3
  for(j=2;j>=1;j--)
  {
   digitalWrite(j,HIGH);//點亮燈
   digitalWrite(j+k,HIGH);//點亮燈
   delay(400);//延時 400ms
   digitalWrite(j,LOW);//熄滅燈
   digitalWrite(j+k,LOW);//熄滅燈
   k +=2;//k 值加 2
  }
}

void setup() 
{
   unsigned char i;
   for(i=1;i<=6;i++)//依次設(shè)置1~6個數(shù)字引腳為輸出模式
     pinMode(i, OUTPUT);//設(shè)置第i個引腳為輸出模式
}

void loop() 
{
  style_1();//執(zhí)行樣式1子程序
  flash();//執(zhí)行閃爍子程序
  style_2();//執(zhí)行樣式2子程序
  flash();//執(zhí)行閃爍子程序
  style_3();//執(zhí)行樣式3子程序
  flash();//執(zhí)行閃爍子程序
}
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容