Ćwiczenie zrealizowane na potrzeby przedmiotu PPO przez Krzysztofa Bolka

Dependencies:   LCD_DISCO_F429ZI mbed TS_DISCO_F429ZI BSP_DISCO_F429ZI

Revision:
1:d562d46c33b7
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/led_lcd.cpp	Wed May 20 07:59:22 2020 +0000
@@ -0,0 +1,51 @@
+#include "led_lcd.h"
+#include "mbed.h"
+#include "LCD_DISCO_F429ZI.h"
+
+LCD_DISCO_F429ZI lcd;
+
+LedLcd::LedLcd(uint8_t WhichColumn){
+    lcd.Clear(LCD_COLOR_BLACK);
+    ui8Column = ((WhichColumn > 1) && (WhichColumn <= 3)) ? WhichColumn: 1;
+      
+};
+
+void LedLcd::DrawLed(uint8_t ui8LedNumber, LedState eLedState){
+     char cBuffer[2];
+      
+     lcd.SetTextColor(LCD_COLOR_GREEN);
+     lcd.DrawRect(((ui8Column-1)*80),80*ui8LedNumber,80,80);
+     
+     if(eLedState == LED_PRESSED){
+          lcd.SetTextColor(LCD_COLOR_GREEN); 
+     }
+    else if(eLedState == LED_RELEASED){
+          lcd.SetTextColor(LCD_COLOR_BLUE); 
+    }
+    
+     lcd.FillRect(((ui8Column-1)*80)+2,80*ui8LedNumber+2,77,77);
+     
+     BSP_LCD_SetFont(&Font24);
+     lcd.SetBackColor(LCD_COLOR_RED);
+     sprintf(cBuffer,"%d",ui8LedNumber);
+     lcd.SetTextColor(LCD_COLOR_WHITE);   
+     lcd.DisplayStringAt(((ui8Column-1)*80)+1,80*ui8LedNumber+1,(uint8_t *)&cBuffer,LEFT_MODE);
+};     
+        
+/*void LedLcd::On(uint8_t ui8LedNumber){     
+    
+    for(uint8_t ui8LedCounter=0; ui8LedCounter<4; ui8LedCounter++){
+            if(ui8LedCounter == ui8LedNumber){ 
+                DrawLed(ui8LedCounter,LED_PRESSED);
+            }
+            else {
+                DrawLed(ui8LedCounter,LED_RELEASED);
+            }
+    }*/
+void LedLcd::On(uint8_t ui8LedNumber){ 
+
+     for(uint8_t ui8LedCounter = 0; ui8LedCounter <= 3; ui8LedCounter++){
+            DrawLed(ui8LedCounter, LED_RELEASED);
+     } 
+     DrawLed(ui8LedNumber,LED_PRESSED);                                                  
+};