used in the Elixys Radiochemistry system for selecting subsystems

Committer:
henryeherman
Date:
Wed Oct 30 07:03:11 2013 +0000
Revision:
0:9ba7adee8fce
chip select using the 595 shift register, allowing endless number of periphreals

Who changed what in which revision?

UserRevisionLine numberNew contents of line
henryeherman 0:9ba7adee8fce 1 #ifndef CHIPSELECT_H
henryeherman 0:9ba7adee8fce 2 #define CHIPSELECT_H
henryeherman 0:9ba7adee8fce 3 #include "mbed.h"
henryeherman 0:9ba7adee8fce 4 #include "ShiftRegister.h"
henryeherman 0:9ba7adee8fce 5
henryeherman 0:9ba7adee8fce 6 #define FIRST2LAST(X) (31 - (X))
henryeherman 0:9ba7adee8fce 7 #define VALVCS0 ~(1U << FIRST2LAST(0))
henryeherman 0:9ba7adee8fce 8 #define VALVCS1 ~(1U << FIRST2LAST(1))
henryeherman 0:9ba7adee8fce 9 #define VALVCS2 ~(1U << FIRST2LAST(2))
henryeherman 0:9ba7adee8fce 10 #define THERMCOUPLECS0 ~(1U << FIRST2LAST(3))
henryeherman 0:9ba7adee8fce 11 #define THERMCOUPLECS1 ~(1U << FIRST2LAST(4))
henryeherman 0:9ba7adee8fce 12 #define THERMCOUPLECS2 ~(1U << FIRST2LAST(5))
henryeherman 0:9ba7adee8fce 13 #define THERMCOUPLECS3 ~(1U << FIRST2LAST(6))
henryeherman 0:9ba7adee8fce 14 #define THERMCOUPLECS4 ~(1U << FIRST2LAST(7))
henryeherman 0:9ba7adee8fce 15 #define THERMCOUPLECS5 ~(1U << FIRST2LAST(8))
henryeherman 0:9ba7adee8fce 16 #define THERMCOUPLECS6 ~(1U << FIRST2LAST(9))
henryeherman 0:9ba7adee8fce 17 #define THERMCOUPLECS7 ~(1U << FIRST2LAST(10))
henryeherman 0:9ba7adee8fce 18 #define THERMCOUPLECS8 ~(1U << FIRST2LAST(11))
henryeherman 0:9ba7adee8fce 19 #define HEATERCS ~(1U << FIRST2LAST(12))
henryeherman 0:9ba7adee8fce 20 #define LIQUIDSENSORCS ~(1U << FIRST2LAST(13))
henryeherman 0:9ba7adee8fce 21 #define POSITIONSENSORCS ~(1U << FIRST2LAST(14))
henryeherman 0:9ba7adee8fce 22 #define SMCADCCS ~(1U << FIRST2LAST(15))
henryeherman 0:9ba7adee8fce 23 #define SMCDACCS ~(1U << FIRST2LAST(16))
henryeherman 0:9ba7adee8fce 24 #define RADCS0 ~(1U << FIRST2LAST(17))
henryeherman 0:9ba7adee8fce 25 #define RADCS1 ~(1U << FIRST2LAST(18))
henryeherman 0:9ba7adee8fce 26 #define RADCS2 ~(1U << FIRST2LAST(19))
henryeherman 0:9ba7adee8fce 27 #define RADCS3 ~(1U << FIRST2LAST(20))
henryeherman 0:9ba7adee8fce 28 #define RADCS4 ~(1U << FIRST2LAST(21))
henryeherman 0:9ba7adee8fce 29 #define RADCS5 ~(1U << FIRST2LAST(22))
henryeherman 0:9ba7adee8fce 30 #define RADCS6 ~(1U << FIRST2LAST(23))
henryeherman 0:9ba7adee8fce 31 #define AUXCS0 ~(1U << FIRST2LAST(24))
henryeherman 0:9ba7adee8fce 32 #define AUXCS1 ~(1U << FIRST2LAST(25))
henryeherman 0:9ba7adee8fce 33 #define AUXCS2 ~(1U << FIRST2LAST(26))
henryeherman 0:9ba7adee8fce 34 #define AUXCS3 ~(1U << FIRST2LAST(27))
henryeherman 0:9ba7adee8fce 35 #define AUXCS4 ~(1U << FIRST2LAST(28))
henryeherman 0:9ba7adee8fce 36 #define AUXCS5 ~(1U << FIRST2LAST(29))
henryeherman 0:9ba7adee8fce 37 #define AUXCS6 ~(1U << FIRST2LAST(30))
henryeherman 0:9ba7adee8fce 38 #define AUXCS7 ~(1U << FIRST2LAST(31))
henryeherman 0:9ba7adee8fce 39 #define NONECS ~(0x00000000)
henryeherman 0:9ba7adee8fce 40
henryeherman 0:9ba7adee8fce 41
henryeherman 0:9ba7adee8fce 42 void unselect(void);
henryeherman 0:9ba7adee8fce 43 void selectvalve0(void);
henryeherman 0:9ba7adee8fce 44 void selectvalve1(void);
henryeherman 0:9ba7adee8fce 45 void selectvalve2(void);
henryeherman 0:9ba7adee8fce 46 void selecttc0(void);
henryeherman 0:9ba7adee8fce 47 void selecttc1(void);
henryeherman 0:9ba7adee8fce 48 void selecttc2(void);
henryeherman 0:9ba7adee8fce 49 void selecttc3(void);
henryeherman 0:9ba7adee8fce 50 void selecttc4(void);
henryeherman 0:9ba7adee8fce 51 void selecttc5(void);
henryeherman 0:9ba7adee8fce 52 void selecttc6(void);
henryeherman 0:9ba7adee8fce 53 void selecttc7(void);
henryeherman 0:9ba7adee8fce 54 void selecttc8(void);
henryeherman 0:9ba7adee8fce 55 void selectheater(void);
henryeherman 0:9ba7adee8fce 56 void selectliq(void);
henryeherman 0:9ba7adee8fce 57 void selectpos(void);
henryeherman 0:9ba7adee8fce 58 void selectsmcadc(void);
henryeherman 0:9ba7adee8fce 59 void selectsmddac(void);
henryeherman 0:9ba7adee8fce 60 void selectrad0(void);
henryeherman 0:9ba7adee8fce 61 void selectrad1(void);
henryeherman 0:9ba7adee8fce 62 void selectrad2(void);
henryeherman 0:9ba7adee8fce 63 void selectrad3(void);
henryeherman 0:9ba7adee8fce 64 void selectrad4(void);
henryeherman 0:9ba7adee8fce 65 void selectrad5(void);
henryeherman 0:9ba7adee8fce 66 void selectrad6(void);
henryeherman 0:9ba7adee8fce 67 void selectaux0(void);
henryeherman 0:9ba7adee8fce 68 void selectaux1(void);
henryeherman 0:9ba7adee8fce 69 void selectaux2(void);
henryeherman 0:9ba7adee8fce 70 void selectaux3(void);
henryeherman 0:9ba7adee8fce 71 void selectaux4(void);
henryeherman 0:9ba7adee8fce 72 void selectaux5(void);
henryeherman 0:9ba7adee8fce 73 void selectaux6(void);
henryeherman 0:9ba7adee8fce 74 void selectaux7(void);
henryeherman 0:9ba7adee8fce 75
henryeherman 0:9ba7adee8fce 76 #endif //CHIPSELECT_H