Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
main.cpp@0:48ce5ea63822, 2019-09-15 (annotated)
- Committer:
- knzw
- Date:
- Sun Sep 15 07:21:09 2019 +0000
- Revision:
- 0:48ce5ea63822
Press USER_BUTTON0 to light up the LED.
Who changed what in which revision?
| User | Revision | Line number | New contents of line |
|---|---|---|---|
| knzw | 0:48ce5ea63822 | 1 | /* mbed Microcontroller Library |
| knzw | 0:48ce5ea63822 | 2 | * Copyright (c) 2018 ARM Limited |
| knzw | 0:48ce5ea63822 | 3 | * SPDX-License-Identifier: Apache-2.0 |
| knzw | 0:48ce5ea63822 | 4 | */ |
| knzw | 0:48ce5ea63822 | 5 | |
| knzw | 0:48ce5ea63822 | 6 | /* ボタン押している間なにかする処理のサンプルプログラム的な(モーメンタリ動作というらしい) */ |
| knzw | 0:48ce5ea63822 | 7 | #include "mbed.h" |
| knzw | 0:48ce5ea63822 | 8 | |
| knzw | 0:48ce5ea63822 | 9 | DigitalOut led1(LED1); |
| knzw | 0:48ce5ea63822 | 10 | DigitalOut led2(LED2); |
| knzw | 0:48ce5ea63822 | 11 | DigitalOut led3(LED3); |
| knzw | 0:48ce5ea63822 | 12 | DigitalOut led4(LED4); |
| knzw | 0:48ce5ea63822 | 13 | |
| knzw | 0:48ce5ea63822 | 14 | #define SLEEP_TIME 500 // (msec) |
| knzw | 0:48ce5ea63822 | 15 | #define PRINT_AFTER_N_LOOPS 20 |
| knzw | 0:48ce5ea63822 | 16 | |
| knzw | 0:48ce5ea63822 | 17 | static InterruptIn btn0(USER_BUTTON0); |
| knzw | 0:48ce5ea63822 | 18 | static bool btndownflg=false; //falseのとき、ボタンを離している |
| knzw | 0:48ce5ea63822 | 19 | |
| knzw | 0:48ce5ea63822 | 20 | void btnfall0(void){ |
| knzw | 0:48ce5ea63822 | 21 | btndownflg=true;//ボタンおした |
| knzw | 0:48ce5ea63822 | 22 | } |
| knzw | 0:48ce5ea63822 | 23 | |
| knzw | 0:48ce5ea63822 | 24 | void btnrise0(void){ |
| knzw | 0:48ce5ea63822 | 25 | btndownflg=false;//ボタンはなれた |
| knzw | 0:48ce5ea63822 | 26 | } |
| knzw | 0:48ce5ea63822 | 27 | |
| knzw | 0:48ce5ea63822 | 28 | |
| knzw | 0:48ce5ea63822 | 29 | int main(){ |
| knzw | 0:48ce5ea63822 | 30 | |
| knzw | 0:48ce5ea63822 | 31 | btn0.fall(&btnfall0); //ボタンを押したときに関数btnfall0を呼び出す |
| knzw | 0:48ce5ea63822 | 32 | btn0.rise(&btnrise0); //ボタンを離したときに関数をbtnrise0を呼び出す |
| knzw | 0:48ce5ea63822 | 33 | |
| knzw | 0:48ce5ea63822 | 34 | while (true) { |
| knzw | 0:48ce5ea63822 | 35 | if(btndownflg){ |
| knzw | 0:48ce5ea63822 | 36 | led1=true; |
| knzw | 0:48ce5ea63822 | 37 | led2=true; |
| knzw | 0:48ce5ea63822 | 38 | led3=true; |
| knzw | 0:48ce5ea63822 | 39 | led4=true; |
| knzw | 0:48ce5ea63822 | 40 | }else{ |
| knzw | 0:48ce5ea63822 | 41 | led1=false; |
| knzw | 0:48ce5ea63822 | 42 | led2=false; |
| knzw | 0:48ce5ea63822 | 43 | led3=false; |
| knzw | 0:48ce5ea63822 | 44 | led4=false; |
| knzw | 0:48ce5ea63822 | 45 | } |
| knzw | 0:48ce5ea63822 | 46 | } |
| knzw | 0:48ce5ea63822 | 47 | } |