kohacraft Lab
/
kc_shingo
LEDで自動車と歩行者の信号機を、ブザーでカッコーを再現したプログラムです。自由に改変して使ってください。
main.cpp@0:75120f0bbd80, 2015-07-09 (annotated)
- Committer:
- kohacraft
- Date:
- Thu Jul 09 05:28:28 2015 +0000
- Revision:
- 0:75120f0bbd80
- Child:
- 1:020620966b3c
?????
Who changed what in which revision?
User | Revision | Line number | New 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 | } |