ジャパンオープン用のメインプログラム

Dependencies:   mbed AQM1602 HMC6352 PID

Committer:
lilac0112_1
Date:
Tue Mar 08 09:52:22 2016 +0000
Revision:
9:c966191926c5
Parent:
4:52da8da146d4
Child:
10:6df631c39f9b
somehow

Who changed what in which revision?

UserRevisionLine numberNew 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 0:ea35c18c85fc 62 Ticker Solenoid_ticker;
lilac0112_1 0:ea35c18c85fc 63 Ticker Hmc_ticker;
lilac0112_1 0:ea35c18c85fc 64 Timeout Solenoid_timeout;
lilac0112_1 0:ea35c18c85fc 65 Timeout Line_timeout[3];
lilac0112_1 0:ea35c18c85fc 66 Ticker Duty[DUTY_NUM];
lilac0112_1 0:ea35c18c85fc 67 Timeout Stp;
lilac0112_1 0:ea35c18c85fc 68 double dutycycle[DUTY_NUM] ={//[s]
lilac0112_1 0:ea35c18c85fc 69 0.2
lilac0112_1 0:ea35c18c85fc 70 };
lilac0112_1 0:ea35c18c85fc 71
lilac0112_1 0:ea35c18c85fc 72 #endif /*_MAIN_H_*/