Toto je má konečná verze maturitního projektu
Dependencies: mbed mbed-rtos UTouch_vyrobek UniGraphic
Revision 2:0629f1ddaa92, committed 2021-12-08
- Comitter:
- smejky
- Date:
- Wed Dec 08 16:08:32 2021 +0000
- Parent:
- 1:4dd546219e30
- Child:
- 3:dadb214885c1
- Commit message:
- wokring;
Changed in this revision
--- a/UTouch.lib Mon Dec 06 22:21:09 2021 +0000 +++ b/UTouch.lib Wed Dec 08 16:08:32 2021 +0000 @@ -1,1 +1,1 @@ -https://os.mbed.com/users/rpocc/code/UTouch/#7c5a98a2d9ce +https://os.mbed.com/users/rpocc/code/UTouch/#88d79fcedec7
--- a/UniGraphic.lib Mon Dec 06 22:21:09 2021 +0000 +++ b/UniGraphic.lib Wed Dec 08 16:08:32 2021 +0000 @@ -1,1 +1,1 @@ -http://mbed.org/teams/GraphicsDisplay/code/UniGraphic/#cafa6f431835 +http://mbed.org/teams/GraphicsDisplay/code/UniGraphic/#8ae3f04c381e
--- a/display.cpp Mon Dec 06 22:21:09 2021 +0000
+++ b/display.cpp Wed Dec 08 16:08:32 2021 +0000
@@ -12,8 +12,24 @@
*/
-void Button(unsigned short int x0, unsigned short int y0,unsigned short int x1, unsigned short int y1,int color){
- spi.fillrect(x0,y0,x1,y1,color);
+void grafika(unsigned short int press = 0){
+ switch(press)
+{
+ case 1:
+ spi.fillrect(0,0,180,70,Blue);// pravy
+ break;
+ case 2 :
+ spi.fillrect(0,320,180,250,Blue);// levy
+ break;
+ default :
+ spi.fillrect(0,0,180,70,Blue); //pravy
+ spi.fillrect(0,140,180,71,Black); //stred
+ spi.fillrect(0,320,180,250,Blue); //levy
+}
+}
+
+void malovani(){
+
while(1==1)
{
if (touch.DataAvailable())
@@ -23,16 +39,39 @@
unsigned short int touch_y = touch.GetX();
unsigned short int touch_x = touch.GetY();
touch_x = touch_x - 10;
- touch_y = touch_y + 10;
- if ((touch_x >= x0 && touch_x <= x1)&&(touch_y >= y0 && touch_y <= y1)){
- spi.fillrect(x0,y0,x1,y1,Black);
- wait(0.5);
- spi.fillrect(x0,y0,x1,y1,color);
- }
-
-
-
-
+ touch_y = touch_y + 10;
+ spi.pixel(touch_x,touch_y,Blue);
+ }
+ }
+ }
+}
+
+void Button(unsigned short int x0, unsigned short int y0,unsigned short int x1, unsigned short int y1,int color){
+ spi.fillrect(x0,y0,x1,y1,color);
+ int is_pressed = 0;
+
+ while(1==1)
+ {
+ if (touch.DataAvailable())
+ {
+ if(touch.Read())
+ {
+ unsigned short int touch_y = touch.GetX();
+ unsigned short int touch_x = touch.GetY();
+ touch_x = touch_x - 10;
+ touch_y = touch_y + 10;
+ spi.pixel(touch_x,touch_y,Blue);
+ if ((touch_x >= x0 && touch_x <= x1)&&(touch_y >= y0 && touch_y <= y1) && is_pressed == 1){
+ spi.fillrect(x0,y0,x1,y1,Black);
+ is_pressed = 0;
+ wait(0.1);
+ }else if ((touch_x >= x0 && touch_x <= x1)&&(touch_y >= y0 && touch_y <= y1)){
+ is_pressed = 1;
+ grafika(is_pressed);
+ wait(0.1);
+
+
+ }
}
}
}
@@ -40,14 +79,15 @@
+
main(){
spi.background(White);
spi.cls();
spi.circle(240, 320, 20, Black);
touch.InitTouch();
touch.SetPrecision(PREC_EXTREME);
-
+ grafika();
Button(0,0,180,70,Blue);
- Button(0,320,180,250,Blue);
+
}