LEDで自動車と歩行者の信号機を、ブザーでカッコーを再現したプログラムです。自由に改変して使ってください。

Dependencies:   mbed

main.cpp

Committer:
kohacraft
Date:
2015-07-09
Revision:
0:75120f0bbd80
Child:
1:020620966b3c

File content as of revision 0:75120f0bbd80:

#include "mbed.h"

DigitalOut B(dp1);  //自動車用信号 青
DigitalOut Y(dp2);  //       黄
DigitalOut R(dp4);  //       赤
DigitalOut B2(dp6); //歩行者用信号 青
DigitalOut R2(dp9); //       赤
DigitalOut buzz(LED2);

int main() {
    while(1) {

        B = 1;
        Y = 0;
        R = 0;
        B2 = 0;
        R2 = 1;
        wait(5.0);
        
        B = 0;
        Y = 1;
        R = 0;
        B2 = 0;
        R2 = 1;
        wait(1.0);
        
        B = 0;
        Y = 0;
        R = 1;
        B2 = 0;
        R2 = 1;
        wait(3.0);
        
        //歩行者の信号を青にする
        B = 0;
        Y = 0;
        R = 1;
        B2 = 1;
        R2 = 0;
        
            for( int i=0 ; i<5 ; i++ )
            {   
                //カッコーを鳴らす
                for( int i=0 ; i<300 ; i++ )
                {
                    buzz = 1;
                    wait(1.0/880.00/4);
                    buzz = 0;
                    wait(1.0/880.00/4);
                
                }
                wait(0.2);
                
                for( int i=0 ; i<700 ; i++ )
                {
                
                    buzz = 0;
                    wait(1.0/698.45/4);
                    buzz = 1;
                    wait(1.0/698.45/4);
                
                }
                wait(0.8);
            }
            
        //歩行者用信号を点滅させる
        B = 0;
        Y = 0;
        R = 1;
        B2 = 0;
        R2 = 0;
        wait(0.3);
        B = 0;
        Y = 0;
        R = 1;
        B2 = 1;
        R2 = 0;
        wait(0.3);
        B = 0;
        Y = 0;
        R = 1;
        B2 = 0;
        R2 = 0;
        
        B = 0;
        Y = 0;
        R = 1;
        B2 = 1;
        R2 = 0;
        wait(0.3);
        B = 0;
        Y = 0;
        R = 1;
        B2 = 0;
        R2 = 0;
        wait(0.3);
        B = 0;
        Y = 0;
        R = 1;
        B2 = 1;
        R2 = 0;
        wait(0.3);
        B = 0;
        Y = 0;
        R = 1;
        B2 = 0;
        R2 = 0;
        wait(0.3);
        B = 0;
        Y = 0;
        R = 1;
        B2 = 1;
        R2 = 0;
        wait(0.3);
        B = 0;
        Y = 0;
        R = 1;
        B2 = 0;
        R2 = 0;
        wait(0.3);
        B = 0;
        Y = 0;
        R = 1;
        B2 = 1;
        R2 = 0;
        wait(0.3);
        B = 0;
        Y = 0;
        R = 1;
        B2 = 0;
        R2 = 0;
        wait(0.3);
        B = 0;
        Y = 0;
        R = 1;
        B2 = 0;
        R2 = 1;
        wait(1.0);
        
      
    }
}