
風速計用プログラムです。動きません……
Dependencies: mbed
Fork of mbed_fuusoku by
やっぱり動きます(InterruptInをp30に設定すると読まなくなるボードがあります……)。最新のは校正済みです。
main.cpp@2:ba1abf27fe4c, 2016-11-19 (annotated)
- Committer:
- tsumagari
- Date:
- Sat Nov 19 09:00:46 2016 +0000
- Revision:
- 2:ba1abf27fe4c
- Parent:
- 1:d802daeec8f6
??????;
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
tsumagari | 0:51b2d6484a7d | 1 | //計器プログラム |
tsumagari | 0:51b2d6484a7d | 2 | #include "mbed.h" |
tsumagari | 0:51b2d6484a7d | 3 | #include "Fusokukei.h" |
tsumagari | 0:51b2d6484a7d | 4 | |
tsumagari | 0:51b2d6484a7d | 5 | #define AIR_LOOP_TIME 0.01 |
tsumagari | 0:51b2d6484a7d | 6 | |
tsumagari | 0:51b2d6484a7d | 7 | Serial pc(USBTX,USBRX); |
tsumagari | 1:d802daeec8f6 | 8 | //PwmOut test(p22); |
tsumagari | 0:51b2d6484a7d | 9 | |
tsumagari | 1:d802daeec8f6 | 10 | InterruptIn FusokukeiPin(p21); |
tsumagari | 0:51b2d6484a7d | 11 | Ticker FusokukeiTicker; |
tsumagari | 0:51b2d6484a7d | 12 | Fusokukei air; |
tsumagari | 0:51b2d6484a7d | 13 | volatile int air_kaitensu= 0; |
tsumagari | 0:51b2d6484a7d | 14 | |
tsumagari | 0:51b2d6484a7d | 15 | DigitalOut led(LED1); |
tsumagari | 0:51b2d6484a7d | 16 | DigitalOut led4(LED4); |
tsumagari | 0:51b2d6484a7d | 17 | int time_counter; |
tsumagari | 0:51b2d6484a7d | 18 | |
tsumagari | 0:51b2d6484a7d | 19 | void air_countUp(); |
tsumagari | 0:51b2d6484a7d | 20 | void call_calcAirSpeed(); |
tsumagari | 0:51b2d6484a7d | 21 | void init(); |
tsumagari | 0:51b2d6484a7d | 22 | void FusokukeiInit(); |
tsumagari | 0:51b2d6484a7d | 23 | |
tsumagari | 0:51b2d6484a7d | 24 | void air_countUp(){ |
tsumagari | 0:51b2d6484a7d | 25 | air_kaitensu++; |
tsumagari | 0:51b2d6484a7d | 26 | } |
tsumagari | 0:51b2d6484a7d | 27 | |
tsumagari | 0:51b2d6484a7d | 28 | void call_calcAirSpeed(){ |
tsumagari | 0:51b2d6484a7d | 29 | air.calcAirSpeed(air_kaitensu); |
tsumagari | 0:51b2d6484a7d | 30 | air_kaitensu = 0; |
tsumagari | 0:51b2d6484a7d | 31 | } |
tsumagari | 0:51b2d6484a7d | 32 | |
tsumagari | 0:51b2d6484a7d | 33 | void init(){ |
tsumagari | 0:51b2d6484a7d | 34 | FusokukeiInit(); |
tsumagari | 0:51b2d6484a7d | 35 | led4 = 0; |
tsumagari | 0:51b2d6484a7d | 36 | time_counter = 0; |
tsumagari | 1:d802daeec8f6 | 37 | // test.period(1); |
tsumagari | 0:51b2d6484a7d | 38 | } |
tsumagari | 0:51b2d6484a7d | 39 | |
tsumagari | 0:51b2d6484a7d | 40 | void FusokukeiInit(){ |
tsumagari | 0:51b2d6484a7d | 41 | FusokukeiPin.rise(air_countUp); |
tsumagari | 0:51b2d6484a7d | 42 | FusokukeiTicker.attach(&call_calcAirSpeed, AIR_LOOP_TIME); |
tsumagari | 0:51b2d6484a7d | 43 | } |
tsumagari | 0:51b2d6484a7d | 44 | |
tsumagari | 0:51b2d6484a7d | 45 | int main(){ |
tsumagari | 0:51b2d6484a7d | 46 | init(); |
tsumagari | 0:51b2d6484a7d | 47 | while(1){ |
tsumagari | 1:d802daeec8f6 | 48 | // test = 0.5; |
tsumagari | 1:d802daeec8f6 | 49 | // pc.printf("test %d\n\r",time_counter); |
tsumagari | 0:51b2d6484a7d | 50 | pc.printf("air_kaitensu: %d\n\r",air_kaitensu); |
tsumagari | 1:d802daeec8f6 | 51 | pc.printf("ariSpeed_max: %f\n\r",airSpeed_max); |
tsumagari | 1:d802daeec8f6 | 52 | // pc.printf("Pin: %d\n\r",FusokukeiPin.read()); |
tsumagari | 1:d802daeec8f6 | 53 | // led4 = 1; |
tsumagari | 1:d802daeec8f6 | 54 | // wait(0.2); |
tsumagari | 1:d802daeec8f6 | 55 | // led4 = 0; |
tsumagari | 1:d802daeec8f6 | 56 | // wait(0.2); |
tsumagari | 1:d802daeec8f6 | 57 | // time_counter++; |
tsumagari | 0:51b2d6484a7d | 58 | } |
tsumagari | 0:51b2d6484a7d | 59 | } |