phs fan
/
PHSShield_f405bridge
Hack the PHS Shield, serial bridge
Fork of PHSShield_F405hack by
main.cpp@1:9cb4854ab263, 2015-07-01 (annotated)
- Committer:
- phsfan
- Date:
- Wed Jul 01 00:45:54 2015 +0000
- Revision:
- 1:9cb4854ab263
- Parent:
- 0:90cbfc14fcb7
test build
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
phsfan | 0:90cbfc14fcb7 | 1 | /* |
phsfan | 0:90cbfc14fcb7 | 2 | * select: Nucleo F401RE |
phsfan | 0:90cbfc14fcb7 | 3 | */ |
phsfan | 0:90cbfc14fcb7 | 4 | #include "mbed.h" |
phsfan | 1:9cb4854ab263 | 5 | #include "phs_f405.h" |
phsfan | 1:9cb4854ab263 | 6 | |
phsfan | 1:9cb4854ab263 | 7 | //#define BAUD 120000 |
phsfan | 1:9cb4854ab263 | 8 | #define BAUD 9600 |
phsfan | 0:90cbfc14fcb7 | 9 | |
phsfan | 0:90cbfc14fcb7 | 10 | Serial pc(PB_6, PB_7); |
phsfan | 0:90cbfc14fcb7 | 11 | |
phsfan | 1:9cb4854ab263 | 12 | ShieldSerial ser(BAUD); // PC_12, PD_2 |
phsfan | 1:9cb4854ab263 | 13 | DigitalIn pwron(PC_5), regon(PC_4); |
phsfan | 1:9cb4854ab263 | 14 | DigitalOut state(PB_1); |
phsfan | 0:90cbfc14fcb7 | 15 | |
phsfan | 1:9cb4854ab263 | 16 | Serial phs(PA_2, PA_3); |
phsfan | 1:9cb4854ab263 | 17 | DigitalOut rts(PA_1), dsr(PA_5); |
phsfan | 1:9cb4854ab263 | 18 | DigitalIn cts(PA_0), dcd(PA_7), dtr(PA_6), ri(PA_4); |
phsfan | 1:9cb4854ab263 | 19 | PhsReset reset; // PB_11 |
phsfan | 0:90cbfc14fcb7 | 20 | |
phsfan | 1:9cb4854ab263 | 21 | DigitalOut power(PC_9); |
phsfan | 1:9cb4854ab263 | 22 | DigitalOut led1(PC_7), led2(PC_6); |
phsfan | 0:90cbfc14fcb7 | 23 | |
phsfan | 0:90cbfc14fcb7 | 24 | int main() { |
phsfan | 1:9cb4854ab263 | 25 | pwron.mode(PullUp); |
phsfan | 1:9cb4854ab263 | 26 | regon.mode(PullDown); |
phsfan | 1:9cb4854ab263 | 27 | reset = 0; |
phsfan | 1:9cb4854ab263 | 28 | power = 0; // DCDC on |
phsfan | 1:9cb4854ab263 | 29 | led1 = 0; |
phsfan | 1:9cb4854ab263 | 30 | led2 = 0; |
phsfan | 1:9cb4854ab263 | 31 | phs.baud(BAUD); |
phsfan | 0:90cbfc14fcb7 | 32 | cts.mode(PullUp); |
phsfan | 1:9cb4854ab263 | 33 | dsr = rts = 1; |
phsfan | 1:9cb4854ab263 | 34 | wait_ms(200); |
phsfan | 1:9cb4854ab263 | 35 | |
phsfan | 0:90cbfc14fcb7 | 36 | for (;;) { |
phsfan | 1:9cb4854ab263 | 37 | if (phs.readable() && ser.writeable()) { |
phsfan | 1:9cb4854ab263 | 38 | ser.putc(phs.getc()); |
phsfan | 0:90cbfc14fcb7 | 39 | } |
phsfan | 1:9cb4854ab263 | 40 | if (ser.readable() && phs.writeable()) { |
phsfan | 1:9cb4854ab263 | 41 | phs.putc(ser.getc()); |
phsfan | 0:90cbfc14fcb7 | 42 | } |
phsfan | 1:9cb4854ab263 | 43 | |
phsfan | 1:9cb4854ab263 | 44 | reset = pwron; |
phsfan | 1:9cb4854ab263 | 45 | led2 = pwron; |
phsfan | 1:9cb4854ab263 | 46 | dsr = rts = regon; |
phsfan | 0:90cbfc14fcb7 | 47 | } |
phsfan | 0:90cbfc14fcb7 | 48 | } |