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

Dependencies:   mbed

Revision:
0:75120f0bbd80
Child:
1:020620966b3c
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/main.cpp	Thu Jul 09 05:28:28 2015 +0000
@@ -0,0 +1,142 @@
+#include "mbed.h"
+
+DigitalOut B(dp1);  //自動車用信号 青
+DigitalOut Y(dp2);  //       黄
+DigitalOut R(dp4);  //       赤
+DigitalOut B2(dp6); //歩行者用信号 青
+DigitalOut R2(dp9); //       赤
+DigitalOut buzz(LED2);
+
+int main() {
+    while(1) {
+
+        B = 1;
+        Y = 0;
+        R = 0;
+        B2 = 0;
+        R2 = 1;
+        wait(5.0);
+        
+        B = 0;
+        Y = 1;
+        R = 0;
+        B2 = 0;
+        R2 = 1;
+        wait(1.0);
+        
+        B = 0;
+        Y = 0;
+        R = 1;
+        B2 = 0;
+        R2 = 1;
+        wait(3.0);
+        
+        //歩行者の信号を青にする
+        B = 0;
+        Y = 0;
+        R = 1;
+        B2 = 1;
+        R2 = 0;
+        
+            for( int i=0 ; i<5 ; i++ )
+            {   
+                //カッコーを鳴らす
+                for( int i=0 ; i<300 ; i++ )
+                {
+                    buzz = 1;
+                    wait(1.0/880.00/4);
+                    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);
+                    buzz = 1;
+                    wait(1.0/698.45/4);
+                
+                }
+                wait(0.8);
+            }
+            
+        //歩行者用信号を点滅させる
+        B = 0;
+        Y = 0;
+        R = 1;
+        B2 = 0;
+        R2 = 0;
+        wait(0.3);
+        B = 0;
+        Y = 0;
+        R = 1;
+        B2 = 1;
+        R2 = 0;
+        wait(0.3);
+        B = 0;
+        Y = 0;
+        R = 1;
+        B2 = 0;
+        R2 = 0;
+        
+        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 = 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 = 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 = 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(1.0);
+        
+      
+    }
+}