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

Dependencies:   mbed

Committer:
kohacraft
Date:
Thu Jul 09 05:28:28 2015 +0000
Revision:
0:75120f0bbd80
Child:
1:020620966b3c
?????

Who changed what in which revision?

UserRevisionLine numberNew contents of line
kohacraft 0:75120f0bbd80 1 #include "mbed.h"
kohacraft 0:75120f0bbd80 2
kohacraft 0:75120f0bbd80 3 DigitalOut B(dp1); //自動車用信号 青
kohacraft 0:75120f0bbd80 4 DigitalOut Y(dp2); //       黄
kohacraft 0:75120f0bbd80 5 DigitalOut R(dp4); //       赤
kohacraft 0:75120f0bbd80 6 DigitalOut B2(dp6); //歩行者用信号 青
kohacraft 0:75120f0bbd80 7 DigitalOut R2(dp9); //       赤
kohacraft 0:75120f0bbd80 8 DigitalOut buzz(LED2);
kohacraft 0:75120f0bbd80 9
kohacraft 0:75120f0bbd80 10 int main() {
kohacraft 0:75120f0bbd80 11 while(1) {
kohacraft 0:75120f0bbd80 12
kohacraft 0:75120f0bbd80 13 B = 1;
kohacraft 0:75120f0bbd80 14 Y = 0;
kohacraft 0:75120f0bbd80 15 R = 0;
kohacraft 0:75120f0bbd80 16 B2 = 0;
kohacraft 0:75120f0bbd80 17 R2 = 1;
kohacraft 0:75120f0bbd80 18 wait(5.0);
kohacraft 0:75120f0bbd80 19
kohacraft 0:75120f0bbd80 20 B = 0;
kohacraft 0:75120f0bbd80 21 Y = 1;
kohacraft 0:75120f0bbd80 22 R = 0;
kohacraft 0:75120f0bbd80 23 B2 = 0;
kohacraft 0:75120f0bbd80 24 R2 = 1;
kohacraft 0:75120f0bbd80 25 wait(1.0);
kohacraft 0:75120f0bbd80 26
kohacraft 0:75120f0bbd80 27 B = 0;
kohacraft 0:75120f0bbd80 28 Y = 0;
kohacraft 0:75120f0bbd80 29 R = 1;
kohacraft 0:75120f0bbd80 30 B2 = 0;
kohacraft 0:75120f0bbd80 31 R2 = 1;
kohacraft 0:75120f0bbd80 32 wait(3.0);
kohacraft 0:75120f0bbd80 33
kohacraft 0:75120f0bbd80 34 //歩行者の信号を青にする
kohacraft 0:75120f0bbd80 35 B = 0;
kohacraft 0:75120f0bbd80 36 Y = 0;
kohacraft 0:75120f0bbd80 37 R = 1;
kohacraft 0:75120f0bbd80 38 B2 = 1;
kohacraft 0:75120f0bbd80 39 R2 = 0;
kohacraft 0:75120f0bbd80 40
kohacraft 0:75120f0bbd80 41 for( int i=0 ; i<5 ; i++ )
kohacraft 0:75120f0bbd80 42 {
kohacraft 0:75120f0bbd80 43 //カッコーを鳴らす
kohacraft 0:75120f0bbd80 44 for( int i=0 ; i<300 ; i++ )
kohacraft 0:75120f0bbd80 45 {
kohacraft 0:75120f0bbd80 46 buzz = 1;
kohacraft 0:75120f0bbd80 47 wait(1.0/880.00/4);
kohacraft 0:75120f0bbd80 48 buzz = 0;
kohacraft 0:75120f0bbd80 49 wait(1.0/880.00/4);
kohacraft 0:75120f0bbd80 50
kohacraft 0:75120f0bbd80 51 }
kohacraft 0:75120f0bbd80 52 wait(0.2);
kohacraft 0:75120f0bbd80 53
kohacraft 0:75120f0bbd80 54 for( int i=0 ; i<700 ; i++ )
kohacraft 0:75120f0bbd80 55 {
kohacraft 0:75120f0bbd80 56
kohacraft 0:75120f0bbd80 57 buzz = 0;
kohacraft 0:75120f0bbd80 58 wait(1.0/698.45/4);
kohacraft 0:75120f0bbd80 59 buzz = 1;
kohacraft 0:75120f0bbd80 60 wait(1.0/698.45/4);
kohacraft 0:75120f0bbd80 61
kohacraft 0:75120f0bbd80 62 }
kohacraft 0:75120f0bbd80 63 wait(0.8);
kohacraft 0:75120f0bbd80 64 }
kohacraft 0:75120f0bbd80 65
kohacraft 0:75120f0bbd80 66 //歩行者用信号を点滅させる
kohacraft 0:75120f0bbd80 67 B = 0;
kohacraft 0:75120f0bbd80 68 Y = 0;
kohacraft 0:75120f0bbd80 69 R = 1;
kohacraft 0:75120f0bbd80 70 B2 = 0;
kohacraft 0:75120f0bbd80 71 R2 = 0;
kohacraft 0:75120f0bbd80 72 wait(0.3);
kohacraft 0:75120f0bbd80 73 B = 0;
kohacraft 0:75120f0bbd80 74 Y = 0;
kohacraft 0:75120f0bbd80 75 R = 1;
kohacraft 0:75120f0bbd80 76 B2 = 1;
kohacraft 0:75120f0bbd80 77 R2 = 0;
kohacraft 0:75120f0bbd80 78 wait(0.3);
kohacraft 0:75120f0bbd80 79 B = 0;
kohacraft 0:75120f0bbd80 80 Y = 0;
kohacraft 0:75120f0bbd80 81 R = 1;
kohacraft 0:75120f0bbd80 82 B2 = 0;
kohacraft 0:75120f0bbd80 83 R2 = 0;
kohacraft 0:75120f0bbd80 84
kohacraft 0:75120f0bbd80 85 B = 0;
kohacraft 0:75120f0bbd80 86 Y = 0;
kohacraft 0:75120f0bbd80 87 R = 1;
kohacraft 0:75120f0bbd80 88 B2 = 1;
kohacraft 0:75120f0bbd80 89 R2 = 0;
kohacraft 0:75120f0bbd80 90 wait(0.3);
kohacraft 0:75120f0bbd80 91 B = 0;
kohacraft 0:75120f0bbd80 92 Y = 0;
kohacraft 0:75120f0bbd80 93 R = 1;
kohacraft 0:75120f0bbd80 94 B2 = 0;
kohacraft 0:75120f0bbd80 95 R2 = 0;
kohacraft 0:75120f0bbd80 96 wait(0.3);
kohacraft 0:75120f0bbd80 97 B = 0;
kohacraft 0:75120f0bbd80 98 Y = 0;
kohacraft 0:75120f0bbd80 99 R = 1;
kohacraft 0:75120f0bbd80 100 B2 = 1;
kohacraft 0:75120f0bbd80 101 R2 = 0;
kohacraft 0:75120f0bbd80 102 wait(0.3);
kohacraft 0:75120f0bbd80 103 B = 0;
kohacraft 0:75120f0bbd80 104 Y = 0;
kohacraft 0:75120f0bbd80 105 R = 1;
kohacraft 0:75120f0bbd80 106 B2 = 0;
kohacraft 0:75120f0bbd80 107 R2 = 0;
kohacraft 0:75120f0bbd80 108 wait(0.3);
kohacraft 0:75120f0bbd80 109 B = 0;
kohacraft 0:75120f0bbd80 110 Y = 0;
kohacraft 0:75120f0bbd80 111 R = 1;
kohacraft 0:75120f0bbd80 112 B2 = 1;
kohacraft 0:75120f0bbd80 113 R2 = 0;
kohacraft 0:75120f0bbd80 114 wait(0.3);
kohacraft 0:75120f0bbd80 115 B = 0;
kohacraft 0:75120f0bbd80 116 Y = 0;
kohacraft 0:75120f0bbd80 117 R = 1;
kohacraft 0:75120f0bbd80 118 B2 = 0;
kohacraft 0:75120f0bbd80 119 R2 = 0;
kohacraft 0:75120f0bbd80 120 wait(0.3);
kohacraft 0:75120f0bbd80 121 B = 0;
kohacraft 0:75120f0bbd80 122 Y = 0;
kohacraft 0:75120f0bbd80 123 R = 1;
kohacraft 0:75120f0bbd80 124 B2 = 1;
kohacraft 0:75120f0bbd80 125 R2 = 0;
kohacraft 0:75120f0bbd80 126 wait(0.3);
kohacraft 0:75120f0bbd80 127 B = 0;
kohacraft 0:75120f0bbd80 128 Y = 0;
kohacraft 0:75120f0bbd80 129 R = 1;
kohacraft 0:75120f0bbd80 130 B2 = 0;
kohacraft 0:75120f0bbd80 131 R2 = 0;
kohacraft 0:75120f0bbd80 132 wait(0.3);
kohacraft 0:75120f0bbd80 133 B = 0;
kohacraft 0:75120f0bbd80 134 Y = 0;
kohacraft 0:75120f0bbd80 135 R = 1;
kohacraft 0:75120f0bbd80 136 B2 = 0;
kohacraft 0:75120f0bbd80 137 R2 = 1;
kohacraft 0:75120f0bbd80 138 wait(1.0);
kohacraft 0:75120f0bbd80 139
kohacraft 0:75120f0bbd80 140
kohacraft 0:75120f0bbd80 141 }
kohacraft 0:75120f0bbd80 142 }