Jack Hansdampf / Mbed OS LCD_i2c_GSOE_Prog

Dependencies:   LCD_i2c_GSOE

Committer:
jack1930
Date:
Thu Mar 12 12:32:10 2020 +0000
Revision:
0:d135ebd11ec3
Child:
2:f1e555ed22c1
Child:
3:09ebe076281a
keine Aenderungen

Who changed what in which revision?

UserRevisionLine numberNew contents of line
jack1930 0:d135ebd11ec3 1 /* mbed Microcontroller Library
jack1930 0:d135ebd11ec3 2 * Copyright (c) 2019 ARM Limited
jack1930 0:d135ebd11ec3 3 * SPDX-License-Identifier: Apache-2.0
jack1930 0:d135ebd11ec3 4 */
jack1930 0:d135ebd11ec3 5
jack1930 0:d135ebd11ec3 6 #include "mbed.h"
jack1930 0:d135ebd11ec3 7 #include "platform/mbed_thread.h"
jack1930 0:d135ebd11ec3 8 #include "LCD.h"
jack1930 0:d135ebd11ec3 9
jack1930 0:d135ebd11ec3 10
jack1930 0:d135ebd11ec3 11 // Blinking rate in milliseconds
jack1930 0:d135ebd11ec3 12 #define BLINKING_RATE_MS 500
jack1930 0:d135ebd11ec3 13
jack1930 0:d135ebd11ec3 14 lcd mylcd;
jack1930 0:d135ebd11ec3 15 RawSerial pc(USBTX, USBRX);
jack1930 0:d135ebd11ec3 16
jack1930 0:d135ebd11ec3 17 char buf[16];
jack1930 0:d135ebd11ec3 18 DigitalOut PC0(PC_0);
jack1930 0:d135ebd11ec3 19
jack1930 0:d135ebd11ec3 20
jack1930 0:d135ebd11ec3 21 static void print2LCD()
jack1930 0:d135ebd11ec3 22 {
jack1930 0:d135ebd11ec3 23 char z;
jack1930 0:d135ebd11ec3 24 int i=0;
jack1930 0:d135ebd11ec3 25 /*if (PC0==0) PC0=1; //Kontrolle
jack1930 0:d135ebd11ec3 26 else PC0=0;*/
jack1930 0:d135ebd11ec3 27 do
jack1930 0:d135ebd11ec3 28 {
jack1930 0:d135ebd11ec3 29 z=pc.getc();
jack1930 0:d135ebd11ec3 30 pc.putc(z); //Echo
jack1930 0:d135ebd11ec3 31 if (z>=0x20) //nur lesbare Zeichen
jack1930 0:d135ebd11ec3 32 {
jack1930 0:d135ebd11ec3 33 buf[i]=z;
jack1930 0:d135ebd11ec3 34 i++;
jack1930 0:d135ebd11ec3 35 }
jack1930 0:d135ebd11ec3 36 }
jack1930 0:d135ebd11ec3 37 while (z!=10); //LF
jack1930 0:d135ebd11ec3 38 buf[i]=0;
jack1930 0:d135ebd11ec3 39 pc.abort_read(); //!!!!!!!!
jack1930 0:d135ebd11ec3 40
jack1930 0:d135ebd11ec3 41 mylcd.cursorpos(0x40);
jack1930 0:d135ebd11ec3 42 mylcd.printf(" ");
jack1930 0:d135ebd11ec3 43 mylcd.cursorpos(0x40);
jack1930 0:d135ebd11ec3 44 pc.printf("von MC %s",buf); //Echo
jack1930 0:d135ebd11ec3 45 mylcd.printf("-> %s",buf);
jack1930 0:d135ebd11ec3 46 }
jack1930 0:d135ebd11ec3 47
jack1930 0:d135ebd11ec3 48 int main()
jack1930 0:d135ebd11ec3 49 {
jack1930 0:d135ebd11ec3 50 pc.attach(&print2LCD);
jack1930 0:d135ebd11ec3 51 pc.printf("Hello World !\n");
jack1930 0:d135ebd11ec3 52 mylcd.clear();
jack1930 0:d135ebd11ec3 53 mylcd.printf("Hallo Joerg");
jack1930 0:d135ebd11ec3 54 mylcd.cursorpos(0x40);
jack1930 0:d135ebd11ec3 55 DigitalOut led(LED1);
jack1930 0:d135ebd11ec3 56 // Initalise PortB als 8Bit-Input Port mit Pullup
jack1930 0:d135ebd11ec3 57 PortIn eingabe(PortB,0xFF);
jack1930 0:d135ebd11ec3 58 eingabe.mode(PullDown);
jack1930 0:d135ebd11ec3 59 while (true) {
jack1930 0:d135ebd11ec3 60 if (eingabe==5)
jack1930 0:d135ebd11ec3 61 {
jack1930 0:d135ebd11ec3 62 led = 1;
jack1930 0:d135ebd11ec3 63 }
jack1930 0:d135ebd11ec3 64 else
jack1930 0:d135ebd11ec3 65 {
jack1930 0:d135ebd11ec3 66 led = !led;
jack1930 0:d135ebd11ec3 67 thread_sleep_for(100);
jack1930 0:d135ebd11ec3 68 }
jack1930 0:d135ebd11ec3 69 /*
jack1930 0:d135ebd11ec3 70 if (neu==true)
jack1930 0:d135ebd11ec3 71 {
jack1930 0:d135ebd11ec3 72 pc.abort_read();
jack1930 0:d135ebd11ec3 73
jack1930 0:d135ebd11ec3 74 mylcd.cursorpos(0x40);
jack1930 0:d135ebd11ec3 75 mylcd.printf(" ");
jack1930 0:d135ebd11ec3 76
jack1930 0:d135ebd11ec3 77 mylcd.cursorpos(0x40);
jack1930 0:d135ebd11ec3 78
jack1930 0:d135ebd11ec3 79 pc.printf("von MC %s",buf);
jack1930 0:d135ebd11ec3 80 mylcd.printf("-> %s",buf);
jack1930 0:d135ebd11ec3 81 neu=false;
jack1930 0:d135ebd11ec3 82 }
jack1930 0:d135ebd11ec3 83 */
jack1930 0:d135ebd11ec3 84 /*
jack1930 0:d135ebd11ec3 85 if (pc.readable()>0)
jack1930 0:d135ebd11ec3 86 {
jack1930 0:d135ebd11ec3 87 pc.scanf("%s", buf);
jack1930 0:d135ebd11ec3 88 mylcd.cursorpos(0x40);
jack1930 0:d135ebd11ec3 89 mylcd.printf(" ");
jack1930 0:d135ebd11ec3 90 mylcd.cursorpos(0x40);
jack1930 0:d135ebd11ec3 91 mylcd.printf("%s", buf);
jack1930 0:d135ebd11ec3 92 }
jack1930 0:d135ebd11ec3 93 */
jack1930 0:d135ebd11ec3 94
jack1930 0:d135ebd11ec3 95
jack1930 0:d135ebd11ec3 96 }
jack1930 0:d135ebd11ec3 97 }