ዝርዝር ሁኔታ:
- ደረጃ 1 የሃርድዌር እና የሶፍትዌር መስፈርቶች
- ደረጃ 2: UTFT Lib ን ማበላሸት
- ደረጃ 3 የ TFT ጋሻ ማስጀመር
- ደረጃ 4 መሰረታዊ ሰላም ዓለም
- ደረጃ 5 የ UTFT ቅርጸ ቁምፊዎች
- ደረጃ 6 የ UTFT ቅርጾች ፣ መስመሮች እና ስርዓተ -ጥለት
- ደረጃ 7: UTFT Bitmap
- ደረጃ 8 የአዝራር በይነገጽ
- ደረጃ 9: Flappy Bird
- ደረጃ 10 የፕሮጀክቱ ሥራ
ቪዲዮ: የአርዱዲኖ TFT በይነገጽ መሠረታዊ ነገሮች 10 ደረጃዎች (ከስዕሎች ጋር)
2024 ደራሲ ደራሲ: John Day | [email protected]. ለመጨረሻ ጊዜ የተሻሻለው: 2024-01-30 07:31
የ TFT ንኪኪዎች ሰፊ የቀለም ክልል ፣ እና ጥሩ የግራፊክ ችሎታ እና ጥሩ የፒክሴሎች ካርታ ስላለው እንደ Atmel ፣ PIC ፣ STM ካሉ ማይክሮ መቆጣጠሪያዎች ጋር ጥቅም ላይ ሊውል የሚችል አስደናቂ ግራፊክ በይነገጽ ነው።
ዛሬ ፣ ከአርዱዲኖ ጋር ወደ 2.4 ኢንች TFT LCD Shield እንሄዳለን።
ይህ ጋሻ ለአርዱዲኖ UNO ነው ፣ ግን በአርዱዲኖ ሜጋ በጣም ምክንያታዊ በሆነ ምክንያት ‹የፕሮግራም ትውስታ› ን እንዴት እንደሚጠቀሙበት አስተምራለሁ።
ይህንን ቀለም TFT LCD ጋሻ በመጠቀም በ TFT LCD ቀለም ላይ ቁምፊዎችን ፣ ሕብረቁምፊዎችን ፣ የአዝራር መስተጋብርን ፣ የቢትማፕ ምስሎችን ፣ ወዘተ ማሳየት እንችላለን።
ደረጃ 1 የሃርድዌር እና የሶፍትዌር መስፈርቶች
የጋርዱ በይነገጽን ከአርዲኖ ሜጋ ጋር ለማድረግ የሚከተሉትን እንፈልጋለን።
ሃርድዌር ፦
• አርዱዲኖ ሜጋ
• TFT 2.4/2.8/3.2 ኢንች ኤል.ዲ.ዲ
• የዩኤስቢ ገመድ
SOFTWARE
• አርዱዲኖ አይዲኢ
• UTFT ቤተ -መጽሐፍት / spfd5408 ቤተ -መጽሐፍት
ጋሻው በመጀመሪያ የተሠራው ለአርዱዲኖ UNO ቦርዶች ነው ፣ ይህም ከአርዱዲኖ ሜጋ ጋር ሊያገለግል ይችላል።
ከ Arduino UNO ጋር ሲጠቀሙ ሁለት ዋና ጉዳዮች አሉ - “የማከማቻ ማህደረ ትውስታ” እና የፒን አጠቃቀም።
በ UNO ላይ የሚገኙትን ጥቅም ላይ ያልዋሉ ፒኖችን ለመጠቀም አስቸጋሪ ነው ፣ ግን ብዙ የ I/O ፒኖች ስላሉን ከአርዱዲኖ ሜጋ ጋር የተሻለ ነው።
በሚቀጥለው ደረጃ ፣ የ TFT ጋሻ ለመጠቀም የ UTFT ቤተ -መጽሐፍትን እንዴት እንደሚያርትዑ አሳያለሁ
ደረጃ 2: UTFT Lib ን ማበላሸት
ይህ ቤተ -መጽሐፍት ለአርዱዲኖ እና ለቺፕ ኪት የእኔ ITDB02_Graph ፣ ITDB02_Graph16 እና RGB_GLCD ቤተ -መጽሐፍት ቀጣይ ነው። የሚደገፉ የማሳያ ሞጁሎች እና ተቆጣጣሪዎች ብዛት መጨመር ሲጀምር ለወደፊቱ ለማቆየት በጣም ቀላል ስለሚሆን አንድ ፣ ሁለንተናዊ ቤተመፃሕፍት ለመሥራት ጊዜው እንደሆነ ተሰማኝ።
አርዱዲኖ ሜጋ 256 ኪ.ቢ የፕሮግራም ማህደረ ትውስታ አለው። በተጨማሪም ፣ 54 ፒኖች አሉ።
አብዛኛዎቹ ለመጠቀም ነፃ ናቸው ፣ እና አናሎግ 5 ብቻ ከ 16 ይወሰዳል።
ይህ ቤተ -መጽሐፍት በርካታ 8 -ቢት ፣ 16 -ቢት እና ተከታታይ የግራፊክስ ማሳያዎችን ይደግፋል ፣ እና ከሁለቱም አርዱዲኖ ፣ ቺፕ ኪት ቦርዶች ጋር ይሰራል እና TI LaunchPads ን ይምረጡ።
ማሳሰቢያ: በቤተመጽሐፉ መጠን ምክንያት 32 ኪባ ፍላሽ ማህደረ ትውስታ ብቻ ስላላቸው በ ATmega328 (Arduino Uno) እና ATmega32U4 (Arduino ሊዮናርዶ) ላይ እንዲጠቀሙበት አልመክርም። ይሠራል ፣ ግን ለመተግበሪያዎ ባለው ፍላሽ ማህደረ ትውስታ ውስጥ በጣም ውስን ይሆናሉ።
ደረጃዎች
- የ UTFT ቤተ -መጽሐፍትን ያውርዱ
- ቤተ -መጽሐፍቱን ይንቀሉ
- በአርዱዲኖ ሁኔታ ወይም ጥቅም ላይ በሚውለው ማይክሮ መቆጣጠሪያ ላይ በመመስረት UTFT / hardware / avr ን ይክፈቱ
- ማስታወሻ ደብተርን በመጠቀም HW_AVR_ ን ይገልፃል
- Uncomment Line 7 ለ UNO UNO ጋሻ ለማንቃት
- ፋይሉን ያስቀምጡ እና ይህንን ቤተ -መጽሐፍት ወደ አርዱዲኖ አይዲኢ ያክሉ
አሁን በዚህ ደረጃ ጨርሰናል! በሚቀጥለው ደረጃ ፣ ቤተመፃሕፍቱን ለመጠቀም እና ለአርዱዲኖ ሜጋ ፒኖቹን መግለፅን አሳያለሁ።
ደረጃ 3 የ TFT ጋሻ ማስጀመር
ቤተ -መጽሐፍቱን ካስተካከሉ በኋላ ወደ አርዱዲኖ ማውጫ ያክሉት።
በመቀጠል ፣ ያለዎትን ትክክለኛውን የ TFT ሞጁል እንዴት እንደሚገልጹ አሳያችኋለሁ
በቤተ -መጽሐፍት ውስጥ የሞዱሉን ስም ማግኘት አለብን።
- የላይብረሪውን ፋይል ይክፈቱ
- ወደ ሰነዶች ይሂዱ
እነዚህን ፋይሎች በሰነዱ ውስጥ ማየት ይችላሉ
• UTFT ፦
ይህ ፋይል በዚህ ቤተ -መጽሐፍት ውስጥ የተካተቱትን ሁሉንም ተግባራት እና ትዕዛዞችን ያሳያል።
• UTFT_ መስፈርት
ይህ ፋይል ስለ ሞጁሎች እና እንደ ፒን ውቅሮች ያሉ ከቤተ -መጽሐፍት ጋር እንዴት እንደሚዛመድ መረጃ አለው
• UTFT_Supported_display_modules _ & _ መቆጣጠሪያ
ይህ የእኛ ኢላማ ነው ፣ ይህ ፋይል በዚህ ቤተ -መጽሐፍት የሚደገፉ የሞጁሎች እና ጋሻዎች ስሞች አሉት ፣ በውስጡ ያለውን ሞዱልዎን ለመግለጽ ሊጠቀሙበት የሚገባው ለ UTFT የሞዱል ስሞች እና የሞዱል ስሞች ዝርዝር ማየት ይችላሉ።
TFT ን ለመወሰን እርምጃዎች
የ UTFT_Supported_display_modules _ & _ መቆጣጠሪያ ፋይልን ከቤተ -መጽሐፍት ይክፈቱ
- የ UTFT_Supported_display_modules _ & _ መቆጣጠሪያ ፋይልን ከቤተ -መጽሐፍት ይክፈቱ
- ላላችሁት ሞጁሎች (ጋሻ) ለ UTFT ሞዴሎችን ፈልጉ።
- አሁን በአርዱዲኖ አይዲኢ ላይ የ UTFT ተግባርን ለመግለጽ ትዕዛዙን እንጠቀማለን-
የ UTFT ስም (ሞዱል ፣ አርኤስኤስ ፣ አርኤስኤስ ፣ ሲኤስ ፣ Rst);
የ UTFT_Requirement ፋይልን ከቤተ -መጽሐፍት ይክፈቱ
ከሰነዱ ውስጥ ፒኖቹ በ A5 ፣ A4 ፣ A3 እና A2 ፒኖች ላይ እንደሚገኙ እናውቃለን።
እኛ ትዕዛዙን እንጠቀማለን-
UTFT myGLCD (ITDB28 ፣ 19 ፣ 18 ፣ 17 ፣ 16); # ልብ ይበሉ በአርዲኖ ሜጋ ውስጥ 19 ፣ 18 ፣ 17 ፣ 16
UTFT myGLCD (ITDB28 ፣ A5 ፣ A4 ፣ A3 ፣ A2); # ማስታወሻ በአርዱዲኖ UNO ውስጥ A5 ፣ A4 ፣ A3 ፣ A2 ን እንደሚሰካ ልብ ይበሉ
እና ተከናውኗል! አሁን በሚከተሉት ለውጦች በአርዱዲኖ አይዲኢ ላይ የቤተ መፃህፍት ምሳሌዎችን መጠቀም ይችላሉ።
ደረጃ 4 መሰረታዊ ሰላም ዓለም
#ያካትቱ / የትኞቹን ቅርጸ -ቁምፊዎች እንደምንጠቀም ያሳውቁ
ውጫዊ uint8_t BigFont ; ውጫዊ uint8_t SevenSegNumFont ; // ከማሳያ ሞዱልዎ ጋር የሚስማማውን የሞዴል መለኪያ መለወጥዎን ያስታውሱ! UTFT myGLCD (ITDB28 ፣ A5 ፣ A4 ፣ A3 ፣ A2); ባዶነት ማዋቀር () {myGLCD. InitLCD (); myGLCD.clrScr (); myGLCD.setFont (BigFont); } ባዶነት loop () {myGLCD.setColor (0, 255, 0); // አረንጓዴ myGLCD.print ("ሰላም ዓለም" ፣ 45 ፣ 100); (እውነት) {}; }
ደረጃ 5 የ UTFT ቅርጸ ቁምፊዎች
#ያካትቱ / የትኞቹን ቅርጸ -ቁምፊዎች እንደምንጠቀም ያሳውቁ
ውጫዊ uint8_t SmallFont ; ውጫዊ uint8_t BigFont ; ውጫዊ uint8_t SevenSegNumFont ; // ለልማት ጋሻዎ ፒኖቹን ለትክክለኛዎቹ ያዋቅሩ // ----------------------------------- ------------------------- // አርዱinoኖ ኡኖ / 2009-// ---------------- --- // መደበኛ አርዱዲኖ ኡኖ/2009 ጋሻ: ፣ A5 ፣ A4 ፣ A3 ፣ A2 // ማሳያ ሞዱል አርዱinoኖ ኡኖ TFT ጋሻ: ፣ A5 ፣ A4 ፣ A3 ፣ A2 // // አርዱinoኖ ሜጋ // ----- -------------- // መደበኛ አርዱዲኖ ሜጋ/የደን መከለያ: ፣ 38 ፣ 39 ፣ 40 ፣ 41 // CTE TFT LCD/SD Shield ለአርዲኖ ሜጋ ፦ ፣ 38 ፣ 39 ፣ 40 ፣ 41 // // ከማሳያ ሞዱልዎ ጋር የሚስማማውን የሞዴል መለኪያ መለወጥዎን ያስታውሱ! UTFT myGLCD (ITDB32S ፣ 38 ፣ 39 ፣ 40 ፣ 41); ባዶነት ማዋቀር () {myGLCD. InitLCD () myGLCD.clrScr (); } ባዶነት loop () {myGLCD.setColor (0, 255, 0); myGLCD.setBackColor (0, 0, 0); myGLCD.setFont (BigFont); myGLCD.print ("! \"#$%& '()*+, -./", CENTER, 0); myGLCD.print (" 0123456789:;? ", CENTER, 16); myGLCD.print ("@ ABCDEFGHIJKLMNO "፣ ማእከል ፣ 32) ፤ myGLCD.print (" PQRSTUVWXYZ ^_ ", CENTER, 48); myGLCD.print (" "abcdefghijklmno", CENTER, 64); myGLCD.print ("pqrst | ~ "፣ ማእከል ፣ 80) ፤ myGLCD.setFont (SmallFont) ፤ myGLCD.print ("! / "#$%& '()*+, -./0123456789:;?", CENTER, 120); myGLCD.print ("@ABCDEFGHIJKLMNOPQRSTUVWXYZ ^_", CENTER, 132); myGLCD.print ("` abcdefghijklmnopqrstuvwxyz {|} ~ ", CENTER, 144); myGLCD.setFont (SevenSegNumFont); myGLCD.print ("0123456789", CENTER, 190); (1) {}; }
ደረጃ 6 የ UTFT ቅርጾች ፣ መስመሮች እና ስርዓተ -ጥለት
#UTFT.h”ን ያካትቱ// የትኛውን ቅርጸ-ቁምፊዎች እንደምንጠቀም ያሳውቁ uint8_t SmallFont ; // ለልማት ጋሻዎ ትክክለኛዎቹን ፒኖችን ያዘጋጁ // -------------- ---------------------------------------------- // አርዱinoኖ ኡኖ / 2009: // ------------------- // መደበኛ አርዱዲኖ ኡኖ/ 2009 ጋሻ: ፣ A5 ፣ A4 ፣ A3 ፣ A2 // ማሳያ ሞዱል አርዱinoኖ ኡኖ TFT ጋሻ:, A5 ፣ A4 ፣ A3 ፣ A2 // // አርዱinoኖ ሜጋ // ------------------- // መደበኛ አርዱinoኖ ሜጋ/የመከለያ ጋሻ: ፣ 38 ፣ 39 ፣ 40, 41 // CTE TFT LCD/SD Shield for Arduino Mega:, 38, 39, 40, 41 // // የማሳያ ሞዱልዎን ለማስማማት የሞዴሉን መለኪያ መለወጥዎን ያስታውሱ! UTFT myGLCD (ITDB32S ፣ 38 ፣ 39 ፣ 40 ፣ 41) ፤ ባዶ ቅንብር () {randomSeed (analogRead (0)); // ኤልሲዲውን myGLCD. InitLCD () ያዋቅሩ ፤ myGLCD.setFont (SmallFont); }
ባዶነት loop ()
{int buf [318]; int x, x2; int y, y2; int r; // ማያ ገጹን ያፅዱ እና ፍሬሙን ይሳሉ myGLCD.clrScr (); myGLCD.setColor (255, 0, 0); myGLCD.fillRect (0, 0, 319, 13); myGLCD.setColor (64 ፣ 64 ፣ 64) ፤ myGLCD.fillRect (0, 226, 319, 239); myGLCD.setColor (255 ፣ 255 ፣ 255) ፤ myGLCD.setBackColor (255, 0, 0); myGLCD.print (" * ሁለንተናዊ ቀለም TFT ማሳያ ቤተ -መጽሐፍት *" ፣ ማእከል ፣ 1); myGLCD.setBackColor (64 ፣ 64 ፣ 64) ፤ myGLCD.setColor (255, 255, 0); myGLCD.print ("", CENTER, 227); myGLCD.setColor (0, 0, 255); myGLCD. myGLCD.setBackColor (0, 0, 0); myGLCD.drawLine (159 ፣ 15 ፣ 159 ፣ 224) ፤ myGLCD.drawLine (1 ፣ 119 ፣ 318 ፣ 119) ፤ ለ (int i = 9; i <310; i+= 10) myGLCD.drawLine (i ፣ 117 ፣ i ፣ 121); ለ (int i = 19; i <220; i+= 10) myGLCD.drawLine (157 ፣ i ፣ 161 ፣ i) ፤ // ኃጢአትን ፣ cos- እና ታን መስመሮችን ይሳሉ myGLCD.setColor (0 ፣ 255 ፣ 255); myGLCD.print ("ኃጢአት" ፣ 5 ፣ 15); ለ (int i = 1; i <318; i ++) {myGLCD.drawPixel (i ፣ 119+ (ኃጢአት (((i*1.13)*3.14)/180)*95)); } myGLCD.setColor (255 ፣ 0 ፣ 0) ፤ myGLCD.print ("Cos", 5, 27); ለ (int i = 1; i <318; i ++) {myGLCD.drawPixel (i ፣ 119+ (cos ((i*1.13)*3.14)/180)*95)); } myGLCD.setColor (255 ፣ 255 ፣ 0) ፤ myGLCD.print ("ታን" ፣ 5 ፣ 39); ለ (int i = 1; i <318; i ++) {myGLCD.drawPixel (i, 119+ (tan ((i*1.13)*3.14)/180))); } መዘግየት (2000); myGLCD.setColor (0, 0, 0); myGLCD.fillRect (1, 15, 318, 224); myGLCD.setColor (0, 0, 255); myGLCD.setBackColor (0, 0, 0); myGLCD.drawLine (159 ፣ 15 ፣ 159 ፣ 224) ፤ myGLCD.drawLine (1 ፣ 119 ፣ 318 ፣ 119) ፤ // የሚንቀሳቀስ ሲንዌቭ x = 1 ይሳሉ። ለ (int i = 1; i319) {ከሆነ ((x == 159) || (buf [x-1] == 119)) myGLCD.setColor (0, 0, 255); ሌላ myGLCD.setColor (0, 0, 0); myGLCD.drawPixel (x, buf [x-1]); } myGLCD.setColor (0 ፣ 255 ፣ 255) ፤ y = 119+(ኃጢአት (((i*1.1)*3.14) / 180)*(90- (i / 100))); myGLCD.drawPixel (x, y); buf [x-1] = y; } መዘግየት (2000); myGLCD.setColor (0, 0, 0); myGLCD.fillRect (1 ፣ 15 ፣ 318 ፣ 224) ፤ // አንዳንድ የተሞሉ አራት ማዕዘኖችን ለ (int i = 1; i <6; i ++) {switch (i) {case 1: myGLCD.setColor (255 ፣ 0 ፣ 255); ሰበር; ጉዳይ 2: myGLCD.setColor (255, 0, 0); ሰበር; ጉዳይ 3: myGLCD.setColor (0, 255, 0); ሰበር; ጉዳይ 4: myGLCD.setColor (0, 0, 255); ሰበር; ጉዳይ 5: myGLCD.setColor (255, 255, 0); ሰበር; } myGLCD.fillRect (70+ (i*20) ፣ 30+ (i*20) ፣ 130+ (i*20) ፣ 90+ (i*20)); } መዘግየት (2000); myGLCD.setColor (0, 0, 0); myGLCD.fillRect (1 ፣ 15 ፣ 318 ፣ 224) ፤ // አንዳንድ የተሞሉ ፣ የተጠጋጉ አራት ማዕዘን ቅርጾችን ለ (int i = 1; i <6; i ++) {switch (i) {case 1: myGLCD.setColor (255, 0, 255); ሰበር; ጉዳይ 2: myGLCD.setColor (255, 0, 0); ሰበር; ጉዳይ 3: myGLCD.setColor (0, 255, 0); ሰበር; ጉዳይ 4: myGLCD.setColor (0, 0, 255); ሰበር; ጉዳይ 5: myGLCD.setColor (255, 255, 0); ሰበር; } myGLCD.fillRoundRect (190- (i*20) ፣ 30+ (i*20) ፣ 250- (i*20) ፣ 90+ (i*20)); } መዘግየት (2000); myGLCD.setColor (0, 0, 0); myGLCD.fillRect (1 ፣ 15 ፣ 318 ፣ 224) ፤ // የተወሰኑ የተሞሉ ክበቦችን ለ (int i = 1; i <6; i ++) {መቀየሪያ (i) {ጉዳይ 1: myGLCD.setColor (255 ፣ 0 ፣ 255)); ሰበር; ጉዳይ 2: myGLCD.setColor (255, 0, 0); ሰበር; ጉዳይ 3: myGLCD.setColor (0, 255, 0); ሰበር; ጉዳይ 4: myGLCD.setColor (0, 0, 255); ሰበር; ጉዳይ 5: myGLCD.setColor (255, 255, 0); ሰበር; } myGLCD.fillCircle (100+ (i*20) ፣ 60+ (i*20) ፣ 30) ፤ } መዘግየት (2000); myGLCD.setColor (0, 0, 0); myGLCD.fillRect (1 ፣ 15 ፣ 318 ፣ 224) ፤ // አንዳንድ መስመሮችን በስርዓተ ጥለት ይሳሉ myGLCD.setColor (255 ፣ 0 ፣ 0) ፤ ለ (int i = 15; i <224; i+= 5) {myGLCD.drawLine (1 ፣ i ፣ (i*1.44) -10 ፣ 224); } myGLCD.setColor (255 ፣ 0 ፣ 0) ፤ ለ (int i = 224 ፤ i> 15 ፤ i- = 5) {myGLCD.drawLine (318 ፣ i ፣ (i*1.44) -11 ፣ 15) ፤ } myGLCD.setColor (0 ፣ 255 ፣ 255) ፤ ለ (int i = 224 ፤ i> 15 ፤ i- = 5) {myGLCD.drawLine (1 ፣ i ፣ 331- (i*1.44) ፣ 15) ፤ } myGLCD.setColor (0 ፣ 255 ፣ 255) ፤ ለ (int i = 15; i <224; i+= 5) {myGLCD.drawLine (318 ፣ i ፣ 330- (i*1.44) ፣ 224) ፤ } መዘግየት (2000); myGLCD.setColor (0, 0, 0); myGLCD.fillRect (1 ፣ 15 ፣ 318 ፣ 224) ፤ // አንዳንድ የዘፈቀደ ክበቦችን ይሳሉ ለ (int i = 0; i <100; i ++) {myGLCD.setColor (የዘፈቀደ (255) ፣ የዘፈቀደ (255) ፣ የዘፈቀደ (255))); x = 32+በዘፈቀደ (256); y = 45+የዘፈቀደ (146); r = የዘፈቀደ (30); myGLCD.drawCircle (x, y, r); } መዘግየት (2000); myGLCD.setColor (0, 0, 0); myGLCD.fillRect (1 ፣ 15 ፣ 318 ፣ 224) ፤ // አንዳንድ የዘፈቀደ አራት ማዕዘኖችን ለ (int i = 0; i <100; i ++) {myGLCD.setColor (የዘፈቀደ (255) ፣ የዘፈቀደ (255) ፣ የዘፈቀደ (255))); x = 2+የዘፈቀደ (316); y = 16+በዘፈቀደ (207); x2 = 2+የዘፈቀደ (316); y2 = 16+በዘፈቀደ (207); myGLCD.drawRect (x, y, x2, y2); } መዘግየት (2000); myGLCD.setColor (0, 0, 0); myGLCD.fillRect (1 ፣ 15 ፣ 318 ፣ 224) ፤ // ለ (int i = 0; i <100; i ++) አንዳንድ የዘፈቀደ የተጠጋጋ አራት ማዕዘን ቅርጾችን ይሳሉ {myGLCD.setColor (የዘፈቀደ (255) ፣ የዘፈቀደ (255) ፣ የዘፈቀደ) 255)); x = 2+የዘፈቀደ (316); y = 16+በዘፈቀደ (207); x2 = 2+የዘፈቀደ (316); y2 = 16+በዘፈቀደ (207); myGLCD.drawRoundRect (x, y, x2, y2); } መዘግየት (2000); myGLCD.setColor (0, 0, 0); myGLCD.fillRect (1, 15, 318, 224); ለ (int i = 0; i <100; i ++) {myGLCD.setColor (የዘፈቀደ (255) ፣ የዘፈቀደ (255) ፣ የዘፈቀደ (255)); x = 2+የዘፈቀደ (316); y = 16+በዘፈቀደ (209); x2 = 2+የዘፈቀደ (316); y2 = 16+በዘፈቀደ (209); myGLCD.drawLine (x, y, x2, y2); } መዘግየት (2000); myGLCD.setColor (0, 0, 0); myGLCD.fillRect (1, 15, 318, 224); ለ (int i = 0; i <10000; i ++) {myGLCD.setColor (የዘፈቀደ (255) ፣ የዘፈቀደ (255) ፣ የዘፈቀደ (255)); myGLCD.drawPixel (2+የዘፈቀደ (316) ፣ 16+የዘፈቀደ (209)); } መዘግየት (2000); myGLCD.fillScr (0, 0, 255); myGLCD.setColor (255, 0, 0); myGLCD.fillRoundRect (80 ፣ 70 ፣ 239 ፣ 169) ፤ myGLCD.setColor (255 ፣ 255 ፣ 255) ፤ myGLCD.setBackColor (255, 0, 0); myGLCD.print (“ያ ነው!” ፣ ማእከል ፣ 93); myGLCD.print (“እንደገና መጀመር በ” ፣ ማእከል ፣ 119); myGLCD.print (“ጥቂት ሰከንዶች…” ፣ ማእከል ፣ 132); myGLCD.setColor (0, 255, 0); myGLCD.setBackColor (0, 0, 255); myGLCD.print ("የአሂድ ጊዜ (msecs)", ማዕከል ፣ 210); myGLCD.printNumI (ሚሊስ () ፣ ማእከል ፣ 225); መዘግየት (10000); }
ደረጃ 7: UTFT Bitmap
#ያካትቱ
#ያካትቱ // የትኞቹን ቅርጸ-ቁምፊዎች እንጠቀምበታለን uint8_t SmallFont ; // ለልማት ጋሻዎ ትክክለኛዎቹን ፒኖችን ያዘጋጁ // ------------------ ------------------------------------------ // አርዱinoኖ ኡኖ / 2009: / / ------------------- // መደበኛ አርዱዲኖ ኡኖ/ 2009 ጋሻ ፣ ፣ A5 ፣ A4 ፣ A3 ፣ A2 // ማሳያ ሞዱል አርዱinoኖ ኡኖ TFT ጋሻ: ፣ A5 ፣ A4 ፣ A3 ፣ A2 // // አርዱinoኖ ሜጋ-// ------------------- // መደበኛ አርዱinoኖ ሜጋ/የመከለያ ጋሻ: ፣ 38 ፣ 39 ፣ 40 ፣ 41 // ለአርዲኖ ሜጋ CTE TFT LCD/SD Shield: ፣ 38 ፣ 39 ፣ 40 ፣ 41 // // የማሳያ ሞዱልዎን ለማስማማት የሞዴሉን መለኪያ መለወጥዎን ያስታውሱ! UTFT myGLCD (ITDB32S ፣ A5 ፣ A4 ፣ A3 ፣ A2) ፤ የውጭ ያልተፈረመ int መረጃ [0x400]; ውጫዊ ያልተፈረመ int አዶ [0x400]; ውጫዊ ያልተፈረመ int tux [0x400]; ባዶነት ማዋቀር () {myGLCD. InitLCD (); myGLCD.setFont (SmallFont); } ባዶነት loop () {myGLCD.fillScr (255 ፣ 255 ፣ 255) ፤ myGLCD.setColor (255 ፣ 255 ፣ 255) ፤ myGLCD.print ("*** A 10 በ 7 ፍርግርግ የ 32x32 አዶ ***" ፣ ማእከል ፣ 228); ለ (int x = 0; x <10; x ++) ለ (int y = 0; y <7; y ++) myGLCD.drawBitmap (x*32, y*32, 32, 32 ፣ መረጃ); መዘግየት (5000); myGLCD.fillScr (255, 255, 255); myGLCD.setColor (255 ፣ 255 ፣ 255) ፤ myGLCD.print (“ከ 1 እስከ 4 ባለው ሁለት የተለያዩ አዶዎች” ፣ ማእከል ፣ 228); int x = 0; ለ (int s = 0; s0; s--) {myGLCD.drawBitmap (x, 224- (s*32) ፣ 32 ፣ 32 ፣ አዶ ፣ ዎች) ፤ x+= (ዎች*32); } መዘግየት (5000); }
ደረጃ 8 የአዝራር በይነገጽ
#ያካትቱ #ያካትቱ // ማሳያውን ያስጀምሩ // ------------------ // ለልማት ቦርድዎ ፒኖቹን ለትክክለኛዎቹ ያዋቅሩ // ------- -------------------------------------------------- - // መደበኛ አርዱinoኖ ኡኖ/2009 ጋሻ: ፣ 19 ፣ 18 ፣ 17 ፣ 16 // መደበኛ አርዱዲኖ ሜጋ/የደን መከለያ: ፣ 38 ፣ 39 ፣ 40 ፣ 41 // CTE TFT LCD/SD ጋሻ ለአርዱዲኖ ምክንያት ፦ ፣ 25, 26, 27, 28 // Teensy 3.x TFT የሙከራ ቦርድ:, 23, 22, 3, 4 // ElecHouse TFT LCD/SD Shield for Arduino due:, 22, 23, 31, 33 // // ያስታውሱ ከማሳያ ሞዱልዎ ጋር የሚስማማውን የሞዴል መለኪያውን ይለውጡ! UTFT myGLCD (ITDB32S ፣ 38 ፣ 39 ፣ 40 ፣ 41) ፤ // የንኪ ማያ ገጽን ያስጀምሩ // ---------------------- // ፒኖቹን ወደ ትክክለኛው ያዘጋጁ እነዚያ ለልማት ቦርድዎ // ------------------------------------------- ---------------- // መደበኛ አርዱዲኖ ኡኖ/2009 ጋሻ-15 ፣ 10 ፣ 14 ፣ 9 ፣ 8 // መደበኛ አርዱinoኖ ሜጋ/የመከለያ ጋሻ 6 ፣ 5 ፣ 4 ፣ 3 ፣ 2 // CTE TFT LCD/SD Shield ለ Arduino ምክንያት: 6, 5, 4, 3, 2 // Teensy 3.x TFT የሙከራ ቦርድ: 26, 31, 27, 28, 29 // ElecHouse TFT LCD/SD Shield ለ አርዱinoኖ ምክንያት - 25 ፣ 26 ፣ 27 ፣ 29 ፣ 30 // URTouch myTouch (6 ፣ 5 ፣ 4 ፣ 3 ፣ 2) ፤ // የትኞቹን ቅርጸ -ቁምፊዎች ውጫዊ uint8_t BigFont ን እንደምንጠቀም ይግለጹ ፣ int x, y; char stCurrent [20] = ""; int stCurrentLen = 0; char stLast [20] = "";/************************* ብጁ ተግባራት ** ********* ****************/ባዶነት መሳል አዝራሮች () {// ለ (x = 0; x <5; x ++) {myGLCD.setColor (0, 0) የአዝራሮችን የላይኛው ረድፍ ይሳሉ, 255); myGLCD.fillRoundRect (10+ (x*60) ፣ 10 ፣ 60+ (x*60) ፣ 60) ፤ myGLCD.setColor (255 ፣ 255 ፣ 255) ፤ myGLCD.drawRoundRect (10+ (x*60) ፣ 10 ፣ 60+ (x*60) ፣ 60) ፤ myGLCD.printNumI (x+1 ፣ 27+ (x*60) ፣ 27) ፤ } // ለ (x = 0; x <5; x ++) {myGLCD.setColor (0, 0, 255) የመሃል ረድፎችን ይሳሉ። myGLCD.fillRoundRect (10+ (x*60) ፣ 70 ፣ 60+ (x*60) ፣ 120) ፤ myGLCD.setColor (255 ፣ 255 ፣ 255) ፤ myGLCD.drawRoundRect (10+ (x*60) ፣ 70 ፣ 60+ (x*60) ፣ 120) ፤ ከሆነ (x <4) myGLCD.printNumI (x+6, 27+ (x*60) ፣ 87); } myGLCD.print ("0", 267, 87); // የታችኛውን ረድፍ አዝራሮችን ይሳሉ myGLCD.setColor (0, 0, 255); myGLCD.fillRoundRect (10, 130, 150, 180); myGLCD.setColor (255 ፣ 255 ፣ 255) ፤ myGLCD.drawRoundRect (10, 130, 150, 180); myGLCD.print ("አጽዳ" ፣ 40 ፣ 147); myGLCD.setColor (0, 0, 255); myGLCD.fillRoundRect (160 ፣ 130 ፣ 300 ፣ 180) ፤ myGLCD.setColor (255 ፣ 255 ፣ 255) ፤ myGLCD.drawRoundRect (160 ፣ 130 ፣ 300 ፣ 180); myGLCD.print ("አስገባ" ፣ 190 ፣ 147); myGLCD.setBackColor (0, 0, 0); } ባዶ ዝማኔ Str (int val) {if (stCurrentLen = 10) && (y = 10) && (x = 70) && (x = 130) && (x = 190) && (x = 250) && (x = 70) && (y = 10) && (x = 70) && (x = 130) && (x = 190) && (x = 250) && (x = 130) && (y = 10) && (x = 160) && (x0) {ለ (x = 0; x
ደረጃ 9: Flappy Bird
#ያካትቱ #ያካትቱ #ያካትቱ // ==== ነገሮችን መፍጠር UTFT myGLCD (SSD1289, 38, 39, 40, 41); // መለኪያዎች ከእርስዎ የማሳያ/የሽብል ሞዴል UTouch myTouch (6 ፣ 5 ፣ 4 ፣ 3 ፣ 2) ጋር መስተካከል አለባቸው ፤ // ==== የቅርፀ ቁምፊዎችን ውጫዊ uint8_t SmallFont ; ውጫዊ uint8_t BigFont ; ውጫዊ uint8_t SevenSegNumFont ; የውጭ ያልተፈረመ int bird01 [0x41A]; // ወፍ Bitmapint x, y; // ተለዋዋጮች ማሳያው ተጭኖባቸው ለነበሩ መጋጠሚያዎች // ፍሎፒ ወፍ int xP = 319; int yP = 100; int yB = 50; int motsiRate = 3; int fallRateInt = 0; ተንሳፋፊ fallRate = 0; int ውጤት = 0; int lastSpeedUpScore = 0; int highestScore; ቡሊያን ማያ ገጽ ተጭኗል = ሐሰት; ቡሊያን ጨዋታ ተጀምሯል = ሐሰት ፤ ባዶነት ማዋቀር () {// ማሳያ ጀምር myGLCD. InitLCD (); myGLCD.clrScr (); myTouch. InitTouch (); myTouch.setPrecision (PREC_MEDIUM); ከፍተኛ ነጥብ = EEPROM.read (0); // ከ EEPROM initiateGame () ከፍተኛውን ውጤት ያንብቡ (); // ጨዋታውን ያስጀምሩ} ባዶነት loop () {xP = xP-moveRate; // xP - x የፒላሮች ቅንጅት; ክልል 319 - (-51) drawPilars (xP ፣ yP); // ዓምዶቹን ይስባል // yB - y በወደቁ ተመን እሴት yB+= fallRateInt እሴት ላይ የሚመረኮዝ የወፍ አስተባባሪ; fallRate = fallRate+0.4; // የፍጥነት/ የስበት ውድቀት/ ውጤት/ ውድቀት/ ውጤት/ ውድቀት/ ውጤት/ ውጤት እንዲኖረን እያንዳንዱ የውድቀት መጠን ይጨምራል። // የግጭት (የ yB> = 180 || yB <= 0) {// የላይኛው እና የታችኛው gameOver () ከሆነ ግጭቶችን ይፈትሻል። } ከሆነ ((xP = 5) && (yB <= yP-2)) {// የላይኛው ዓምድ gameOver (); } ከሆነ ((xP = 5) && (yB> = yP+60)) {// የታችኛው ዓምድ gameOver (); } // የወፍ ስዕል ቢርድ (yB) ይስላል ፤ // ምሰሶው በማያ ገጹ ላይ ካለፈ በኋላ (xPRESET = 250) && (x = 0) && (y = 0) && (x = 30) && (y = 270) {myGLCD.setColor (0 ፣ 200 ፣ 20)); myGLCD.fillRect (318, 0, x, y-1); myGLCD.setColor (0, 0, 0); myGLCD.drawRect (319 ፣ 0 ፣ x-1 ፣ y) ፤ myGLCD.setColor (0, 200, 20); myGLCD.fillRect (318 ፣ y+81 ፣ x ፣ 203) ፤ myGLCD.setColor (0, 0, 0); myGLCD.drawRect (319 ፣ y+80 ፣ x-1 ፣ 204) ፤ } ሌላ ከሆነ (x highestScore) {ከፍተኛ ነጥብ = ውጤት; EEPROM. ጻፍ (0 ፣ ከፍተኛ ነጥብ); } // የአቀማመጥ እሴቶችን ለመጀመር ተለዋዋጭዎቹን ዳግም ያስጀምራል xP = 319; yB = 50; fallRate = 0; ውጤት = 0; lastSpeedUpScore = 0; moveRate = 3; gameStarted = ሐሰት; // ጨዋታውን እንደገና ያስጀምሩ ጨዋታ (); }
ደረጃ 10 የፕሮጀክቱ ሥራ
በእኔ Github ማከማቻ ውስጥ የምንጭ ኮዱን ማግኘት ይችላሉ።
አገናኝ
በእውነቱ የረዳዎት ከሆነ አውራ ጣትዎን ይስጡ እና አስደሳች ለሆኑ ፕሮጀክቶች የእኔን ሰርጥ ይከተሉ:)
ከወደዱት ይህንን ቪዲዮ ያጋሩ።
ለደንበኝነት መመዝገብዎ ደስ ብሎኛል
በማንበብዎ እናመሰግናለን!
የሚመከር:
የፓይዘን መግቢያ - ካትሺሂኮ ማትሱዳ እና ኤድዊን ሲጆ - መሠረታዊ ነገሮች - 7 ደረጃዎች
የፓይዘን መግቢያ - ካትሱሂኮ ማትሱዳ እና ኤድዊን ሲጆ - መሠረታዊ ነገሮች - ሰላም ፣ እኛ በ MYP ውስጥ 2 ተማሪዎች ነን 2. Python ን እንዴት ኮድ ማድረግ እንደሚችሉ መሰረታዊ ነገሮችን ልናስተምርዎ እንፈልጋለን። በኔዘርላንድ ጊዶ ቫን ሮሱም በ 1980 ዎቹ መገባደጃ ላይ ተፈጥሯል። ለኤቢሲ ቋንቋ ተተኪ እንዲሆን ተደረገ። ስሙ ‹Python› ነው። ምክንያቱም መቼ
የ VBScript መሠረታዊ ነገሮች - ስክሪፕቶችዎን ፣ መዘግየቶችን እና ሌሎችንም ይጀምሩ! 5 ደረጃዎች
የ VBScript መሠረታዊ ነገሮች - ስክሪፕቶችዎን ፣ መዘግየቶችን እና ሌሎችንም ይጀምሩ! በ.vbs ፋይሎች ፣ አንዳንድ አስቂኝ ቀልድ ወይም ገዳይ ቫይረሶችን መፍጠር ይችላሉ። በዚህ መማሪያ ውስጥ እንደ ስክሪፕትዎን መጀመር ፣ ፋይሎችን መክፈት እና ሌሎችንም የመሳሰሉ መሠረታዊ ትዕዛዞችን አሳያችኋለሁ። በ t
የኤሌክትሮኒክስ መሠረታዊ ነገሮች: ዲዲዮ: 6 ደረጃዎች (ከስዕሎች ጋር)
የኤሌክትሮኒክስ ዕቃዎች መሠረታዊ ነገሮች - ዲዲዮ - ቪዲዮን በ Youtube ላይ ይመልከቱ ካልወደዱ! እዚያ ቀለል አድርጌዋለሁ። እንዲሁም ለዚህ ፕሮጀክት ስፖንሰርነት ለ www.JLCPCB.com ትልቅ ምስጋና ይግባቸው ፣ ከድር ጣቢያቸው 2 ዶላር ፒሲቢ (10 ሴ.ሜ*10 ሴ.ሜ) በ 2 ዶላር ብቻ ማዘዝ ይችላሉ። ለ 2 ንብርብሮች PCB i የተገነባ ጊዜ
የአርዱዲኖ እስፓሎራ መሠረታዊ ነገሮች - 4 ደረጃዎች
የአርዱዲኖ እስፓሎራ መሠረታዊ ነገሮች - ኦ! እዚያ አላየሁህም! የታላቁ የኤስፕሎራ ቦርድ መሰረታዊ ነገሮችን ለመማር መፈለግ አለብዎት። ደህና ፣ ግባ ፣ ግባ። ይህ አጋዥ ስልጠና ከእርስዎ Esplora ጋር ማድረግ ስለሚችሉት ስለ ሁለት ጥሩ ዘዴዎች ያስተምርዎታል።
ለጀማሪዎች የዳቦ ሰሌዳ መሠረታዊ ነገሮች 10 ደረጃዎች (ከስዕሎች ጋር)
ለጀማሪዎች የዳቦ ሰሌዳ መሠረታዊ ነገሮች - የዚህ አስተማሪ ዓላማ በዳቦ ሰሌዳ ላይ የተሟላ መመሪያን መስጠት ሳይሆን መሰረታዊ ነገሮችን ማሳየት ነው ፣ እና እነዚህ መሰረታዊ ነገሮች ከተማሩ በኋላ እርስዎ ሙሉ በሙሉ ብለው ሊጠሩት እንደሚችሉ ለመገመት የሚፈልጉትን ሁሉ በደንብ ያውቃሉ። መመሪያ ግን በተለየ ስሜት። ማንኛውም