N K
/
analoghalls_part_4
yup
Fork of analoghalls by
main.cpp@4:f18f6bc5e1fd, 2015-02-26 (annotated)
- Committer:
- bwang
- Date:
- Thu Feb 26 04:49:21 2015 +0000
- Revision:
- 4:f18f6bc5e1fd
- Parent:
- 3:86ccde39f61b
- Child:
- 5:eeb8af99cb6c
latest;
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
nki | 0:9753f3c2e5ca | 1 | #include "mbed.h" |
bwang | 2:b5c19d4eddcc | 2 | |
bwang | 2:b5c19d4eddcc | 3 | |
nki | 0:9753f3c2e5ca | 4 | #include "constants.h" |
nki | 0:9753f3c2e5ca | 5 | #include "shared.h" |
nki | 0:9753f3c2e5ca | 6 | #include "util.h" |
nki | 0:9753f3c2e5ca | 7 | #include "math.h" |
bwang | 1:70eed554399b | 8 | #include "isr.h" |
nki | 0:9753f3c2e5ca | 9 | |
nki | 0:9753f3c2e5ca | 10 | Serial pc(SERIAL_TX, SERIAL_RX); |
nki | 0:9753f3c2e5ca | 11 | |
nki | 0:9753f3c2e5ca | 12 | PwmOut pha(_PH_A); |
nki | 0:9753f3c2e5ca | 13 | PwmOut phb(_PH_B); |
nki | 0:9753f3c2e5ca | 14 | PwmOut phc(_PH_C); |
nki | 0:9753f3c2e5ca | 15 | |
nki | 0:9753f3c2e5ca | 16 | DigitalOut en(_EN); |
nki | 0:9753f3c2e5ca | 17 | |
bwang | 2:b5c19d4eddcc | 18 | DigitalIn dummy(D5); |
bwang | 2:b5c19d4eddcc | 19 | |
nki | 0:9753f3c2e5ca | 20 | AnalogIn throttle(_THROTTLE); |
nki | 0:9753f3c2e5ca | 21 | AnalogIn analoga(_ANALOGA); |
nki | 0:9753f3c2e5ca | 22 | AnalogIn analogb(_ANALOGB); |
nki | 0:9753f3c2e5ca | 23 | |
nki | 0:9753f3c2e5ca | 24 | Motor* motor; |
nki | 0:9753f3c2e5ca | 25 | |
bwang | 3:86ccde39f61b | 26 | #ifdef __DEBUG |
bwang | 3:86ccde39f61b | 27 | float *fbuffer; |
bwang | 3:86ccde39f61b | 28 | int bufidx = 0; |
bwang | 4:f18f6bc5e1fd | 29 | int skipidx = 0; |
bwang | 3:86ccde39f61b | 30 | #endif |
bwang | 2:b5c19d4eddcc | 31 | #ifdef __USE_THROTTLE |
bwang | 2:b5c19d4eddcc | 32 | Ticker dtc_upd_ticker; |
bwang | 2:b5c19d4eddcc | 33 | Ticker throttle_upd_ticker; |
bwang | 2:b5c19d4eddcc | 34 | #endif |
nki | 0:9753f3c2e5ca | 35 | |
bwang | 1:70eed554399b | 36 | float throttle_read; |
nki | 0:9753f3c2e5ca | 37 | |
bwang | 4:f18f6bc5e1fd | 38 | int main() { |
bwang | 4:f18f6bc5e1fd | 39 | #ifdef __DEBUG |
bwang | 4:f18f6bc5e1fd | 40 | pc.printf("%s\n", "Debug mode ON"); |
bwang | 4:f18f6bc5e1fd | 41 | #endif |
nki | 0:9753f3c2e5ca | 42 | en = 1; |
bwang | 3:86ccde39f61b | 43 | #ifdef __DEBUG |
bwang | 4:f18f6bc5e1fd | 44 | fbuffer = (float*)malloc(DBG_BUF_SZ*sizeof(float)); |
bwang | 3:86ccde39f61b | 45 | #endif |
nki | 0:9753f3c2e5ca | 46 | initTimers(); |
nki | 0:9753f3c2e5ca | 47 | initPins(); |
nki | 0:9753f3c2e5ca | 48 | initData(); |
nki | 0:9753f3c2e5ca | 49 | |
nki | 0:9753f3c2e5ca | 50 | while(1) { |
bwang | 2:b5c19d4eddcc | 51 | #ifdef __USE_THROTTLE |
bwang | 1:70eed554399b | 52 | throttle_read = throttle; |
bwang | 2:b5c19d4eddcc | 53 | #endif |
bwang | 1:70eed554399b | 54 | pos_update(); |
bwang | 2:b5c19d4eddcc | 55 | #ifndef __USE_THROTTLE |
bwang | 2:b5c19d4eddcc | 56 | dtc_update(); |
bwang | 2:b5c19d4eddcc | 57 | #endif |
bwang | 3:86ccde39f61b | 58 | #ifdef __DEBUG |
bwang | 3:86ccde39f61b | 59 | if (motor->debug_stop) break; |
bwang | 3:86ccde39f61b | 60 | #endif |
nki | 0:9753f3c2e5ca | 61 | } |
bwang | 3:86ccde39f61b | 62 | #ifdef __DEBUG |
bwang | 4:f18f6bc5e1fd | 63 | for (int i = 0; i < DBG_BUF_SZ; i++) { |
bwang | 3:86ccde39f61b | 64 | pc.printf("%f,", fbuffer[i]); |
bwang | 3:86ccde39f61b | 65 | } |
bwang | 3:86ccde39f61b | 66 | #endif |
nki | 0:9753f3c2e5ca | 67 | } |