127 lines
3.3 KiB
C
127 lines
3.3 KiB
C
/*
|
|
-----------------------------------------------------------
|
|
Settings for AVR based MCUs
|
|
-----------------------------------------------------------
|
|
General settings for the CG scale.
|
|
*/
|
|
|
|
// **** Loadcell hardware settings ****
|
|
|
|
#define NUMBER_LOADCELLS 3 // if set to 2, the parameters of loadcell 3 are ignored
|
|
|
|
#define DISTANCE_X1 30 // mm
|
|
#define DISTANCE_X2 350 // mm
|
|
#define DISTANCE_X3 220 // mm
|
|
|
|
#define LOADCELL1_CALIBRATION_FACTOR 900 // user set calibration factor
|
|
#define LOADCELL2_CALIBRATION_FACTOR 900 // user set calibration factor
|
|
#define LOADCELL3_CALIBRATION_FACTOR 900 // user set calibration factor
|
|
|
|
/*
|
|
CG scale with 2 Loadcells:
|
|
|
|
|
|
<- ||=== Loadcell 1 ========== Loadcell 2
|
|
|
|
| | |
|
|
|---X1---|---------X2----------|
|
|
|
|
|
|
|
|
CG scale with 3 Loadcells:
|
|
|
|
-- || Loadcell 1
|
|
| || ||
|
|
| || ||
|
|
| || ||
|
|
<- X3 || ||================ Loadcell 2
|
|
| || ||
|
|
| || ||
|
|
| || ||
|
|
-- || Loadcell 3
|
|
|
|
| | |
|
|
|---X1---|---------X2----------|
|
|
*/
|
|
|
|
|
|
#define PIN_LOADCELL1_DOUT A2
|
|
#define PIN_LOADCELL1_PD_SCK A3
|
|
|
|
#define PIN_LOADCELL2_DOUT A0
|
|
#define PIN_LOADCELL2_PD_SCK A1
|
|
|
|
#define PIN_LOADCELL3_DOUT A9
|
|
#define PIN_LOADCELL3_PD_SCK A10
|
|
|
|
|
|
|
|
// **** Measurement settings ****
|
|
|
|
#define STABILISINGTIME 3000 // ms
|
|
|
|
#define UPDATE_INTERVAL_OLED_MENU 500 // ms
|
|
#define UPDATE_INTERVAL_LOADCELL 100 // ms
|
|
|
|
#define SMOOTHING_LOADCELL 0.4 // IIR filter: smoothing value from 0.00-1.00
|
|
|
|
#define MINIMAL_CG_WEIGHT 10 // g if lower, no CG is displayed (0mm)
|
|
#define MINIMAL_TOTAL_WEIGHT 1 // g if lower, weight = 0 is displayed
|
|
|
|
|
|
|
|
// **** Calibration settings ****
|
|
|
|
#define REF_WEIGHT 1500 // g
|
|
#define REF_CG 100 // mm
|
|
|
|
|
|
|
|
// **** Display settings ****
|
|
|
|
// Please UNCOMMENT the display used
|
|
|
|
U8G2_SH1106_128X64_NONAME_1_HW_I2C oledDisplay(U8G2_R0, /* reset=*/ U8X8_PIN_NONE);
|
|
//U8G2_SSD1306_128X64_NONAME_1_HW_I2C oledDisplay(U8G2_R0, /* reset=*/ U8X8_PIN_NONE);
|
|
|
|
|
|
|
|
// **** Voltage measurement settings ****
|
|
|
|
// analog input pin
|
|
#define VOLTAGE_PIN A7
|
|
|
|
// supply voltage
|
|
#define V_REF 5000 // set supply voltage from 1800 to 5500mV
|
|
|
|
// voltage divider
|
|
#define RESISTOR_R1 10000 // ohm
|
|
#define RESISTOR_R2 10000 // ohm
|
|
|
|
/*
|
|
voltage input
|
|
|
|
|
|
|
|
| |
|
|
| | R1
|
|
| |
|
|
|
|
|
analog Pin <------+
|
|
|
|
|
| |
|
|
| | R2
|
|
| |
|
|
|
|
|
|
|
|
GND
|
|
*/
|
|
|
|
// calculate voltage to percent
|
|
#define ENABLE_PERCENTLIST true
|
|
|
|
// Battery type
|
|
#define BAT_TYPE B_VOLT
|
|
|
|
// Battery cells
|
|
#define BAT_CELLS 2
|