Kevin Kent
/
XVHE_HID
IVSC Project
Relay.cpp@1:82f2ef52759e, 2012-11-14 (annotated)
- Committer:
- kevinkent
- Date:
- Wed Nov 14 20:01:50 2012 +0000
- Revision:
- 1:82f2ef52759e
- Child:
- 2:d0778c36d28d
Added DAC support
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
kevinkent | 1:82f2ef52759e | 1 | #include "mbed.h" |
kevinkent | 1:82f2ef52759e | 2 | #include "Relay.h" |
kevinkent | 1:82f2ef52759e | 3 | |
kevinkent | 1:82f2ef52759e | 4 | DigitalOut v13_en(p15); |
kevinkent | 1:82f2ef52759e | 5 | DigitalOut v18_en(p16); |
kevinkent | 1:82f2ef52759e | 6 | DigitalOut Ext_Sw(p17); |
kevinkent | 1:82f2ef52759e | 7 | DigitalOut Hpco(p18); |
kevinkent | 1:82f2ef52759e | 8 | |
kevinkent | 1:82f2ef52759e | 9 | //Set all relays open (NO->Com) |
kevinkent | 1:82f2ef52759e | 10 | int Def_Relay(void) { |
kevinkent | 1:82f2ef52759e | 11 | Hpco = 0; |
kevinkent | 1:82f2ef52759e | 12 | Ext_Sw = 0; |
kevinkent | 1:82f2ef52759e | 13 | v13_en = 0; |
kevinkent | 1:82f2ef52759e | 14 | v18_en = 0; |
kevinkent | 1:82f2ef52759e | 15 | return 1; |
kevinkent | 1:82f2ef52759e | 16 | } |
kevinkent | 1:82f2ef52759e | 17 | |
kevinkent | 1:82f2ef52759e | 18 | int Set_Relay(uint8_t *data) { |
kevinkent | 1:82f2ef52759e | 19 | data[1] &= 0xf; //Only 4 relays |
kevinkent | 1:82f2ef52759e | 20 | data[2] &= 0x1; //Only allow Zero or One |
kevinkent | 1:82f2ef52759e | 21 | switch (data[1]) { |
kevinkent | 1:82f2ef52759e | 22 | case 1: |
kevinkent | 1:82f2ef52759e | 23 | v13_en = data[2]; |
kevinkent | 1:82f2ef52759e | 24 | break; |
kevinkent | 1:82f2ef52759e | 25 | case 2: |
kevinkent | 1:82f2ef52759e | 26 | v18_en = data[2]; |
kevinkent | 1:82f2ef52759e | 27 | break; |
kevinkent | 1:82f2ef52759e | 28 | case 3: |
kevinkent | 1:82f2ef52759e | 29 | Hpco = data[2]; |
kevinkent | 1:82f2ef52759e | 30 | break; |
kevinkent | 1:82f2ef52759e | 31 | case 4: |
kevinkent | 1:82f2ef52759e | 32 | Ext_Sw = data[2]; |
kevinkent | 1:82f2ef52759e | 33 | break; |
kevinkent | 1:82f2ef52759e | 34 | default: |
kevinkent | 1:82f2ef52759e | 35 | break; |
kevinkent | 1:82f2ef52759e | 36 | } |
kevinkent | 1:82f2ef52759e | 37 | return 1; |
kevinkent | 1:82f2ef52759e | 38 | } |