kohacraft Lab
/
kc_shingo
LEDで自動車と歩行者の信号機を、ブザーでカッコーを再現したプログラムです。自由に改変して使ってください。
main.cpp
- Committer:
- kohacraft
- Date:
- 2015-07-26
- Revision:
- 1:020620966b3c
- Parent:
- 0:75120f0bbd80
File content as of revision 1:020620966b3c:
#include "mbed.h" DigitalOut B(dp17); //自動車用信号 青 DigitalOut Y(dp16); // 黄 DigitalOut R(dp15); // 赤 DigitalOut B2(dp13); //歩行者用信号 青 DigitalOut R2(dp14); // 赤 DigitalOut buzz(dp28); //スピーカー int main() { while(1) { B = 1; //自動車:5秒間青 Y = 0; //1がLED ON 0がLED OFF R = 0; B2 = 0; //歩行者:赤 R2 = 1; wait(5.0); //5秒間 B = 0; //自動車:1秒間黄色 Y = 1; R = 0; B2 = 0; R2 = 1; wait(1.0); B = 0; //自動車:2秒間赤 Y = 0; R = 1; B2 = 0; //歩行者:赤のまま R2 = 1; wait(2.0); //歩行者の信号を青にする B = 0; //自動車:赤のまま Y = 0; R = 1; B2 = 1; //歩行者:青にする R2 = 0; //カッコーを5回鳴らす for( int i=0 ; i<5 ; i++ ) { //ミの音を鳴らす for( int i=0 ; i<300 ; i++ ) { buzz = 1; //スピーカーをON OFF させて音を作る wait(1.0/880.00/4); //1オクターブ上のミ 880*2Hz 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); //1オクターブ上のド 698.45*2Hz buzz = 1; wait(1.0/698.45/4); } wait(0.8); } //歩行者用信号を点滅させる for( int i=0 ; i<5 ; i++ ) { 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(2.0); } }