ジャパンオープン用のメインプログラム
Dependencies: mbed AQM1602 HMC6352 PID
setting/main.h@10:6df631c39f9b, 2016-03-10 (annotated)
- Committer:
- lilac0112_1
- Date:
- Thu Mar 10 03:03:50 2016 +0000
- Revision:
- 10:6df631c39f9b
- Parent:
- 9:c966191926c5
- Child:
- 13:b20921316f3c
pid+alpha
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
lilac0112_1 | 0:ea35c18c85fc | 1 | #ifndef _MAIN_H_ |
lilac0112_1 | 0:ea35c18c85fc | 2 | #define _MAIN_H_ |
lilac0112_1 | 0:ea35c18c85fc | 3 | |
lilac0112_1 | 0:ea35c18c85fc | 4 | #include "def.h" |
lilac0112_1 | 0:ea35c18c85fc | 5 | |
lilac0112_1 | 0:ea35c18c85fc | 6 | //pc(Computer) |
lilac0112_1 | 0:ea35c18c85fc | 7 | RawSerial pc(monitor_tx, monitor_rx); |
lilac0112_1 | 0:ea35c18c85fc | 8 | //led(main) |
lilac0112_1 | 0:ea35c18c85fc | 9 | DigitalOut LED[4]={led1, led2, led3, led4}; |
lilac0112_1 | 0:ea35c18c85fc | 10 | //line(bottom) |
lilac0112_1 | 2:635947de1583 | 11 | BusOut LineKeeper(lineInA, lineInB, lineInC); |
lilac0112_1 | 2:635947de1583 | 12 | BusIn LineRaw(lineA2, lineB2, lineC2); |
lilac0112_1 | 2:635947de1583 | 13 | BusIn LineHold(lineA1, lineB1, lineC1); |
lilac0112_1 | 0:ea35c18c85fc | 14 | InterruptIn Line[3]={lineA2, lineB2, lineC2}; |
lilac0112_1 | 9:c966191926c5 | 15 | InterruptIn LineHolding[3]={lineA1, lineB1, lineC1}; |
lilac0112_1 | 0:ea35c18c85fc | 16 | //ballcheck(bottom) |
lilac0112_1 | 0:ea35c18c85fc | 17 | DigitalIn BallChecker(ballcheck); |
lilac0112_1 | 0:ea35c18c85fc | 18 | AnalogIn BallCheckerA(ballcheck); |
lilac0112_1 | 0:ea35c18c85fc | 19 | //debug_switch(debug_board) |
lilac0112_1 | 0:ea35c18c85fc | 20 | DigitalIn Sw[4] = {selectsw1, selectsw2, debugsw1, debugsw2}; |
lilac0112_1 | 0:ea35c18c85fc | 21 | //motor(main) |
lilac0112_1 | 0:ea35c18c85fc | 22 | Serial motor(motor_tx, motor_rx); |
lilac0112_1 | 0:ea35c18c85fc | 23 | //spi(main) |
lilac0112_1 | 0:ea35c18c85fc | 24 | SPI spi(SPI_mosi, SPI_miso, SPI_slck); |
lilac0112_1 | 0:ea35c18c85fc | 25 | DigitalOut spi_ss[4]={SPI_ss_sd, SPI_ss_sonic, SPI_ss_color, SPI_ss_ir}; |
lilac0112_1 | 0:ea35c18c85fc | 26 | //bluetooth(debug_board) |
lilac0112_1 | 0:ea35c18c85fc | 27 | RawSerial RN42(blue_rxd, blue_txd); |
lilac0112_1 | 0:ea35c18c85fc | 28 | DigitalOut hmc_reset(blue_reset); |
lilac0112_1 | 0:ea35c18c85fc | 29 | //lcd(debug_board) |
lilac0112_1 | 0:ea35c18c85fc | 30 | AQM1602 Lcd(lcd_sda, lcd_scl); |
lilac0112_1 | 0:ea35c18c85fc | 31 | //cmps(debug_board) |
lilac0112_1 | 0:ea35c18c85fc | 32 | HMC6352 hmc(sens_sda, sens_scl); |
lilac0112_1 | 0:ea35c18c85fc | 33 | //mouse(bottom) |
lilac0112_1 | 0:ea35c18c85fc | 34 | adns_9800 mouse_sensor(mouse_mosi, mouse_miso, mouse_slck, mouse_ss); |
lilac0112_1 | 0:ea35c18c85fc | 35 | //solenoid(bottom) |
lilac0112_1 | 0:ea35c18c85fc | 36 | DigitalOut kicker(solenoid); |
lilac0112_1 | 0:ea35c18c85fc | 37 | |
lilac0112_1 | 0:ea35c18c85fc | 38 | //Serial for motors |
lilac0112_1 | 0:ea35c18c85fc | 39 | int speed[4]={0}; |
lilac0112_1 | 0:ea35c18c85fc | 40 | string StringFIN; |
lilac0112_1 | 0:ea35c18c85fc | 41 | //PID |
lilac0112_1 | 0:ea35c18c85fc | 42 | PID pid(P_GAIN,I_GAIN,D_GAIN, RATE); |
lilac0112_1 | 0:ea35c18c85fc | 43 | Ticker pidupdate; |
lilac0112_1 | 0:ea35c18c85fc | 44 | //for Serial |
lilac0112_1 | 0:ea35c18c85fc | 45 | volatile uint8_t INdata[DATA_NUM]={0}, EXdata[DATA_NUM]={0}; |
lilac0112_1 | 0:ea35c18c85fc | 46 | //for DataSet |
lilac0112_1 | 0:ea35c18c85fc | 47 | //Record data; |
lilac0112_1 | 0:ea35c18c85fc | 48 | //NewStruct |
lilac0112_1 | 0:ea35c18c85fc | 49 | CompassVal cmps_set; |
lilac0112_1 | 2:635947de1583 | 50 | SensorVal data; |
lilac0112_1 | 0:ea35c18c85fc | 51 | SystemVal sys; |
lilac0112_1 | 0:ea35c18c85fc | 52 | //for transition |
lilac0112_1 | 0:ea35c18c85fc | 53 | Ticker Sw_ticker; |
lilac0112_1 | 0:ea35c18c85fc | 54 | Timeout button; |
lilac0112_1 | 0:ea35c18c85fc | 55 | bool state[4]={0,0,0,0}; |
lilac0112_1 | 0:ea35c18c85fc | 56 | uint8_t statesum=0, last_statesum=0; |
lilac0112_1 | 0:ea35c18c85fc | 57 | // for Time |
lilac0112_1 | 0:ea35c18c85fc | 58 | Ticker Motor_ticker; |
lilac0112_1 | 0:ea35c18c85fc | 59 | Ticker Line_ticker; |
lilac0112_1 | 0:ea35c18c85fc | 60 | Ticker Ir_ticker; |
lilac0112_1 | 0:ea35c18c85fc | 61 | Ticker Ping_ticker; |
lilac0112_1 | 10:6df631c39f9b | 62 | Ticker Ping_ticker2; |
lilac0112_1 | 0:ea35c18c85fc | 63 | Ticker Solenoid_ticker; |
lilac0112_1 | 0:ea35c18c85fc | 64 | Ticker Hmc_ticker; |
lilac0112_1 | 0:ea35c18c85fc | 65 | Timeout Solenoid_timeout; |
lilac0112_1 | 0:ea35c18c85fc | 66 | Timeout Line_timeout[3]; |
lilac0112_1 | 0:ea35c18c85fc | 67 | Ticker Duty[DUTY_NUM]; |
lilac0112_1 | 0:ea35c18c85fc | 68 | Timeout Stp; |
lilac0112_1 | 0:ea35c18c85fc | 69 | double dutycycle[DUTY_NUM] ={//[s] |
lilac0112_1 | 0:ea35c18c85fc | 70 | 0.2 |
lilac0112_1 | 0:ea35c18c85fc | 71 | }; |
lilac0112_1 | 0:ea35c18c85fc | 72 | |
lilac0112_1 | 0:ea35c18c85fc | 73 | #endif /*_MAIN_H_*/ |