final cup
Dependencies: HMC6352 PID mbed
main.h
- Committer:
- akudohune
- Date:
- 2013-04-29
- Revision:
- 0:2eebd0301c66
File content as of revision 0:2eebd0301c66:
#define RATE 0.052 #define Long 1.0 #define ENTER 0 #define EXIT 1 #define MOT_NUM 4 #define MOTDRIVER_WAIT 300 //ms #define BAUD_RATE 115200 #define BAUD_RATE2 19200 #define BUT_WAIT 0.3 //s #define ON 1 #define OFF 0 #define PING_ERROR 0xFFFF #define MOT1 1.0 #define MOT2 1.0 #define MOT3 1.0 #define MOT4 1.0 #define OUT_LIMIT 20.0 #define MAX_POW 100 #define MIN_POW -100 DigitalOut led1(LED1); DigitalOut led2(LED2); DigitalOut led3(LED3); DigitalOut led4(LED4); BusOut mbedleds(LED4,LED3,LED2,LED1); HMC6352 compass(p9, p10); Serial driver(p28, p27); // tx, rx Serial device2(p13, p14); // tx, rx Serial pc(USBTX, USBRX); // tx, rx DigitalIn StartButton(p21); DigitalIn CalibEnterButton(p22); DigitalIn CalibExitButton(p23); DigitalIn EEPROMButton(p24); PID pid(0.60, 0.0, 0.010, RATE); //battery is low power version 30.0 0.58 1.0 0.015 battery is high power version 30.0 0.42, 1.0, 0.013 power is low but perfect 20.0 0.45, 0.0, 0.010 Ticker pidUpdata; Timer timer1; Timer Ctimer; LocalFileSystem local("local"); // マウントポイントを定義(ディレクトリパスになる) enum{ HOME_WAIT, DIFFENCE, WARNING, HOLD, }; double standTu = 0; int speed[MOT_NUM] = {0}; uint8_t hold_flag = 0; uint8_t state = HOME_WAIT; float inputPID = 180.0; static double standard; float compassPID = 0.0; extern int diff; extern string StringFIN; extern uint8_t direction; extern uint8_t Distance; extern uint8_t IR_found; extern void PidUpdata(void); extern void array(int,int,int,int); extern void dev_rx(void); extern void dev_tx(void); extern uint16_t ultrasonicVal[4]; #define FRONT_SONIC ultrasonicVal[0] #define BACK_SONIC ultrasonicVal[2] #define RIGHT_SONIC ultrasonicVal[1] #define LEFT_SONIC ultrasonicVal[3]