Kiraly Stefan Istvan
/
BUTTON
stm32f103c8t6 push buton functionality examples
main.cpp@0:3bfafa38794c, 2017-11-29 (annotated)
- Committer:
- yo2lts
- Date:
- Wed Nov 29 04:54:48 2017 +0000
- Revision:
- 0:3bfafa38794c
STM32nucleo push button
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
yo2lts | 0:3bfafa38794c | 1 | // PINUL DIGITAL PA_8 vine pus la 3.3V printr-o rezistenta de 4.7k ohm ca si cum ai apasa butonul, example in librarie .h |
yo2lts | 0:3bfafa38794c | 2 | |
yo2lts | 0:3bfafa38794c | 3 | #include "mbed.h" |
yo2lts | 0:3bfafa38794c | 4 | #include "PinDetect.h" |
yo2lts | 0:3bfafa38794c | 5 | |
yo2lts | 0:3bfafa38794c | 6 | PinDetect pin(PB_9); //PA_8 |
yo2lts | 0:3bfafa38794c | 7 | |
yo2lts | 0:3bfafa38794c | 8 | DigitalOut myled(LED1); |
yo2lts | 0:3bfafa38794c | 9 | Serial pc(PA_2, PA_3); // tx, rx pc terminalra valo kiiras |
yo2lts | 0:3bfafa38794c | 10 | |
yo2lts | 0:3bfafa38794c | 11 | void keyPressed( void ) { |
yo2lts | 0:3bfafa38794c | 12 | pc.printf("AM APASAT BUTONUL SCURT"); |
yo2lts | 0:3bfafa38794c | 13 | myled = 0; // LED is OFF |
yo2lts | 0:3bfafa38794c | 14 | } |
yo2lts | 0:3bfafa38794c | 15 | |
yo2lts | 0:3bfafa38794c | 16 | void keyPressedHeld( void ) { |
yo2lts | 0:3bfafa38794c | 17 | pc.printf("am apasat butonul lung"); |
yo2lts | 0:3bfafa38794c | 18 | } |
yo2lts | 0:3bfafa38794c | 19 | |
yo2lts | 0:3bfafa38794c | 20 | int main() { |
yo2lts | 0:3bfafa38794c | 21 | pin.mode( PullDown ); |
yo2lts | 0:3bfafa38794c | 22 | pin.attach_asserted( &keyPressed ); //apesi butonul scurt |
yo2lts | 0:3bfafa38794c | 23 | |
yo2lts | 0:3bfafa38794c | 24 | pin.setSamplesTillHeld( 300 ); //tin apasat butonul vreo 5 secunde |
yo2lts | 0:3bfafa38794c | 25 | pin.attach_asserted_held( &keyPressedHeld ); //apesi butonul lung |
yo2lts | 0:3bfafa38794c | 26 | |
yo2lts | 0:3bfafa38794c | 27 | pin.setSampleFrequency(); // Defaults to 20ms. |
yo2lts | 0:3bfafa38794c | 28 | |
yo2lts | 0:3bfafa38794c | 29 | while(1) { |
yo2lts | 0:3bfafa38794c | 30 | pc.printf("START WHILE"); |
yo2lts | 0:3bfafa38794c | 31 | myled = 1; // LED is ON |
yo2lts | 0:3bfafa38794c | 32 | wait(0.2); // 200 ms |
yo2lts | 0:3bfafa38794c | 33 | // myled = 0; // LED is OFF |
yo2lts | 0:3bfafa38794c | 34 | // wait(1.0); // 1 sec |
yo2lts | 0:3bfafa38794c | 35 | } |
yo2lts | 0:3bfafa38794c | 36 | } |