050216
Dependencies: MODSERIAL mon-050216 mbed timer0-050216
Fork of mbed_blinky by
Revision 10:cfd15bd4762a, committed 2016-02-05
- Comitter:
- rs27
- Date:
- Fri Feb 05 16:52:41 2016 +0000
- Parent:
- 9:0d1a88e54782
- Child:
- 11:be852b7b7692
- Commit message:
- 050216
Changed in this revision
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/MODSERIAL.lib Fri Feb 05 16:52:41 2016 +0000 @@ -0,0 +1,1 @@ +http://mbed.org/users/AjK/code/MODSERIAL/#ae0408ebdd68
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/RS_485.lib Fri Feb 05 16:52:41 2016 +0000 @@ -0,0 +1,1 @@ +https://developer.mbed.org/teams/Notaus/code/RS_485-050216/#8779e76fd4ea
--- a/main.cpp Thu Oct 29 12:28:39 2015 +0000 +++ b/main.cpp Fri Feb 05 16:52:41 2016 +0000 @@ -1,12 +1,128 @@ +// RS485 Link für modeserial +// https://developer.mbed.org/cookbook/MODSERIAL + #include "mbed.h" +#include "main.h" +#include "timer0.h" +#include "mon.h" +#include "rs_485.h" + +DigitalOut led1(LED1,1); +DigitalOut led2(LED2,1); +DigitalOut led3(LED3,1); +DigitalOut led4(LED4,1); +DigitalOut led5(LED5,1); +DigitalOut led6(LED6,1); +DigitalOut led7(LED7,1); + +DigitalOut out1(OUT1,0); // max 500mA schaltet gegen GND +DigitalOut out2(OUT2,0); +DigitalOut out3(OUT3,0); +DigitalOut out4(OUT4,0); -DigitalOut myled(LED1); +DigitalIn in1(IN1); // 0 oder 24V +DigitalIn in2(IN2); +DigitalIn in3(IN3); +DigitalIn in4(IN4); + +MODSERIAL pc(TXD, RXD); // tx, rx +timer0 down_timer; // Timer für Zeitsteuerung +rs_485 RS485_BUS; // RS485 BUS + +monitor mon; + +void led_aus(void) +{ + led1 = 1; + led2 = 1; + led3 = 1; + led4 = 1; + led5 = 1; + led6 = 1; + led7 = 1; + out2 = 0; + out3 = 0; + out4 = 0; +} + + +uint8_t i = 1; int main() { + + pc.baud(115200); + pc.printf("\nHello IOX.mini\n"); + + down_timer.SetCountdownTimer(1,1,500); // Timer für LED + while(1) { - myled = 1; - wait(0.2); - myled = 0; - wait(0.2); - } + + mon.monPC(); // Eingaben abfragen und auswerten + //RS485_BUS.execute(); // RS485 Bus + + //-------------------------------------------------------------------------- + // LED für Statusanzeige + + if (down_timer.GetTimerStatus(1) == 0) + { + // RS485.printf("\n %02x",i); + + down_timer.SetCountdownTimer(1,1,50); // alle 500ms + // pc.printf("\nLED #%d",i); + switch (i) + { + + case 1: + i = 2; + led_aus(); + led1 = 0; + break; + case 2: + i = 3; + led_aus(); + led2 = 0; + break; + case 3: + i = 4; + led_aus(); + led3 = 0; + break; + case 4: + i = 5; + led_aus(); + led4 = 0; + break; + case 5: + i = 6; + led_aus(); + led5 = 0; + break; + case 6: + i = 7; + led_aus(); + led6 = 0; + break; + case 7: + i = 8; + led_aus(); + led7 = 0; + break; + case 8: // Die LED's sind mit den Ausgängen verbunden und werden mit 1 geschaltet + i = 9; + led_aus(); + out2 = 1; + break; + case 9: + i = 10; + led_aus(); + out3 = 1; + break; + case 10: + i = 1; + led_aus(); + out4 = 1; + break; + } // end switch + } // end if(down_timer + } // end while(1) }
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/main.h Fri Feb 05 16:52:41 2016 +0000 @@ -0,0 +1,49 @@ +// Deklarationen für die IOX.mini +// +#ifndef MINI_H +#define MINI_H + +#define LED1 P3_26 +#define LED2 P1_24 +#define LED3 P1_26 +#define LED4 P2_12 +#define LED5 P2_13 +#define LED6 P3_25 +#define LED7 P1_25 + +// LED8 OUT2 +// LED9 OUT3 +// LED10 OUT4 + +#define IN1 P1_29 +#define IN2 P0_18 +#define IN3 P0_27 +#define IN4 P0_19 + +#define OUT1 P1_1 +#define OUT2 P0_9 +#define OUT3 P0_8 +#define OUT4 P0_17 + +#define EXT_RESET P1_8 +#define EXT_INT P0_24 + +#define CAN_RX1 P0_21 +#define CAN_TX1 P0_22 + +#define CAN_RX2 P0_4 +#define CAN_TX2 P0_5 + +#define RS485_TX1 P4_28 +#define RS485_RX1 P4_29 +#define RS485_DIR1 P1_0 + +#define TXD P0_2 +#define RXD P0_3 + + + + + + +#endif // end MINI_H \ No newline at end of file
--- a/mbed.bld Thu Oct 29 12:28:39 2015 +0000 +++ b/mbed.bld Fri Feb 05 16:52:41 2016 +0000 @@ -1,1 +1,1 @@ -http://mbed.org/users/mbed_official/code/mbed/builds/9296ab0bfc11 \ No newline at end of file +http://mbed.org/users/mbed_official/code/mbed/builds/4336505e4b1c \ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mon.lib Fri Feb 05 16:52:41 2016 +0000 @@ -0,0 +1,1 @@ +https://developer.mbed.org/teams/Notaus/code/mon-050216/#bf1028d27a23
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/timer0.lib Fri Feb 05 16:52:41 2016 +0000 @@ -0,0 +1,1 @@ +https://developer.mbed.org/teams/Notaus/code/timer0-050216/#3ab9e5cd87e7