![](/media/cache/group/default_image.jpg.50x50_q85.jpg)
a,b Gruppe B
Dependencies: mbed
Gruppe_B_MatthiasPlaninsec.cpp@0:8a6f8b1df4ea, 2015-06-10 (annotated)
- Committer:
- Planinsec
- Date:
- Wed Jun 10 16:21:26 2015 +0000
- Revision:
- 0:8a6f8b1df4ea
A+B_Gruppe B
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Planinsec | 0:8a6f8b1df4ea | 1 | #include "mbed.h" |
Planinsec | 0:8a6f8b1df4ea | 2 | |
Planinsec | 0:8a6f8b1df4ea | 3 | |
Planinsec | 0:8a6f8b1df4ea | 4 | InterruptIn iiUp(p15); |
Planinsec | 0:8a6f8b1df4ea | 5 | //Timer timer1; |
Planinsec | 0:8a6f8b1df4ea | 6 | int los=0; |
Planinsec | 0:8a6f8b1df4ea | 7 | |
Planinsec | 0:8a6f8b1df4ea | 8 | // global vars and objects |
Planinsec | 0:8a6f8b1df4ea | 9 | DigitalOut led2(LED2); |
Planinsec | 0:8a6f8b1df4ea | 10 | //DigitalOut ledAlle(LED1,LED2, LED3,LED4); |
Planinsec | 0:8a6f8b1df4ea | 11 | Serial pc(USBTX, USBRX); // tx, rx ; is default !!! (9600, 8N1) |
Planinsec | 0:8a6f8b1df4ea | 12 | char recChar=0; |
Planinsec | 0:8a6f8b1df4ea | 13 | bool recFlag=false; |
Planinsec | 0:8a6f8b1df4ea | 14 | char recArr[20]; |
Planinsec | 0:8a6f8b1df4ea | 15 | int index=0; |
Planinsec | 0:8a6f8b1df4ea | 16 | |
Planinsec | 0:8a6f8b1df4ea | 17 | // functions |
Planinsec | 0:8a6f8b1df4ea | 18 | void flushSerialBuffer() |
Planinsec | 0:8a6f8b1df4ea | 19 | { |
Planinsec | 0:8a6f8b1df4ea | 20 | while (pc.readable()) |
Planinsec | 0:8a6f8b1df4ea | 21 | { |
Planinsec | 0:8a6f8b1df4ea | 22 | pc.getc(); |
Planinsec | 0:8a6f8b1df4ea | 23 | } |
Planinsec | 0:8a6f8b1df4ea | 24 | } |
Planinsec | 0:8a6f8b1df4ea | 25 | |
Planinsec | 0:8a6f8b1df4ea | 26 | void readData() |
Planinsec | 0:8a6f8b1df4ea | 27 | { |
Planinsec | 0:8a6f8b1df4ea | 28 | |
Planinsec | 0:8a6f8b1df4ea | 29 | //recArr[index] = recChar; |
Planinsec | 0:8a6f8b1df4ea | 30 | if ( pc.readable()) //recChar == '\r') || (index>=19) |
Planinsec | 0:8a6f8b1df4ea | 31 | { |
Planinsec | 0:8a6f8b1df4ea | 32 | recChar = pc.getc(); |
Planinsec | 0:8a6f8b1df4ea | 33 | //recFlag = true; |
Planinsec | 0:8a6f8b1df4ea | 34 | //recArr[index] = 0; |
Planinsec | 0:8a6f8b1df4ea | 35 | // float t = timer1.read_ms(); |
Planinsec | 0:8a6f8b1df4ea | 36 | pc.printf(" - That's the input: \n",recArr); |
Planinsec | 0:8a6f8b1df4ea | 37 | //if(index<5) |
Planinsec | 0:8a6f8b1df4ea | 38 | //{ |
Planinsec | 0:8a6f8b1df4ea | 39 | // pc.printf("Eingabe zu kurz "); |
Planinsec | 0:8a6f8b1df4ea | 40 | //} |
Planinsec | 0:8a6f8b1df4ea | 41 | //if(index>10) |
Planinsec | 0:8a6f8b1df4ea | 42 | //{ |
Planinsec | 0:8a6f8b1df4ea | 43 | // pc.printf("Eingabe zu lang "); |
Planinsec | 0:8a6f8b1df4ea | 44 | //} |
Planinsec | 0:8a6f8b1df4ea | 45 | //index = 0; |
Planinsec | 0:8a6f8b1df4ea | 46 | flushSerialBuffer(); |
Planinsec | 0:8a6f8b1df4ea | 47 | //los=0; |
Planinsec | 0:8a6f8b1df4ea | 48 | } |
Planinsec | 0:8a6f8b1df4ea | 49 | |
Planinsec | 0:8a6f8b1df4ea | 50 | else |
Planinsec | 0:8a6f8b1df4ea | 51 | { |
Planinsec | 0:8a6f8b1df4ea | 52 | return; |
Planinsec | 0:8a6f8b1df4ea | 53 | } |
Planinsec | 0:8a6f8b1df4ea | 54 | |
Planinsec | 0:8a6f8b1df4ea | 55 | } |
Planinsec | 0:8a6f8b1df4ea | 56 | |
Planinsec | 0:8a6f8b1df4ea | 57 | void SendText() |
Planinsec | 0:8a6f8b1df4ea | 58 | { |
Planinsec | 0:8a6f8b1df4ea | 59 | |
Planinsec | 0:8a6f8b1df4ea | 60 | pc.printf("Folgende Befehle werden ausgefuehrt:"); |
Planinsec | 0:8a6f8b1df4ea | 61 | pc.printf("r oder R = alle LEDs aus\n"); |
Planinsec | 0:8a6f8b1df4ea | 62 | pc.printf("s oder S = alle LEDs ein\n"); |
Planinsec | 0:8a6f8b1df4ea | 63 | pc.printf("s,Lx = LED x ein (X=1...4\n"); |
Planinsec | 0:8a6f8b1df4ea | 64 | pc.printf("r,Lx = LED x aus (X=1...4\n"); |
Planinsec | 0:8a6f8b1df4ea | 65 | pc.printf("I=alle LEDs invertieren (leuchtende LEDs aus, dunkle LEDs ein)\n"); |
Planinsec | 0:8a6f8b1df4ea | 66 | //timer1.start(); |
Planinsec | 0:8a6f8b1df4ea | 67 | los=1; |
Planinsec | 0:8a6f8b1df4ea | 68 | |
Planinsec | 0:8a6f8b1df4ea | 69 | } |
Planinsec | 0:8a6f8b1df4ea | 70 | |
Planinsec | 0:8a6f8b1df4ea | 71 | int main() { |
Planinsec | 0:8a6f8b1df4ea | 72 | // pc.baud(115200); |
Planinsec | 0:8a6f8b1df4ea | 73 | pc.baud(38400); |
Planinsec | 0:8a6f8b1df4ea | 74 | pc.format(8, SerialBase::Odd, 2); |
Planinsec | 0:8a6f8b1df4ea | 75 | led2 = 1; |
Planinsec | 0:8a6f8b1df4ea | 76 | |
Planinsec | 0:8a6f8b1df4ea | 77 | flushSerialBuffer(); |
Planinsec | 0:8a6f8b1df4ea | 78 | pc.printf("Matthias Planinsec Gruppe B\r\n"); |
Planinsec | 0:8a6f8b1df4ea | 79 | |
Planinsec | 0:8a6f8b1df4ea | 80 | |
Planinsec | 0:8a6f8b1df4ea | 81 | pc.attach(&readData); |
Planinsec | 0:8a6f8b1df4ea | 82 | SendText(); |
Planinsec | 0:8a6f8b1df4ea | 83 | |
Planinsec | 0:8a6f8b1df4ea | 84 | //iiUp.rise(&SendText); |
Planinsec | 0:8a6f8b1df4ea | 85 | |
Planinsec | 0:8a6f8b1df4ea | 86 | while(1) { |
Planinsec | 0:8a6f8b1df4ea | 87 | if (recFlag) { |
Planinsec | 0:8a6f8b1df4ea | 88 | flushSerialBuffer(); |
Planinsec | 0:8a6f8b1df4ea | 89 | // pc.printf(" - That's the input: %s\r\n", recArr); // non reantrant function |
Planinsec | 0:8a6f8b1df4ea | 90 | recFlag = false; |
Planinsec | 0:8a6f8b1df4ea | 91 | led2 = !led2; |
Planinsec | 0:8a6f8b1df4ea | 92 | } |
Planinsec | 0:8a6f8b1df4ea | 93 | } |
Planinsec | 0:8a6f8b1df4ea | 94 | } |