MBED_1 18.05.2020

Dependencies:   LCD_DISCO_F429ZI mbed TS_DISCO_F429ZI BSP_DISCO_F429ZI

Files at this revision

API Documentation at this revision

Comitter:
hubtel
Date:
Mon May 18 19:47:58 2020 +0000
Commit message:
MBED_1

Changed in this revision

BSP_DISCO_F429ZI.lib Show annotated file Show diff for this revision Revisions of this file
Keyboard_Ts.cpp Show annotated file Show diff for this revision Revisions of this file
Keyboard_Ts.h Show annotated file Show diff for this revision Revisions of this file
Keyboard_TsLcd.cpp Show annotated file Show diff for this revision Revisions of this file
Keyboard_TsLcd.h Show annotated file Show diff for this revision Revisions of this file
LCD_DISCO_F429ZI.lib Show annotated file Show diff for this revision Revisions of this file
Led_Lcd.cpp Show annotated file Show diff for this revision Revisions of this file
Led_Lcd.h Show annotated file Show diff for this revision Revisions of this file
TS_DISCO_F429ZI.lib Show annotated file Show diff for this revision Revisions of this file
main.cpp Show annotated file Show diff for this revision Revisions of this file
mbed.bld Show annotated file Show diff for this revision Revisions of this file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/BSP_DISCO_F429ZI.lib	Mon May 18 19:47:58 2020 +0000
@@ -0,0 +1,1 @@
+https://os.mbed.com/teams/ST/code/BSP_DISCO_F429ZI/#53d9067a4feb
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Keyboard_Ts.cpp	Mon May 18 19:47:58 2020 +0000
@@ -0,0 +1,25 @@
+#include "Keyboard_Ts.h"
+
+KeyboardTs::KeyboardTs(unsigned char ucColumnNumber){
+    ucColumn = ucColumnNumber;
+    }
+
+
+enum KeyboardState KeyboardTs::eRead(){
+    TS_StateTypeDef TS_State;
+    GetState(&TS_State);
+    if((TS_State.TouchDetected) && (TS_State.X < 80*(1+ucColumn)) && (TS_State.X > 80*ucColumn) && (TS_State.Y < 80) && (TS_State.Y > 0){
+        return BUTTON_0;
+        }
+    else if((TS_State.TouchDetected) && (TS_State.X < 80*(1+ucColumn)) && (TS_State.X > 80*ucColumn) && (TS_State.Y < 160) && (TS_State.Y > 80)){
+        return BUTTON_1;
+        }
+    else if((TS_State.TouchDetected) && (TS_State.X < 80*(1+ucColumn)) && (TS_State.X > 80*ucColumn) && (TS_State.Y < 240) && (TS_State.Y > 160)){
+        return BUTTON_2;
+        }
+    else if((TS_State.TouchDetected) && (TS_State.X < 80*(1+ucColumn)) && (TS_State.X > 80*ucColumn) && (TS_State.Y < 320) && (TS_State.Y > 240)){
+        return BUTTON_3;
+        }
+    else
+        return RELASED;
+    }
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Keyboard_Ts.h	Mon May 18 19:47:58 2020 +0000
@@ -0,0 +1,15 @@
+#ifndef Keyboard
+#define Keyboard
+
+#include "TS_DISCO_F429ZI.h"
+
+enum KeyboardState{BUTTON_0, BUTTON_1, BUTTON_2, BUTTON_3, RELASED};
+
+class KeyboardTs : private TS_DISCO_F429ZI{
+    public:
+    enum KeyboardState eRead();
+    KeyboardTs(unsigned char ucColumnNumber);
+    unsigned char ucColumn;
+    };
+
+#endif
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Keyboard_TsLcd.cpp	Mon May 18 19:47:58 2020 +0000
@@ -0,0 +1,28 @@
+#include "Keyboard_TsLcd.h"
+
+KeyboardTsLcd::KeyboardTsLcd(unsigned char _ucColumn){
+    pKeyboard = new KeyboardTs(_ucColumn);
+    pLed = new LedLcd(_ucColumn);
+    };
+    
+enum KeyboardState KeyboardTsLcd::eRead(){
+        enum KeyboardState Button = pKeyboard -> eRead();
+        switch(Button){
+            case BUTTON_0:
+                pLed -> On(0);
+                break;
+            case BUTTON_1:
+                pLed -> On(1);
+                break;
+            case BUTTON_2:
+                pLed -> On(2);
+                break;
+            case BUTTON_3:
+                pLed -> On(3);
+                break;
+            default :
+                pLed -> On(4);
+                break;
+        }
+        return Button;
+}
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Keyboard_TsLcd.h	Mon May 18 19:47:58 2020 +0000
@@ -0,0 +1,16 @@
+#ifndef Keyboard_TsLcd
+#define Keyboard_TsLcd
+
+#include "Keyboard_Ts.h"
+#include "Led_Lcd.h"
+
+class KeyboardTsLcd{
+    public:
+        enum KeyboardState eRead();
+        KeyboardTsLcd(unsigned char);
+    private:
+        KeyboardTs *pKeyboard;
+        LedLcd *pLed;
+    };
+
+#endif
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/LCD_DISCO_F429ZI.lib	Mon May 18 19:47:58 2020 +0000
@@ -0,0 +1,1 @@
+https://os.mbed.com/teams/ST/code/LCD_DISCO_F429ZI/#dc55a068bc1a
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Led_Lcd.cpp	Mon May 18 19:47:58 2020 +0000
@@ -0,0 +1,31 @@
+#include "Led_Lcd.h"
+
+LedLcd::LedLcd(unsigned char ucColumnNumber){
+    Clear(LCD_COLOR_BLACK);
+    SetBackColor(LCD_COLOR_RED);
+    SetFont(&Font24);
+
+    ucColumn = ucColumnNumber;
+
+    
+    
+}
+
+void LedLcd::On(unsigned char LedPos){
+    for(unsigned char ucIterator = 0; ucIterator < 4; ucIterator++){ 
+        if(LedPos == ucIterator){
+            SetTextColor(LCD_COLOR_GREEN);
+        }
+        else{
+            SetTextColor(LCD_COLOR_BLUE);
+        }
+        FillRect((1 + ucColumn*80), (ucIterator*80)+1, 78, 78);
+        char tab[2] = {ucIterator+48,0};
+        SetTextColor(LCD_COLOR_WHITE);
+        DisplayStringAt((ucColumn*80), ucIterator*80, (uint8_t *)tab, LEFT_MODE);
+        }
+    for(unsigned char ucIterator = 0; ucIterator < 4; ucIterator++){
+        SetTextColor(LCD_COLOR_GREEN);
+        DrawRect((0 + ucColumn*80), (ucIterator*80), 80, 80);
+        }
+    }
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Led_Lcd.h	Mon May 18 19:47:58 2020 +0000
@@ -0,0 +1,13 @@
+#ifndef Led
+#define Led
+
+#include "LCD_DISCO_F429ZI.h"
+
+class LedLcd : private LCD_DISCO_F429ZI{
+    public:
+    void On(unsigned char);
+    LedLcd(unsigned char ucColumnNumber);
+    unsigned char ucColumn;
+    };
+
+#endif
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/TS_DISCO_F429ZI.lib	Mon May 18 19:47:58 2020 +0000
@@ -0,0 +1,1 @@
+https://os.mbed.com/teams/ST/code/TS_DISCO_F429ZI/#4f8b6df8e235
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/main.cpp	Mon May 18 19:47:58 2020 +0000
@@ -0,0 +1,28 @@
+#include "mbed.h"
+#include "Keyboard_TsLcd.h"
+
+int main(){
+    KeyboardTsLcd Keyboardy(0);
+    LedLcd Lcd(2);
+
+    while(1) {
+        switch(Keyboardy.eRead()){
+            case BUTTON_0:
+                Lcd.On(3);
+                break;
+            case BUTTON_1:
+                Lcd.On(2);
+                break;
+            case BUTTON_2:
+                Lcd.On(1);
+                break;
+            case BUTTON_3:
+                Lcd.On(0);
+                break;
+            default:
+                Lcd.On(4);
+                break;            
+        };
+        wait(0.1);
+    }
+}
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mbed.bld	Mon May 18 19:47:58 2020 +0000
@@ -0,0 +1,1 @@
+https://os.mbed.com/users/mbed_official/code/mbed/builds/65be27845400
\ No newline at end of file