Treehouse Mbed Team / Mbed 2 deprecated APS_DCM1SL

Dependencies:   mbed

Committer:
mfwic
Date:
Sun Nov 25 00:36:35 2018 +0000
Revision:
1:9f8583ba2431
Parent:
0:44a3005d4f20
Child:
4:db38665c3727
Code compiles after major surgery.

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 #include "mbed.h"
mfwic 0:44a3005d4f20 30 #include "globals.h"
mfwic 0:44a3005d4f20 31 #include "boards.h"
mfwic 0:44a3005d4f20 32 #include "all_io.h"
mfwic 0:44a3005d4f20 33 #include "serial.h"
mfwic 0:44a3005d4f20 34 #include "stdio.h"
mfwic 0:44a3005d4f20 35 #include "parameters.h"
mfwic 0:44a3005d4f20 36
mfwic 0:44a3005d4f20 37
mfwic 0:44a3005d4f20 38 unsigned int boardEnableBits;
mfwic 0:44a3005d4f20 39
mfwic 0:44a3005d4f20 40
mfwic 0:44a3005d4f20 41 void delay(long ticks)
mfwic 0:44a3005d4f20 42 {
mfwic 0:44a3005d4f20 43 long i;
mfwic 0:44a3005d4f20 44 for(i=0;i<ticks;i++);
mfwic 0:44a3005d4f20 45 }
mfwic 0:44a3005d4f20 46
mfwic 0:44a3005d4f20 47 void setBoardEnables(unsigned int enableBits)
mfwic 0:44a3005d4f20 48 {
mfwic 0:44a3005d4f20 49 unsigned int i, boardEnable;
mfwic 0:44a3005d4f20 50
mfwic 0:44a3005d4f20 51 // Default is all boards OFF
mfwic 0:44a3005d4f20 52 unsigned int boardsEnabled = ALLOFF;
mfwic 0:44a3005d4f20 53
mfwic 0:44a3005d4f20 54 for (i = 0; i < MAX_BOARDS; i++)
mfwic 0:44a3005d4f20 55 {
mfwic 0:44a3005d4f20 56 // 0 == enabled
mfwic 0:44a3005d4f20 57 boardEnable = (enableBits & (1 << i));
mfwic 0:44a3005d4f20 58
mfwic 0:44a3005d4f20 59 }
mfwic 0:44a3005d4f20 60
mfwic 0:44a3005d4f20 61 wr_out = boardEnable;
mfwic 0:44a3005d4f20 62
mfwic 0:44a3005d4f20 63 }
mfwic 0:44a3005d4f20 64
mfwic 0:44a3005d4f20 65 void setBoardWeights(unsigned int enableWeights)
mfwic 0:44a3005d4f20 66 {
mfwic 0:44a3005d4f20 67 unsigned int i, boardWeight;
mfwic 0:44a3005d4f20 68
mfwic 0:44a3005d4f20 69 for (i = 0; i < MAX_BOARDS; i++)
mfwic 0:44a3005d4f20 70 {
mfwic 0:44a3005d4f20 71 // 0 == enabled
mfwic 0:44a3005d4f20 72 boardWeight = (enableWeights & (1 << i));
mfwic 0:44a3005d4f20 73
mfwic 0:44a3005d4f20 74 }
mfwic 0:44a3005d4f20 75
mfwic 0:44a3005d4f20 76 en_out = boardWeight;
mfwic 0:44a3005d4f20 77 toggleLatchSignal();
mfwic 0:44a3005d4f20 78
mfwic 0:44a3005d4f20 79 }
mfwic 0:44a3005d4f20 80
mfwic 0:44a3005d4f20 81 void toggleLatchSignal(void){
mfwic 0:44a3005d4f20 82 extchlat = OFF;
mfwic 0:44a3005d4f20 83 extchlat = ON;
mfwic 0:44a3005d4f20 84 extchlat = OFF;
mfwic 0:44a3005d4f20 85 }
mfwic 0:44a3005d4f20 86
mfwic 0:44a3005d4f20 87 void initDACs(void)
mfwic 0:44a3005d4f20 88 {
mfwic 1:9f8583ba2431 89 //setupDacInit();
mfwic 1:9f8583ba2431 90 //sendDACs(dinitbits);
mfwic 0:44a3005d4f20 91 }
mfwic 1:9f8583ba2431 92
mfwic 1:9f8583ba2431 93 /************************************************************
mfwic 1:9f8583ba2431 94 * Routine: checkRange
mfwic 1:9f8583ba2431 95 * Input: setval
mfwic 1:9f8583ba2431 96 * limlo -- low limit
mfwic 1:9f8583ba2431 97 * limhi -- high limit
mfwic 1:9f8583ba2431 98 * Returns: 1 if entry validates and is written
mfwic 1:9f8583ba2431 99 * 0 if entry fails
mfwic 1:9f8583ba2431 100 * -1 if it slips past
mfwic 1:9f8583ba2431 101 * Description:
mfwic 1:9f8583ba2431 102 * Checks if setvalue is between the given limits.
mfwic 1:9f8583ba2431 103 *
mfwic 1:9f8583ba2431 104 **************************************************************/
mfwic 1:9f8583ba2431 105 int checkRange(int setvalue, int limlo, int limhi)
mfwic 1:9f8583ba2431 106 {
mfwic 1:9f8583ba2431 107
mfwic 1:9f8583ba2431 108 if ((setvalue >= limlo) && (setvalue <= limhi))
mfwic 1:9f8583ba2431 109 {
mfwic 1:9f8583ba2431 110 return 1;
mfwic 1:9f8583ba2431 111 }
mfwic 1:9f8583ba2431 112 else
mfwic 1:9f8583ba2431 113 {
mfwic 1:9f8583ba2431 114 showRangeError(0, 0, setvalue);
mfwic 1:9f8583ba2431 115 return 0;
mfwic 1:9f8583ba2431 116 }
mfwic 1:9f8583ba2431 117
mfwic 1:9f8583ba2431 118 }