yup

Dependencies:   mbed

Fork of analoghalls by Bayley Wang

Committer:
nki
Date:
Thu Feb 26 09:50:36 2015 +0000
Revision:
5:eeb8af99cb6c
Parent:
4:f18f6bc5e1fd
Child:
6:4960629abb90
omg so much new stuff check changelog.txt;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
nki 0:9753f3c2e5ca 1 #include "mbed.h"
nki 0:9753f3c2e5ca 2 #include "constants.h"
nki 0:9753f3c2e5ca 3 #include "shared.h"
nki 0:9753f3c2e5ca 4 #include "util.h"
nki 0:9753f3c2e5ca 5 #include "math.h"
bwang 1:70eed554399b 6 #include "isr.h"
nki 0:9753f3c2e5ca 7
nki 0:9753f3c2e5ca 8 Serial pc(SERIAL_TX, SERIAL_RX);
nki 0:9753f3c2e5ca 9
nki 5:eeb8af99cb6c 10
nki 0:9753f3c2e5ca 11 PwmOut pha(_PH_A);
nki 0:9753f3c2e5ca 12 PwmOut phb(_PH_B);
nki 0:9753f3c2e5ca 13 PwmOut phc(_PH_C);
nki 0:9753f3c2e5ca 14
nki 0:9753f3c2e5ca 15 DigitalOut en(_EN);
nki 0:9753f3c2e5ca 16
bwang 2:b5c19d4eddcc 17 DigitalIn dummy(D5);
bwang 2:b5c19d4eddcc 18
nki 0:9753f3c2e5ca 19 AnalogIn throttle(_THROTTLE);
nki 0:9753f3c2e5ca 20 AnalogIn analoga(_ANALOGA);
nki 0:9753f3c2e5ca 21 AnalogIn analogb(_ANALOGB);
nki 0:9753f3c2e5ca 22
nki 5:eeb8af99cb6c 23 AnalogIn ia(_IA);
nki 5:eeb8af99cb6c 24 AnalogIn ib(_IB);
nki 5:eeb8af99cb6c 25
nki 0:9753f3c2e5ca 26 Motor* motor;
nki 0:9753f3c2e5ca 27
bwang 3:86ccde39f61b 28 #ifdef __DEBUG
bwang 3:86ccde39f61b 29 float *fbuffer;
bwang 3:86ccde39f61b 30 int bufidx = 0;
bwang 4:f18f6bc5e1fd 31 int skipidx = 0;
bwang 3:86ccde39f61b 32 #endif
bwang 2:b5c19d4eddcc 33 #ifdef __USE_THROTTLE
bwang 2:b5c19d4eddcc 34 Ticker dtc_upd_ticker;
bwang 2:b5c19d4eddcc 35 Ticker throttle_upd_ticker;
nki 5:eeb8af99cb6c 36 Ticker isense_upd_ticker;
bwang 2:b5c19d4eddcc 37 #endif
nki 0:9753f3c2e5ca 38
bwang 1:70eed554399b 39 float throttle_read;
nki 5:eeb8af99cb6c 40 float ia_read;
nki 5:eeb8af99cb6c 41 float ib_read;
nki 0:9753f3c2e5ca 42
bwang 4:f18f6bc5e1fd 43 int main() {
nki 5:eeb8af99cb6c 44 pc.baud(115200);
bwang 4:f18f6bc5e1fd 45 #ifdef __DEBUG
bwang 4:f18f6bc5e1fd 46 pc.printf("%s\n", "Debug mode ON");
bwang 4:f18f6bc5e1fd 47 #endif
nki 0:9753f3c2e5ca 48 en = 1;
bwang 3:86ccde39f61b 49 #ifdef __DEBUG
bwang 4:f18f6bc5e1fd 50 fbuffer = (float*)malloc(DBG_BUF_SZ*sizeof(float));
bwang 3:86ccde39f61b 51 #endif
nki 0:9753f3c2e5ca 52 initTimers();
nki 0:9753f3c2e5ca 53 initPins();
nki 0:9753f3c2e5ca 54 initData();
nki 0:9753f3c2e5ca 55
nki 0:9753f3c2e5ca 56 while(1) {
bwang 2:b5c19d4eddcc 57 #ifdef __USE_THROTTLE
bwang 1:70eed554399b 58 throttle_read = throttle;
bwang 2:b5c19d4eddcc 59 #endif
nki 5:eeb8af99cb6c 60 ia_read = ia;
nki 5:eeb8af99cb6c 61 ib_read = ib;
nki 5:eeb8af99cb6c 62 isense_update();
nki 5:eeb8af99cb6c 63 pc.printf("%f",motor->current);
nki 5:eeb8af99cb6c 64 pc.printf("\n\r");
bwang 1:70eed554399b 65 pos_update();
bwang 2:b5c19d4eddcc 66 #ifndef __USE_THROTTLE
bwang 2:b5c19d4eddcc 67 dtc_update();
bwang 2:b5c19d4eddcc 68 #endif
bwang 3:86ccde39f61b 69 #ifdef __DEBUG
bwang 3:86ccde39f61b 70 if (motor->debug_stop) break;
bwang 3:86ccde39f61b 71 #endif
nki 0:9753f3c2e5ca 72 }
bwang 3:86ccde39f61b 73 #ifdef __DEBUG
bwang 4:f18f6bc5e1fd 74 for (int i = 0; i < DBG_BUF_SZ; i++) {
bwang 3:86ccde39f61b 75 pc.printf("%f,", fbuffer[i]);
bwang 3:86ccde39f61b 76 }
bwang 3:86ccde39f61b 77 #endif
nki 0:9753f3c2e5ca 78 }