Treehouse Mbed Team / Mbed 2 deprecated APS_DCM1SL

Dependencies:   mbed

Committer:
Slord2142
Date:
Tue Mar 12 22:16:03 2019 +0000
Revision:
49:65c714a5def2
Parent:
44:741ee27c8a34
Child:
51:abe8a392d50b
ILR properly interrupts, I2C set up to interrupt (currently unused), and pins now reference the numFast table for when they turn on.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
mfwic 42:3ae73b61f657 1 //-------------------------------------------------------------------------------
mfwic 42:3ae73b61f657 2 //
mfwic 42:3ae73b61f657 3 // Treehouse Designs Inc.
mfwic 42:3ae73b61f657 4 // Colorado Springs, Colorado
mfwic 42:3ae73b61f657 5 //
mfwic 42:3ae73b61f657 6 // Copyright (c) 2016 by Treehouse Designs Inc.
mfwic 42:3ae73b61f657 7 // Copyright (c) 2018 by Agility Power Systems Inc.
mfwic 42:3ae73b61f657 8 //
mfwic 42:3ae73b61f657 9 // This code is the property of Treehouse Designs, Inc. (Treehouse) and
mfwic 42:3ae73b61f657 10 // Agility Power Systems Inc. (Agility) and may not be redistributed
mfwic 42:3ae73b61f657 11 // in any form without prior written permission from
mfwic 42:3ae73b61f657 12 // both copyright holders, Treehouse and Agility.
mfwic 42:3ae73b61f657 13 //
mfwic 42:3ae73b61f657 14 // The above copyright notice and this permission notice shall be included in
mfwic 42:3ae73b61f657 15 // all copies or substantial portions of the Software.
mfwic 42:3ae73b61f657 16 //
mfwic 42:3ae73b61f657 17 //
mfwic 42:3ae73b61f657 18 //-------------------------------------------------------------------------------
mfwic 42:3ae73b61f657 19 //
mfwic 42:3ae73b61f657 20 // REVISION HISTORY:
mfwic 42:3ae73b61f657 21 //
mfwic 42:3ae73b61f657 22 // $Author: $
mfwic 42:3ae73b61f657 23 // $Rev: $
mfwic 42:3ae73b61f657 24 // $Date: $
mfwic 42:3ae73b61f657 25 // $URL: $
mfwic 42:3ae73b61f657 26 //
mfwic 42:3ae73b61f657 27 //-------------------------------------------------------------------------------
mfwic 42:3ae73b61f657 28
mfwic 42:3ae73b61f657 29 #ifndef BOARDS_H
mfwic 42:3ae73b61f657 30 #define BOARDS_H
mfwic 42:3ae73b61f657 31
mfwic 42:3ae73b61f657 32 #include "adc_defs.h"
mfwic 42:3ae73b61f657 33
mfwic 42:3ae73b61f657 34 #define VOLTAGE_TOLERANCE 0.1
mfwic 42:3ae73b61f657 35 const unsigned int V48_HI = (unsigned int)ADC_SCALE_FACTOR*(VOLTAGE_48_ACTUAL_VALUE/VOLTAGE_TARG_VALUE)*(1.0+VOLTAGE_TOLERANCE);
mfwic 42:3ae73b61f657 36 const unsigned int V48_LO = (unsigned int)ADC_SCALE_FACTOR*(VOLTAGE_48_ACTUAL_VALUE/VOLTAGE_TARG_VALUE)*(1.0-VOLTAGE_TOLERANCE);
mfwic 42:3ae73b61f657 37 const unsigned int V12_HI = (unsigned int)ADC_SCALE_FACTOR*(VOLTAGE_12_ACTUAL_VALUE/VOLTAGE_TARG_VALUE)*(1.0+VOLTAGE_TOLERANCE);
mfwic 42:3ae73b61f657 38 const unsigned int V12_LO = (unsigned int)ADC_SCALE_FACTOR*(VOLTAGE_12_ACTUAL_VALUE/VOLTAGE_TARG_VALUE)*(1.0-VOLTAGE_TOLERANCE);
mfwic 42:3ae73b61f657 39
mfwic 42:3ae73b61f657 40 void initBoards(struct adcValues);
mfwic 42:3ae73b61f657 41
mfwic 42:3ae73b61f657 42 extern bool buck;
mfwic 42:3ae73b61f657 43
mfwic 42:3ae73b61f657 44 extern unsigned int boardEnableBits;
mfwic 42:3ae73b61f657 45 extern unsigned int boardsActive;
mfwic 42:3ae73b61f657 46
mfwic 42:3ae73b61f657 47 extern unsigned int en_out_code;
mfwic 42:3ae73b61f657 48 extern unsigned int wr_out_code;
mfwic 42:3ae73b61f657 49
mfwic 42:3ae73b61f657 50
mfwic 42:3ae73b61f657 51 extern unsigned int bCodeRow[];
mfwic 42:3ae73b61f657 52
mfwic 42:3ae73b61f657 53 void setBoardControls(unsigned int);
mfwic 42:3ae73b61f657 54 unsigned int setBoardEnables(unsigned int);
mfwic 42:3ae73b61f657 55 unsigned int setBoardWeights(unsigned int);
mfwic 42:3ae73b61f657 56
mfwic 42:3ae73b61f657 57 int checkRange(int, int, int);
mfwic 42:3ae73b61f657 58
mfwic 42:3ae73b61f657 59 void toggleLatchSignal(void);
mfwic 42:3ae73b61f657 60
mfwic 42:3ae73b61f657 61 void startConverter(unsigned int);
mfwic 42:3ae73b61f657 62 void stopConverter(void);
mfwic 42:3ae73b61f657 63
mfwic 42:3ae73b61f657 64 struct statusValues checkLevels(struct adcValues);
mfwic 44:741ee27c8a34 65 unsigned short updateMasterControls(unsigned short);
mfwic 44:741ee27c8a34 66 void updateSlaveControls(unsigned short);
mfwic 42:3ae73b61f657 67 void XupdateControls(unsigned short);
mfwic 42:3ae73b61f657 68
Slord2142 49:65c714a5def2 69 extern InterruptIn i2c;
Slord2142 49:65c714a5def2 70
mfwic 44:741ee27c8a34 71 extern const unsigned short i2c_addr_slave1;
mfwic 44:741ee27c8a34 72 extern const unsigned short i2c_addr_slave2;
mfwic 44:741ee27c8a34 73
mfwic 44:741ee27c8a34 74 void initI2C(void);
mfwic 44:741ee27c8a34 75 unsigned short getMasterCommands(void);
mfwic 44:741ee27c8a34 76 void sendSlaveCommands(unsigned short);
mfwic 44:741ee27c8a34 77
mfwic 42:3ae73b61f657 78 #endif