123123123123123123123123123

Dependencies:   mbed

Committer:
terryLAI
Date:
Thu Jul 03 03:56:29 2014 +0000
Revision:
1:cbec1283a16a
Parent:
0:3417ca0a36c0
Child:
2:442902ec3aa1
11111

Who changed what in which revision?

UserRevisionLine numberNew contents of line
TonyYI 0:3417ca0a36c0 1 /******************************************************
TonyYI 0:3417ca0a36c0 2
TonyYI 0:3417ca0a36c0 3 ****┏┓ ┏┓
TonyYI 0:3417ca0a36c0 4 **┏┛┻━━━━━━┛┻┓
TonyYI 0:3417ca0a36c0 5 **┃ ┃
TonyYI 0:3417ca0a36c0 6 **┃ ━━━ ┃
TonyYI 0:3417ca0a36c0 7 **┃ ┳┛ ┗┳ ┃
TonyYI 0:3417ca0a36c0 8 **┃ ┃
TonyYI 0:3417ca0a36c0 9 **┃ ''' ┻ ''' ┃
TonyYI 0:3417ca0a36c0 10 **┃ ┃
TonyYI 0:3417ca0a36c0 11 **┗━━┓ ┏━━┛
TonyYI 0:3417ca0a36c0 12 *******┃ ┃
TonyYI 0:3417ca0a36c0 13 *******┃ ┃
TonyYI 0:3417ca0a36c0 14 *******┃ ┃
TonyYI 0:3417ca0a36c0 15 *******┃ ┗━━━━━━━━┓
TonyYI 0:3417ca0a36c0 16 *******┃ ┃━┓
TonyYI 0:3417ca0a36c0 17 *******┃ NO BUG ┏━┛
TonyYI 0:3417ca0a36c0 18 *******┃ ┃
TonyYI 0:3417ca0a36c0 19 *******┗━┓ ┓ ┏━┏━┓ ━┛
TonyYI 0:3417ca0a36c0 20 ***********┃ ┛ ┛ ┃ ┛ ┛
TonyYI 0:3417ca0a36c0 21 ***********┃ ┃ ┃ ┃ ┃ ┃
TonyYI 0:3417ca0a36c0 22 ***********┗━┛━┛ ┗━┛━┛
TonyYI 0:3417ca0a36c0 23
TonyYI 0:3417ca0a36c0 24 This part is added by project ESDC2014 of CUHK team.
TonyYI 0:3417ca0a36c0 25 All the code with this header are under GPL open source license.
TonyYI 0:3417ca0a36c0 26 This program is running on Mbed Platform 'mbed LPC1768' avaliable in 'http://mbed.org'.
TonyYI 0:3417ca0a36c0 27 **********************************************************/
TonyYI 0:3417ca0a36c0 28
TonyYI 0:3417ca0a36c0 29 #include "buzzer.h"
TonyYI 0:3417ca0a36c0 30
TonyYI 0:3417ca0a36c0 31 Buzzer::Buzzer(MyDigitalOut* buzzer)
TonyYI 0:3417ca0a36c0 32 {
TonyYI 0:3417ca0a36c0 33 this->_buzzer = buzzer;
terryLAI 1:cbec1283a16a 34 ON();
terryLAI 1:cbec1283a16a 35 wait(0.1);
terryLAI 1:cbec1283a16a 36 OFF();
terryLAI 1:cbec1283a16a 37 wait(0.1);
terryLAI 1:cbec1283a16a 38 ON();
terryLAI 1:cbec1283a16a 39 wait(0.1);
terryLAI 1:cbec1283a16a 40 OFF();
terryLAI 1:cbec1283a16a 41 wait(0.1);
terryLAI 1:cbec1283a16a 42 ON();
terryLAI 1:cbec1283a16a 43 wait(0.2);
terryLAI 1:cbec1283a16a 44 OFF();
TonyYI 0:3417ca0a36c0 45 }
TonyYI 0:3417ca0a36c0 46
TonyYI 0:3417ca0a36c0 47 Buzzer::~Buzzer(){}
TonyYI 0:3417ca0a36c0 48
terryLAI 1:cbec1283a16a 49 void Buzzer::ON()
TonyYI 0:3417ca0a36c0 50 {
TonyYI 0:3417ca0a36c0 51 *_buzzer = 0;
TonyYI 0:3417ca0a36c0 52 }
TonyYI 0:3417ca0a36c0 53
terryLAI 1:cbec1283a16a 54 void Buzzer::OFF()
TonyYI 0:3417ca0a36c0 55 {
TonyYI 0:3417ca0a36c0 56 *_buzzer = 1;
terryLAI 1:cbec1283a16a 57 }
terryLAI 1:cbec1283a16a 58
terryLAI 1:cbec1283a16a 59 void Buzzer::setFlag()
terryLAI 1:cbec1283a16a 60 {
terryLAI 1:cbec1283a16a 61 flag=1;
terryLAI 1:cbec1283a16a 62 }
terryLAI 1:cbec1283a16a 63
terryLAI 1:cbec1283a16a 64 void Buzzer::cleanFlag()
terryLAI 1:cbec1283a16a 65 {
terryLAI 1:cbec1283a16a 66 flag=0;
terryLAI 1:cbec1283a16a 67 }
terryLAI 1:cbec1283a16a 68
terryLAI 1:cbec1283a16a 69 void Buzzer::check_time_out()
terryLAI 1:cbec1283a16a 70 {
terryLAI 1:cbec1283a16a 71 if(flag == 1)
terryLAI 1:cbec1283a16a 72 {
terryLAI 1:cbec1283a16a 73 ON();
terryLAI 1:cbec1283a16a 74 }
terryLAI 1:cbec1283a16a 75 else
terryLAI 1:cbec1283a16a 76 {
terryLAI 1:cbec1283a16a 77 OFF();
terryLAI 1:cbec1283a16a 78 }
terryLAI 1:cbec1283a16a 79 }
terryLAI 1:cbec1283a16a 80
terryLAI 1:cbec1283a16a 81 void Buzzer::time_out_init()
terryLAI 1:cbec1283a16a 82 {
terryLAI 1:cbec1283a16a 83 setFlag();
terryLAI 1:cbec1283a16a 84 time_out.detach();
terryLAI 1:cbec1283a16a 85 time_out.attach(this, &Buzzer::check_time_out, TIME_OUT);
terryLAI 1:cbec1283a16a 86 }