
風速計用プログラムです。動きません……
Dependencies: mbed
Fork of mbed_fuusoku by
やっぱり動きます(InterruptInをp30に設定すると読まなくなるボードがあります……)。最新のは校正済みです。
main.cpp@0:51b2d6484a7d, 2016-11-19 (annotated)
- Committer:
- tsumagari
- Date:
- Sat Nov 19 03:49:07 2016 +0000
- Revision:
- 0:51b2d6484a7d
- Child:
- 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 | 0:51b2d6484a7d | 8 | |
tsumagari | 0:51b2d6484a7d | 9 | InterruptIn FusokukeiPin(p21); |
tsumagari | 0:51b2d6484a7d | 10 | Ticker FusokukeiTicker; |
tsumagari | 0:51b2d6484a7d | 11 | Fusokukei air; |
tsumagari | 0:51b2d6484a7d | 12 | volatile int air_kaitensu= 0; |
tsumagari | 0:51b2d6484a7d | 13 | |
tsumagari | 0:51b2d6484a7d | 14 | DigitalOut led(LED1); |
tsumagari | 0:51b2d6484a7d | 15 | DigitalOut led4(LED4); |
tsumagari | 0:51b2d6484a7d | 16 | int time_counter; |
tsumagari | 0:51b2d6484a7d | 17 | |
tsumagari | 0:51b2d6484a7d | 18 | void air_countUp(); |
tsumagari | 0:51b2d6484a7d | 19 | void call_calcAirSpeed(); |
tsumagari | 0:51b2d6484a7d | 20 | void init(); |
tsumagari | 0:51b2d6484a7d | 21 | void FusokukeiInit(); |
tsumagari | 0:51b2d6484a7d | 22 | |
tsumagari | 0:51b2d6484a7d | 23 | void air_countUp(){ |
tsumagari | 0:51b2d6484a7d | 24 | air_kaitensu++; |
tsumagari | 0:51b2d6484a7d | 25 | } |
tsumagari | 0:51b2d6484a7d | 26 | |
tsumagari | 0:51b2d6484a7d | 27 | void call_calcAirSpeed(){ |
tsumagari | 0:51b2d6484a7d | 28 | air.calcAirSpeed(air_kaitensu); |
tsumagari | 0:51b2d6484a7d | 29 | air_kaitensu = 0; |
tsumagari | 0:51b2d6484a7d | 30 | } |
tsumagari | 0:51b2d6484a7d | 31 | |
tsumagari | 0:51b2d6484a7d | 32 | void init(){ |
tsumagari | 0:51b2d6484a7d | 33 | FusokukeiInit(); |
tsumagari | 0:51b2d6484a7d | 34 | led4 = 0; |
tsumagari | 0:51b2d6484a7d | 35 | time_counter = 0; |
tsumagari | 0:51b2d6484a7d | 36 | } |
tsumagari | 0:51b2d6484a7d | 37 | |
tsumagari | 0:51b2d6484a7d | 38 | void FusokukeiInit(){ |
tsumagari | 0:51b2d6484a7d | 39 | FusokukeiPin.rise(air_countUp); |
tsumagari | 0:51b2d6484a7d | 40 | FusokukeiTicker.attach(&call_calcAirSpeed, AIR_LOOP_TIME); |
tsumagari | 0:51b2d6484a7d | 41 | } |
tsumagari | 0:51b2d6484a7d | 42 | |
tsumagari | 0:51b2d6484a7d | 43 | int main(){ |
tsumagari | 0:51b2d6484a7d | 44 | init(); |
tsumagari | 0:51b2d6484a7d | 45 | while(1){ |
tsumagari | 0:51b2d6484a7d | 46 | pc.printf("test %d\n\r",time_counter); |
tsumagari | 0:51b2d6484a7d | 47 | pc.printf("air_kaitensu: %d\n\r",air_kaitensu); |
tsumagari | 0:51b2d6484a7d | 48 | pc.printf("%f\n\r",airSpeed); |
tsumagari | 0:51b2d6484a7d | 49 | led4 = 1; |
tsumagari | 0:51b2d6484a7d | 50 | wait(0.2); |
tsumagari | 0:51b2d6484a7d | 51 | led4 = 0; |
tsumagari | 0:51b2d6484a7d | 52 | wait(0.2); |
tsumagari | 0:51b2d6484a7d | 53 | time_counter++; |
tsumagari | 0:51b2d6484a7d | 54 | } |
tsumagari | 0:51b2d6484a7d | 55 | } |