![](/media/cache/group/ep.webp.50x50_q85.jpg)
6.4 Wenn sich jemand nähert, Lauflicht einschalten und Akustisches Signal
Dependencies: mbed
Fork of 06-04-Uebung by
main.cpp
- Committer:
- stefan1691
- Date:
- 2015-04-18
- Revision:
- 4:a470b7ed1f78
- Parent:
- 3:713da1a5879b
- Child:
- 5:8435f2075875
File content as of revision 4:a470b7ed1f78:
/** 6.4 Wenn sich jemand nähert, Lauflicht einschalten und Akustisches Signal */ #include "mbed.h" DigitalOut led1( D10 ); DigitalOut led2( D11 ); DigitalOut led3( D12 ); DigitalOut led4( D13 ); PwmOut buzzer( D7 ); // Buzzer DigitalIn pirSensor( A4 ); // Bewegungsmelder schaltet auf 1 int main() { while (true) { // hat sich etwas bewegt? if ( pirSensor ) { // 10x Lauflicht durchlaufen for ( int t = 0; t < 10; t++ ) { // Buzzer bleibt eingeschaltet werden die LED ON sind buzzer.period( 1.0/900.0) ; // 900hz period buzzer = 0.9; // 90% duty cycle - max volume for ( int i = 0; i < 5; i++ ) { switch ( i ) { case 0: led1 = led2 = led3 = led4 = 0; break; case 1: led1 = 1; break; case 2: led1 = 0; led2 = 1; break; case 3: led2 = 0; led3 = 1; break; case 4: led3 = 0; led4 = 1; break; } // wait bis naechstes LED aktiviert wird wait( 0.2 ); } // Ruhe und alle LED off buzzer = 0; led4 = 0; wait ( 0.5 ); } } else { led1 = led2 = led3 = led4 = 0; buzzer = 0; } wait( 0.2 ); // ohne wait laesst sich das Board nicht neu programmieren! } }