oshibotan shingo

Dependencies:   mbed

Committer:
kohacraft
Date:
Thu Aug 06 00:05:29 2015 +0000
Revision:
0:a9bfbb95c112
ver1.0 traffic signal

Who changed what in which revision?

UserRevisionLine numberNew contents of line
kohacraft 0:a9bfbb95c112 1 #include "mbed.h"
kohacraft 0:a9bfbb95c112 2
kohacraft 0:a9bfbb95c112 3 DigitalOut B(dp17); //自動車用信号 青
kohacraft 0:a9bfbb95c112 4 DigitalOut Y(dp16); //       黄
kohacraft 0:a9bfbb95c112 5 DigitalOut R(dp15); //       赤
kohacraft 0:a9bfbb95c112 6 DigitalOut B2(dp13); //歩行者用信号 青
kohacraft 0:a9bfbb95c112 7 DigitalOut R2(dp14); //       赤
kohacraft 0:a9bfbb95c112 8 DigitalOut buzz(dp28); //スピーカー
kohacraft 0:a9bfbb95c112 9
kohacraft 0:a9bfbb95c112 10 DigitalIn sw(dp26); //押しボタンスイッチ
kohacraft 0:a9bfbb95c112 11
kohacraft 0:a9bfbb95c112 12 int main() {
kohacraft 0:a9bfbb95c112 13 while(1) {
kohacraft 0:a9bfbb95c112 14
kohacraft 0:a9bfbb95c112 15 B = 1; //自動車:5秒間青
kohacraft 0:a9bfbb95c112 16 Y = 0; //1がLED ON 0がLED OFF
kohacraft 0:a9bfbb95c112 17 R = 0;
kohacraft 0:a9bfbb95c112 18 B2 = 0; //歩行者:赤
kohacraft 0:a9bfbb95c112 19 R2 = 1;
kohacraft 0:a9bfbb95c112 20 wait(5.0); //5秒間
kohacraft 0:a9bfbb95c112 21
kohacraft 0:a9bfbb95c112 22 while( sw == 0 )
kohacraft 0:a9bfbb95c112 23 {
kohacraft 0:a9bfbb95c112 24 }
kohacraft 0:a9bfbb95c112 25
kohacraft 0:a9bfbb95c112 26 B = 0; //自動車:1秒間黄色
kohacraft 0:a9bfbb95c112 27 Y = 1;
kohacraft 0:a9bfbb95c112 28 R = 0;
kohacraft 0:a9bfbb95c112 29 B2 = 0;
kohacraft 0:a9bfbb95c112 30 R2 = 1;
kohacraft 0:a9bfbb95c112 31 wait(1.0);
kohacraft 0:a9bfbb95c112 32
kohacraft 0:a9bfbb95c112 33 B = 0; //自動車:2秒間赤
kohacraft 0:a9bfbb95c112 34 Y = 0;
kohacraft 0:a9bfbb95c112 35 R = 1;
kohacraft 0:a9bfbb95c112 36 B2 = 0; //歩行者:赤のまま
kohacraft 0:a9bfbb95c112 37 R2 = 1;
kohacraft 0:a9bfbb95c112 38 wait(2.0);
kohacraft 0:a9bfbb95c112 39
kohacraft 0:a9bfbb95c112 40 //歩行者の信号を青にする
kohacraft 0:a9bfbb95c112 41 B = 0; //自動車:赤のまま
kohacraft 0:a9bfbb95c112 42 Y = 0;
kohacraft 0:a9bfbb95c112 43 R = 1;
kohacraft 0:a9bfbb95c112 44 B2 = 1; //歩行者:青にする
kohacraft 0:a9bfbb95c112 45 R2 = 0;
kohacraft 0:a9bfbb95c112 46
kohacraft 0:a9bfbb95c112 47 //カッコーを5回鳴らす
kohacraft 0:a9bfbb95c112 48 for( int i=0 ; i<5 ; i++ )
kohacraft 0:a9bfbb95c112 49 {
kohacraft 0:a9bfbb95c112 50 //ミの音を鳴らす
kohacraft 0:a9bfbb95c112 51 for( int i=0 ; i<300 ; i++ )
kohacraft 0:a9bfbb95c112 52 {
kohacraft 0:a9bfbb95c112 53 buzz = 1; //スピーカーをON OFF させて音を作る
kohacraft 0:a9bfbb95c112 54 wait(1.0/880.00/4); //1オクターブ上のミ 880*2Hz
kohacraft 0:a9bfbb95c112 55 buzz = 0;
kohacraft 0:a9bfbb95c112 56 wait(1.0/880.00/4);
kohacraft 0:a9bfbb95c112 57
kohacraft 0:a9bfbb95c112 58 }
kohacraft 0:a9bfbb95c112 59 wait(0.2);
kohacraft 0:a9bfbb95c112 60
kohacraft 0:a9bfbb95c112 61 //ドの音を鳴らす
kohacraft 0:a9bfbb95c112 62 for( int i=0 ; i<700 ; i++ )
kohacraft 0:a9bfbb95c112 63 {
kohacraft 0:a9bfbb95c112 64
kohacraft 0:a9bfbb95c112 65 buzz = 0;
kohacraft 0:a9bfbb95c112 66 wait(1.0/698.45/4); //1オクターブ上のド 698.45*2Hz
kohacraft 0:a9bfbb95c112 67 buzz = 1;
kohacraft 0:a9bfbb95c112 68 wait(1.0/698.45/4);
kohacraft 0:a9bfbb95c112 69
kohacraft 0:a9bfbb95c112 70 }
kohacraft 0:a9bfbb95c112 71 wait(0.8);
kohacraft 0:a9bfbb95c112 72 }
kohacraft 0:a9bfbb95c112 73
kohacraft 0:a9bfbb95c112 74 //歩行者用信号を点滅させる
kohacraft 0:a9bfbb95c112 75 for( int i=0 ; i<5 ; i++ )
kohacraft 0:a9bfbb95c112 76 {
kohacraft 0:a9bfbb95c112 77 B = 0;
kohacraft 0:a9bfbb95c112 78 Y = 0;
kohacraft 0:a9bfbb95c112 79 R = 1;
kohacraft 0:a9bfbb95c112 80 B2 = 1; //歩行者:青を消光らす
kohacraft 0:a9bfbb95c112 81 R2 = 0;
kohacraft 0:a9bfbb95c112 82 wait(0.3);
kohacraft 0:a9bfbb95c112 83
kohacraft 0:a9bfbb95c112 84 B = 0;
kohacraft 0:a9bfbb95c112 85 Y = 0;
kohacraft 0:a9bfbb95c112 86 R = 1;
kohacraft 0:a9bfbb95c112 87 B2 = 0; //歩行者:青を消す
kohacraft 0:a9bfbb95c112 88 R2 = 0;
kohacraft 0:a9bfbb95c112 89 wait(0.3);
kohacraft 0:a9bfbb95c112 90 }
kohacraft 0:a9bfbb95c112 91
kohacraft 0:a9bfbb95c112 92 B = 0;
kohacraft 0:a9bfbb95c112 93 Y = 0;
kohacraft 0:a9bfbb95c112 94 R = 1;
kohacraft 0:a9bfbb95c112 95 B2 = 0;
kohacraft 0:a9bfbb95c112 96 R2 = 1; //歩行者:赤を消光らす
kohacraft 0:a9bfbb95c112 97 wait(2.0);
kohacraft 0:a9bfbb95c112 98
kohacraft 0:a9bfbb95c112 99
kohacraft 0:a9bfbb95c112 100 }
kohacraft 0:a9bfbb95c112 101 }