humikiri(railway crossing)

Dependencies:   mbed

Dependents:   kc_humikiriReal

Committer:
kohacraft
Date:
Mon Jul 20 02:54:30 2015 +0000
Revision:
0:7930f6daf302
Child:
1:06a94cf9d98a
humikiri(railway crossing) ver1.0

Who changed what in which revision?

UserRevisionLine numberNew contents of line
kohacraft 0:7930f6daf302 1 #include "mbed.h"
kohacraft 0:7930f6daf302 2
kohacraft 0:7930f6daf302 3 /* 踏切を再現するプログラム */
kohacraft 0:7930f6daf302 4
kohacraft 0:7930f6daf302 5 DigitalOut sp(dp1); //スピーカーをつなぐピンを出力に設定
kohacraft 0:7930f6daf302 6 DigitalIn sw(dp2); //スイッチをつなぐピンを入力に設定
kohacraft 0:7930f6daf302 7 DigitalOut led1(dp14); //LED1をつなぐピンを出力に設定
kohacraft 0:7930f6daf302 8 DigitalOut led2(dp28); //LED2をつなぐピンを出力に設定
kohacraft 0:7930f6daf302 9
kohacraft 0:7930f6daf302 10
kohacraft 0:7930f6daf302 11 int main() {
kohacraft 0:7930f6daf302 12 while(1) {
kohacraft 0:7930f6daf302 13
kohacraft 0:7930f6daf302 14 //両方のLEDを消す
kohacraft 0:7930f6daf302 15 led1 = 0;
kohacraft 0:7930f6daf302 16 led2 = 0;
kohacraft 0:7930f6daf302 17
kohacraft 0:7930f6daf302 18 //スイッチが押されているか調べて
kohacraft 0:7930f6daf302 19 //押されていたらLEDを光らせ音を鳴らす
kohacraft 0:7930f6daf302 20 if( sw == 1 )
kohacraft 0:7930f6daf302 21 {
kohacraft 0:7930f6daf302 22
kohacraft 0:7930f6daf302 23 //片方のLEDだけを点灯
kohacraft 0:7930f6daf302 24 led1 = 1;
kohacraft 0:7930f6daf302 25 led2 = 0;
kohacraft 0:7930f6daf302 26
kohacraft 0:7930f6daf302 27 //ミの音をちょっと出す
kohacraft 0:7930f6daf302 28 for( int i=0 ; i<20 ; i++ )
kohacraft 0:7930f6daf302 29 {
kohacraft 0:7930f6daf302 30 sp = 1;
kohacraft 0:7930f6daf302 31 wait(1.0/1318.51/2); //1318.51Hzがミの音
kohacraft 0:7930f6daf302 32 sp = 0;
kohacraft 0:7930f6daf302 33 wait(1.0/1318.51/2);
kohacraft 0:7930f6daf302 34 }
kohacraft 0:7930f6daf302 35
kohacraft 0:7930f6daf302 36
kohacraft 0:7930f6daf302 37 //ドの音を長く出す
kohacraft 0:7930f6daf302 38 for( int i=0 ; i<200*2 ; i++ )
kohacraft 0:7930f6daf302 39 {
kohacraft 0:7930f6daf302 40 sp = 0;
kohacraft 0:7930f6daf302 41 wait(1.0/1046.50/2); //1046.50Hzがドの音
kohacraft 0:7930f6daf302 42 sp = 1;
kohacraft 0:7930f6daf302 43 wait(1.0/1046.50/2);
kohacraft 0:7930f6daf302 44 }
kohacraft 0:7930f6daf302 45 wait (0.1);
kohacraft 0:7930f6daf302 46
kohacraft 0:7930f6daf302 47 //もう片方のLEDだけを点灯
kohacraft 0:7930f6daf302 48 led1 = 0;
kohacraft 0:7930f6daf302 49 led2 = 1;
kohacraft 0:7930f6daf302 50
kohacraft 0:7930f6daf302 51 //ミの音をちょっと出す
kohacraft 0:7930f6daf302 52 for( int i=0 ; i<20*2 ; i++ )
kohacraft 0:7930f6daf302 53 {
kohacraft 0:7930f6daf302 54 sp = 1;
kohacraft 0:7930f6daf302 55 wait(1.0/1318.51/2);
kohacraft 0:7930f6daf302 56 sp = 0;
kohacraft 0:7930f6daf302 57 wait(1.0/1318.51/2);
kohacraft 0:7930f6daf302 58 }
kohacraft 0:7930f6daf302 59
kohacraft 0:7930f6daf302 60
kohacraft 0:7930f6daf302 61 //ドの音を長く出す
kohacraft 0:7930f6daf302 62 for( int i=0 ; i<200*2 ; i++ )
kohacraft 0:7930f6daf302 63 {
kohacraft 0:7930f6daf302 64 sp = 0;
kohacraft 0:7930f6daf302 65 wait(1.0/1046.50/2);
kohacraft 0:7930f6daf302 66 sp = 1;
kohacraft 0:7930f6daf302 67 wait(1.0/1046.50/2);
kohacraft 0:7930f6daf302 68 }
kohacraft 0:7930f6daf302 69 wait (0.1);
kohacraft 0:7930f6daf302 70
kohacraft 0:7930f6daf302 71 }
kohacraft 0:7930f6daf302 72
kohacraft 0:7930f6daf302 73 }
kohacraft 0:7930f6daf302 74
kohacraft 0:7930f6daf302 75 }