Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Defs_Sett.h
- Committer:
- khaiminhvn
- Date:
- 2021-03-11
- Revision:
- 3:8580dc2bce46
- Parent:
- 2:014cf2a98712
- Child:
- 4:2f802af67f4d
File content as of revision 3:8580dc2bce46:
#ifndef DEFS_SETT_H #define DEFS_SETT_H //HARDWARE SETTINGS #define DEBOUNCE_TIME 10000 //Debounce time for pushbutton (us) #define INPUT_LOGIC 1 //0 - Active Low, 1 - Active High #define LOOP_DELAY 10000 //Delay for main loop (us) //BEHAVIORIAL SETTINGS #define TIME_NORMAL 10 //Time Between Adjustment in Normal Mode (seconds) #define TIME_WSETTING 1 //Time FN button need to be held for the system to go to WSETTING mode (seconds) #define TIME_MANUAL_TIMEOUT 3600 //Time for the system to resume NORMAL mode after idling in MANUAL mode (seconds) #define TIME_WSETTING_TIMEOUT 3 //Time for the system to resume NORMAL mode after idling in WSETTING mode (seconds) #define TICK_WIND 1000ms //Interval for Checking Wind Speed //PHYSICAL ATTRIBUTES #define PANEL_HEIGHT 0.6 //Heigh of Panels' Pivot #define REFLECTOR1_HEIGHT 0.01 //Height of Reflector 1 Pivot #define REFLECTOR2_HEIGHT 0.01 //Height of Reflector 2 Pivot #define REFLECTOR1_LENGTH 1.0 //Length of Reflector 1 #define REFLECTOR2_LENGTH 1.0 //Length of Reflector 2 #define REFLECTOR1_DIST 0.6 //Distance Between Panel's Pivot and Reflector 1 Pivot #define REFLECTOR2_DIST 0.6 //Distance Between Panel's Pivot and Reflector 2 Pivot #define REFLECTOR1_LOW 0.0 //Lower Limit of Reflector 1 Range of Motion #define REFLECTOR2_LOW 0.0 //Lower Limit of Reflector 1 Range of Motion #define REFLECTOR1_HIGH 70 //Upper Limit of Reflector 2 Range of Motion #define REFLECTOR2_HIGH 70 //Upper Limit of Reflector 2 Range of Motion //ALGORITHM SETTINGS #define LOOP_LIMIT 1000 //Max Loop Iterration #define ERR_LIMIT 0.01 //Secant Error Limit //ACCELEROMETER SETTINGS #define ANGLE_TOL 2 //Angle Tolerance (Degrees) #define N_AVG 60 //Averaging #define N_CAL 150 //Calibration sampling #define MEAS_AXIS 2 //Measurement Axis (0 - Z, 1 - Y, 2 - X) #define MUL_P 1.0 //Multiplier of panel accelerometer #define MUL_R1 1.0 //Multiplier of reflector 1 accelerometer #define MUL_R2 1.0 //Multiplier of reflector 2 accelerometer //ANEMOMETER SETTINGS #define WIND_THRES_INIT 10 //Default safety windspeed (km/h) #define WIND_THRES_MIN 10 //Minimum safety windspeed setting (km/h) #define WIND_THRES_MAX 100 //Maximum safety windspeed setting (km/h) #define WIND_AVG 15 //Averaging #define VCC 3.3 //VCC of K64F board //LCD SETTING #define LCD_INIT_DELAY 100000 //LCD initialization delay #define LCD_DELAY 1000 //Delay for printing characters (us) #define LCD_WRATE 1 //LCD refresh rate for windspeed (s) //I2C SETTING #define I2C_FREQ 50000 //I2C Frequency (Hz) //MODES AND SOURCES //Operations #define OP_CALIBRATION 0 #define OP_NORMAL 1 #define OP_WIND 2 #define OP_MANUAL1 3 #define OP_MANUAL2 4 #define OP_WSETTING 5 #define OP_PLACEMENT 6 //Accelerometer Selection #define S_PANEL 0 #define S_R1 1 #define S_R2 2 //Motor Selection #define M1 1 #define M2 2 #define M_ALL 3 #endif