Treehouse Mbed Team / Mbed 2 deprecated APS_DCM1SL2

Dependencies:   mbed

Committer:
mfwic
Date:
Fri Dec 07 17:39:01 2018 +0000
Revision:
10:6c3233b03658
Parent:
9:816b9a4e4f21
Child:
11:01dcfb29fbc4
Fixed LUT for row values >= 332. It was due to the code that was meant to convert from decimal to thermometer code. The LUT has the thermometer code in it so no conversion necessar; Added individual voltage correction factors for the 3 input voltages.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
mfwic 0:44a3005d4f20 1 //-------------------------------------------------------------------------------
mfwic 0:44a3005d4f20 2 //
mfwic 0:44a3005d4f20 3 // Treehouse Designs Inc.
mfwic 0:44a3005d4f20 4 // Colorado Springs, Colorado
mfwic 0:44a3005d4f20 5 //
mfwic 0:44a3005d4f20 6 // Copyright (c) 2016 by Treehouse Designs Inc.
mfwic 0:44a3005d4f20 7 // Copyright (c) 2018 by Agility Power Systems Inc.
mfwic 0:44a3005d4f20 8 //
mfwic 0:44a3005d4f20 9 // This code is the property of Treehouse Designs, Inc. (Treehouse) and
mfwic 0:44a3005d4f20 10 // Agility Power Systems Inc. (Agility) and may not be redistributed
mfwic 0:44a3005d4f20 11 // in any form without prior written permission from
mfwic 0:44a3005d4f20 12 // both copyright holders, Treehouse and Agility.
mfwic 0:44a3005d4f20 13 //
mfwic 0:44a3005d4f20 14 // The above copyright notice and this permission notice shall be included in
mfwic 0:44a3005d4f20 15 // all copies or substantial portions of the Software.
mfwic 0:44a3005d4f20 16 //
mfwic 0:44a3005d4f20 17 //
mfwic 0:44a3005d4f20 18 //-------------------------------------------------------------------------------
mfwic 0:44a3005d4f20 19 //
mfwic 0:44a3005d4f20 20 // REVISION HISTORY:
mfwic 0:44a3005d4f20 21 //
mfwic 0:44a3005d4f20 22 // $Author: $
mfwic 0:44a3005d4f20 23 // $Rev: $
mfwic 0:44a3005d4f20 24 // $Date: $
mfwic 0:44a3005d4f20 25 // $URL: $
mfwic 0:44a3005d4f20 26 //
mfwic 0:44a3005d4f20 27 //-------------------------------------------------------------------------------
mfwic 0:44a3005d4f20 28
mfwic 0:44a3005d4f20 29 #ifndef GLOBALS_H
mfwic 0:44a3005d4f20 30 #define GLOBALS_H
mfwic 0:44a3005d4f20 31
mfwic 7:860b3a8275cb 32 //#define DEBUG_TEST 1
mfwic 6:39442d493098 33 #ifdef DEBUG_TEST
mfwic 6:39442d493098 34 #define DEBUG 1
mfwic 6:39442d493098 35 #else
mfwic 6:39442d493098 36 #define DEBUG 0
mfwic 6:39442d493098 37 #endif
mfwic 6:39442d493098 38
mfwic 0:44a3005d4f20 39 #define TRUE 1
mfwic 0:44a3005d4f20 40 #define FALSE 0
mfwic 0:44a3005d4f20 41
mfwic 0:44a3005d4f20 42 #define GET FALSE
mfwic 0:44a3005d4f20 43 #define SET TRUE
mfwic 0:44a3005d4f20 44
mfwic 8:d3d7dca419b3 45 #define NO_PROMPT FALSE
mfwic 8:d3d7dca419b3 46 #define WITH_PROMPT TRUE
mfwic 8:d3d7dca419b3 47
mfwic 0:44a3005d4f20 48 #define ON 1
mfwic 0:44a3005d4f20 49 #define OFF 0
mfwic 0:44a3005d4f20 50
mfwic 6:39442d493098 51 #define UPDATE_REFRESH_DELAY_US 500000.0
mfwic 9:816b9a4e4f21 52 const unsigned int LOOP_COUNTER = 500000.0/500;
mfwic 6:39442d493098 53
mfwic 9:816b9a4e4f21 54 #define ADC_MAX_VALUE 65536
mfwic 9:816b9a4e4f21 55 const unsigned int ADC_SCALE_FACTOR = ADC_MAX_VALUE/2;
mfwic 9:816b9a4e4f21 56 #define MAX_LUT_ENTRIES 1024
mfwic 9:816b9a4e4f21 57 const unsigned int ADC_RESULT_SCALE_FACTOR = ADC_MAX_VALUE/MAX_LUT_ENTRIES;
mfwic 9:816b9a4e4f21 58
mfwic 8:d3d7dca419b3 59 #define VOLTAGE_TARG_VALUE 1.65
mfwic 10:6c3233b03658 60 #define VOLTAGE_48_ACTUAL_VALUE 1.51
mfwic 10:6c3233b03658 61 #define VOLTAGE_24_ACTUAL_VALUE 1.55
mfwic 10:6c3233b03658 62 #define VOLTAGE_12_ACTUAL_VALUE 1.53
mfwic 10:6c3233b03658 63 const double VOLTAGE_48_CORRECTION = VOLTAGE_TARG_VALUE/VOLTAGE_48_ACTUAL_VALUE/ADC_SCALE_FACTOR;
mfwic 10:6c3233b03658 64 const double VOLTAGE_24_CORRECTION = VOLTAGE_TARG_VALUE/VOLTAGE_24_ACTUAL_VALUE/ADC_SCALE_FACTOR;
mfwic 10:6c3233b03658 65 const double VOLTAGE_12_CORRECTION = VOLTAGE_TARG_VALUE/VOLTAGE_12_ACTUAL_VALUE/ADC_SCALE_FACTOR;
mfwic 10:6c3233b03658 66 const double VOLTAGE_48_FACTOR = 48.0*VOLTAGE_48_CORRECTION;
mfwic 10:6c3233b03658 67 const double VOLTAGE_24_FACTOR = 24.0*VOLTAGE_24_CORRECTION;
mfwic 10:6c3233b03658 68 const double VOLTAGE_12_FACTOR = 12.0*VOLTAGE_12_CORRECTION;
mfwic 8:d3d7dca419b3 69
mfwic 8:d3d7dca419b3 70 #define CURRENT_ACTUAL_VALUE 1.7091
mfwic 8:d3d7dca419b3 71 #define CURRENT_TARG_VALUE 1.65
mfwic 8:d3d7dca419b3 72 //const double CURRENT_OFFSET = (CURRENT_ACTUAL_VALUE/CURRENT_TARG_VALUE)*ADC_SCALE_FACTOR;
mfwic 8:d3d7dca419b3 73 const double CURRENT_48_OFFSET = 33940;
mfwic 8:d3d7dca419b3 74 const double CURRENT_24_OFFSET = 33580;
mfwic 8:d3d7dca419b3 75 const double CURRENT_12_OFFSET = 33380;
mfwic 8:d3d7dca419b3 76 //#define CURRENT_OFFSET 33940
mfwic 8:d3d7dca419b3 77 //#define CURRENT_DIV_FACTOR -390
mfwic 8:d3d7dca419b3 78 #define CURRENT_48_DIV_FACTOR -368
mfwic 8:d3d7dca419b3 79 #define CURRENT_24_DIV_FACTOR -308
mfwic 8:d3d7dca419b3 80 #define CURRENT_12_DIV_FACTOR -324
mfwic 8:d3d7dca419b3 81 #define CURRENT_CONTROL_OFFSET 0.25
mfwic 8:d3d7dca419b3 82
mfwic 6:39442d493098 83 #define DATA_ROW 1
mfwic 6:39442d493098 84
mfwic 0:44a3005d4f20 85 #define BOARD_ENABLE_DELAY_MS 50
mfwic 0:44a3005d4f20 86
mfwic 1:9f8583ba2431 87 #define ALLON 0x1FFF
mfwic 4:db38665c3727 88 const int allon[] = {1,1,1,1, 1,1,1,1, 1,1,1,1, 1,1,1,1};
mfwic 1:9f8583ba2431 89 #define ALLOFF 0x0000
mfwic 6:39442d493098 90 const int alloff[] = {0,0,0,0, 0,0,0,0, 0,0,0,0, 0,0,0,0};
mfwic 1:9f8583ba2431 91
mfwic 1:9f8583ba2431 92 #define MAX_BOARDS 12
mfwic 1:9f8583ba2431 93 #define MAX_REGISTERS 1
mfwic 0:44a3005d4f20 94
mfwic 6:39442d493098 95 #define WEIGHT_BIN_WIDTH 5
mfwic 10:6c3233b03658 96 #define BOARDS_THERMCODE_WIDTH 12
mfwic 6:39442d493098 97
mfwic 0:44a3005d4f20 98 extern int menuLevel;
mfwic 0:44a3005d4f20 99
mfwic 0:44a3005d4f20 100 #define LEVEL_MAIN 0
mfwic 0:44a3005d4f20 101
mfwic 0:44a3005d4f20 102 extern void processCommand(void);
mfwic 0:44a3005d4f20 103
mfwic 0:44a3005d4f20 104 #endif