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@0:0c5c2cbf330a, 2021-03-08 (annotated)
- Committer:
- khaiminhvn
- Date:
- Mon Mar 08 18:09:21 2021 +0000
- Revision:
- 0:0c5c2cbf330a
- Child:
- 1:f058cf4e422a
First Draft
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
khaiminhvn | 0:0c5c2cbf330a | 1 | #ifndef DEFS_SETT_H |
khaiminhvn | 0:0c5c2cbf330a | 2 | #define DEFS_SETT_H |
khaiminhvn | 0:0c5c2cbf330a | 3 | |
khaiminhvn | 0:0c5c2cbf330a | 4 | //HARDWARE SETTINGS |
khaiminhvn | 0:0c5c2cbf330a | 5 | #define DEBOUNCE_TIME 10000 //Debounce time for pushbutton (us) |
khaiminhvn | 0:0c5c2cbf330a | 6 | #define INPUT_LOGIC 0 //0 - Active Low, 1 - Active High |
khaiminhvn | 0:0c5c2cbf330a | 7 | |
khaiminhvn | 0:0c5c2cbf330a | 8 | //BEHAVIORIAL SETTINGS |
khaiminhvn | 0:0c5c2cbf330a | 9 | #define TIME_NORMAL 900 //Time Between Adjustment in Normal Mode (seconds) |
khaiminhvn | 0:0c5c2cbf330a | 10 | #define TIME_WSETTING 3 //Time FN button need to be held for the system to go to WSETTING mode (seconds) |
khaiminhvn | 0:0c5c2cbf330a | 11 | #define TIME_MANUAL_TIMEOUT 3600 //Time for the system to resume NORMAL mode after idling in MANUAL mode (seconds) |
khaiminhvn | 0:0c5c2cbf330a | 12 | #define TIME_WSETTING_TIMEOUT 3 //Time for the system to resume NORMAL mode after idling in WSETTING mode (seconds) |
khaiminhvn | 0:0c5c2cbf330a | 13 | #define TICK_WIND 10000ms //Interval for Checking Wind Speed |
khaiminhvn | 0:0c5c2cbf330a | 14 | |
khaiminhvn | 0:0c5c2cbf330a | 15 | //PHYSICAL ATTRIBUTES |
khaiminhvn | 0:0c5c2cbf330a | 16 | #define PANEL_HEIGHT 0.6 //Heigh of Panels' Pivot |
khaiminhvn | 0:0c5c2cbf330a | 17 | #define REFLECTOR1_HEIGHT 0.01 //Height of Reflector 1 Pivot |
khaiminhvn | 0:0c5c2cbf330a | 18 | #define REFLECTOR2_HEIGHT 0.01 //Height of Reflector 2 Pivot |
khaiminhvn | 0:0c5c2cbf330a | 19 | #define REFLECTOR1_LENGTH 1.0 //Length of Reflector 1 |
khaiminhvn | 0:0c5c2cbf330a | 20 | #define REFLECTOR2_LENGTH 1.0 //Length of Reflector 2 |
khaiminhvn | 0:0c5c2cbf330a | 21 | #define REFLECTOR1_DIST 0.6 //Distance Between Panel's Pivot and Reflector 1 Pivot |
khaiminhvn | 0:0c5c2cbf330a | 22 | #define REFLECTOR2_DIST 0.6 //Distance Between Panel's Pivot and Reflector 2 Pivot |
khaiminhvn | 0:0c5c2cbf330a | 23 | #define REFLECTOR1_LOW 0.0 //Lower Limit of Reflector 1 Range of Motion |
khaiminhvn | 0:0c5c2cbf330a | 24 | #define REFLECTOR2_LOW 0.0 //Lower Limit of Reflector 1 Range of Motion |
khaiminhvn | 0:0c5c2cbf330a | 25 | #define REFLECTOR1_HIGH 70 //Upper Limit of Reflector 2 Range of Motion |
khaiminhvn | 0:0c5c2cbf330a | 26 | #define REFLECTOR2_HIGH 70 //Upper Limit of Reflector 2 Range of Motion |
khaiminhvn | 0:0c5c2cbf330a | 27 | |
khaiminhvn | 0:0c5c2cbf330a | 28 | //ALGORITHM SETTINGS |
khaiminhvn | 0:0c5c2cbf330a | 29 | #define LOOP_LIMIT 1000 //Max Loop Iterration |
khaiminhvn | 0:0c5c2cbf330a | 30 | #define ERR_LIMIT 0.01 //Secant Error Limit |
khaiminhvn | 0:0c5c2cbf330a | 31 | |
khaiminhvn | 0:0c5c2cbf330a | 32 | //ACCELERATOR SETTINGS |
khaiminhvn | 0:0c5c2cbf330a | 33 | #define ACC_FREQ 40000 //Accelerometer I2C frequency |
khaiminhvn | 0:0c5c2cbf330a | 34 | #define ANGLE_TOL 2 //Angle Tolerance (Degrees) |
khaiminhvn | 0:0c5c2cbf330a | 35 | #define MEAS_AXIS 0 //Measurement Axis (0 - X, 1 - Y, 2 - Z) |
khaiminhvn | 0:0c5c2cbf330a | 36 | #define N_AVG 15 //Averaging |
khaiminhvn | 0:0c5c2cbf330a | 37 | #define N_CAL 100 //Calibration sampling |
khaiminhvn | 0:0c5c2cbf330a | 38 | |
khaiminhvn | 0:0c5c2cbf330a | 39 | //ANEMOMETER SETTINGS |
khaiminhvn | 0:0c5c2cbf330a | 40 | #define WIND_THRES_INIT 70 //Default safety windspeed (km/h) |
khaiminhvn | 0:0c5c2cbf330a | 41 | #define WIND_THRES_MIN 20 //Minimum safety windspeed setting (km/h) |
khaiminhvn | 0:0c5c2cbf330a | 42 | #define WIND_THRES_MAX 100 //Maximum safety windspeed setting (km/h) |
khaiminhvn | 0:0c5c2cbf330a | 43 | #define VCC 3.3 //VCC of K64F board |
khaiminhvn | 0:0c5c2cbf330a | 44 | |
khaiminhvn | 0:0c5c2cbf330a | 45 | //LCD SETTING |
khaiminhvn | 0:0c5c2cbf330a | 46 | #define LCD_FREQ 50000 //LCD I2C frequency |
khaiminhvn | 0:0c5c2cbf330a | 47 | #define LCD_INIT_DELAY 100000 //LCD initialization delay |
khaiminhvn | 0:0c5c2cbf330a | 48 | #define LCD_DELAY 1000 //Delay for printing characters (us) |
khaiminhvn | 0:0c5c2cbf330a | 49 | |
khaiminhvn | 0:0c5c2cbf330a | 50 | //MODES AND SOURCES |
khaiminhvn | 0:0c5c2cbf330a | 51 | //Operations |
khaiminhvn | 0:0c5c2cbf330a | 52 | #define OP_CALLIBRATION 0 |
khaiminhvn | 0:0c5c2cbf330a | 53 | #define OP_NORMAL 1 |
khaiminhvn | 0:0c5c2cbf330a | 54 | #define OP_WIND 2 |
khaiminhvn | 0:0c5c2cbf330a | 55 | #define OP_MANUAL1 3 |
khaiminhvn | 0:0c5c2cbf330a | 56 | #define OP_MANUAL2 4 |
khaiminhvn | 0:0c5c2cbf330a | 57 | #define OP_WSETTING 5 |
khaiminhvn | 0:0c5c2cbf330a | 58 | //Accelerometer Selection |
khaiminhvn | 0:0c5c2cbf330a | 59 | #define S_PANEL 0 |
khaiminhvn | 0:0c5c2cbf330a | 60 | #define S_R1 1 |
khaiminhvn | 0:0c5c2cbf330a | 61 | #define S_R2 2 |
khaiminhvn | 0:0c5c2cbf330a | 62 | //Motor Selection |
khaiminhvn | 0:0c5c2cbf330a | 63 | #define M1 1 |
khaiminhvn | 0:0c5c2cbf330a | 64 | #define M2 2 |
khaiminhvn | 0:0c5c2cbf330a | 65 | #define M_ALL 3 |
khaiminhvn | 0:0c5c2cbf330a | 66 | #endif |