Treehouse Mbed Team / Mbed 2 deprecated APS_DCM1SL

Dependencies:   mbed

inc/boards.h

Committer:
Slord2142
Date:
2019-03-12
Revision:
49:65c714a5def2
Parent:
44:741ee27c8a34
Child:
51:abe8a392d50b

File content as of revision 49:65c714a5def2:

//-------------------------------------------------------------------------------
// 
//  Treehouse Designs Inc.
//  Colorado Springs, Colorado
// 
//  Copyright (c) 2016 by Treehouse Designs Inc. 
//  Copyright (c) 2018 by Agility Power Systems Inc. 
// 
//  This code is the property of Treehouse Designs, Inc. (Treehouse) and
//  Agility Power Systems Inc. (Agility) and may not be redistributed
//  in any form without prior written permission from 
//  both copyright holders, Treehouse and Agility.
//
//  The above copyright notice and this permission notice shall be included in
//  all copies or substantial portions of the Software.
// 
//   
//-------------------------------------------------------------------------------
// 
//  REVISION HISTORY:
//  
//   $Author: $
//   $Rev: $
//   $Date: $
//   $URL: $
// 
//-------------------------------------------------------------------------------

#ifndef BOARDS_H
#define BOARDS_H

#include "adc_defs.h"

#define VOLTAGE_TOLERANCE 0.1
const unsigned int V48_HI = (unsigned int)ADC_SCALE_FACTOR*(VOLTAGE_48_ACTUAL_VALUE/VOLTAGE_TARG_VALUE)*(1.0+VOLTAGE_TOLERANCE);
const unsigned int V48_LO = (unsigned int)ADC_SCALE_FACTOR*(VOLTAGE_48_ACTUAL_VALUE/VOLTAGE_TARG_VALUE)*(1.0-VOLTAGE_TOLERANCE);
const unsigned int V12_HI = (unsigned int)ADC_SCALE_FACTOR*(VOLTAGE_12_ACTUAL_VALUE/VOLTAGE_TARG_VALUE)*(1.0+VOLTAGE_TOLERANCE);
const unsigned int V12_LO = (unsigned int)ADC_SCALE_FACTOR*(VOLTAGE_12_ACTUAL_VALUE/VOLTAGE_TARG_VALUE)*(1.0-VOLTAGE_TOLERANCE);

void initBoards(struct adcValues);

extern bool buck;

extern unsigned int boardEnableBits;
extern unsigned int boardsActive;

extern unsigned int en_out_code;
extern unsigned int wr_out_code;


extern unsigned int bCodeRow[];

void setBoardControls(unsigned int);
unsigned int setBoardEnables(unsigned int);
unsigned int setBoardWeights(unsigned int);

int checkRange(int, int, int);

void toggleLatchSignal(void);

void startConverter(unsigned int);
void stopConverter(void);

struct statusValues checkLevels(struct adcValues);
unsigned short updateMasterControls(unsigned short);
void updateSlaveControls(unsigned short);
void XupdateControls(unsigned short);

extern InterruptIn i2c;

extern const unsigned short i2c_addr_slave1;
extern const unsigned short i2c_addr_slave2;

void initI2C(void);
unsigned short getMasterCommands(void);
void sendSlaveCommands(unsigned short);

#endif