ዝርዝር ሁኔታ:
- አቅርቦቶች
- ደረጃ 1 ማሳያዎን በማገናኘት ላይ
- ደረጃ 2 - የቀረበውን ሶፍትዌር ያውርዱ
- ደረጃ 3 - ማሳያውን ማስኬድ
- ደረጃ 4 - የተሻሻለውን ቤተ -መጽሐፍት መጠቀም
- ደረጃ 5 - እራስዎ ፕሮግራም ማድረግ
- ደረጃ 6 የጽሑፍ ጽሑፍ
- ደረጃ 7 - መስመሮችን እና አራት ማዕዘኖችን መሳል
- ደረጃ 8 - ክበቦችን መሳል
- ደረጃ 9: በቀለማት ያሸበረቀ የመጫወቻ ሜዳ ላይ ያልተቀየረ
- ደረጃ 10: ማሽከርከር
- ደረጃ 11 Bitmaps ን መሳል
- ደረጃ 12 ፦ የእርስዎን Bitmap በማሳየት ላይ
ቪዲዮ: ለፕሮጀክትዎ የኢ-ኢንክ ማሳያ እንዴት እንደሚታከሉ -12 ደረጃዎች (ከስዕሎች ጋር)
2024 ደራሲ ደራሲ: John Day | [email protected]. ለመጨረሻ ጊዜ የተሻሻለው: 2024-01-30 07:29
ብዙ ፕሮጄክቶች አንዳንድ ዓይነት መረጃን ፣ ለምሳሌ የአካባቢ መረጃን ፣ ብዙውን ጊዜ አርዱዲኖን ለቁጥጥር መጠቀምን ያካትታሉ። በእኔ ሁኔታ ፣ በውሃ ማለስለሻዬ ውስጥ ያለውን የጨው መጠን ለመቆጣጠር ፈልጌ ነበር። በቤትዎ አውታረ መረብ ላይ ውሂቡን መድረስ ይፈልጉ ይሆናል ፣ ግን በተመሳሳይ በሚለካበት ቦታ ሊያሳዩት ይፈልጉ ይሆናል። ወይም ይበልጥ ምቹ በሆነ ቦታ ላይ ሁል ጊዜ በርቀት የተገናኘ ማሳያ ሊኖርዎት ይችላል።
አሁን ሊጠቀሙባቸው የሚችሏቸው በርካታ የማሳያ ዓይነቶች አሉ ፣ ሁሉም በጣም ርካሽ ፣ ግን የተለያዩ ጥቅሞች እና ጉዳቶች አሏቸው
- የቁጥር ፊደላት LCD ማሳያ በጣም ርካሹ ግን በጣም ውስን ነው።
- የ OLED ማሳያ ግራፊክስን ሊያሳይ ይችላል ፣ ግን ርካሽዎቹ በጣም ትንሽ ናቸው። ሁለተኛው ፎቶ ከኢ-ኢንክ አንድ አጠገብ ባለ 128x64 ፒክሴል OLED ማሳያ ያሳያል።
- የኢ-ኢንክ (ወይም ኢ-ወረቀት) ማሳያ በመጠኑ ትልቅ እና ስለዚህ ለማንበብ የቀለለ ነው ፣ እና ማሳያው ሲጠፋ እንኳን የማቆየቱ ጠቀሜታ አለው! ግን ማሳያውን እንደገና ለማደስ ብዙ ሰከንዶች ይወስዳል።
አርዱኢኖ በየጥቂት ሰዓታት ብቻ ከእንቅልፉ እንዲነቃ ፣ ንባብ ወስዶ ከመተኛቴ በፊት ለማሳየት ስለቻልኩ የኢ-ኢንክ ማሳያ ለትግበራዬ ተስማሚ ይመስል ነበር። ከዚያ ማሳያውን እንደገና ለማደስ ብዙ ሰከንዶች የሚወስድ ምንም ውጤት የለውም።
በእንደዚህ ዓይነት ትግበራ ውስጥ አማካይ የአሁኑ ፍጆታ በጣም ዝቅተኛ እንዲሆን 9 ቪ ሊቲየም ጭስ ጠቋሚ ባትሪ ለ 10 ዓመታት እንዲቆይ ሊደረግ ይችላል! ከዚህም በላይ ከእነዚህ ማሳያዎች አንዳንዶቹ ሶስት ቀለሞችን ያሳያሉ - ነጭ ፣ ጥቁር እና ቀይ (ወይም ቢጫ)። ማስጠንቀቂያ ወይም በቀይ ማስጠንቀቂያ ለማሳየት ከፈለጉ ተስማሚ።
አቅርቦቶች
ያገኘኋቸው በጣም ርካሹ የኢ-ኢንክ ማሳያዎች በ BuyDisplay ይሸጣሉ ፣ ከብዙ የኢቤይ ሻጮችም ይገኛሉ። እንደ አለመታደል ሆኖ ሰነዱ ብዙ የሚፈለጉትን ይተዋል ስለዚህ እኔ መማሪያ ለመፃፍ በራሴ ወስጃለሁ - አንብብ!
በእርስዎ መስፈርቶች እና በጀትዎ ላይ በመመስረት ፣ የተለያዩ መጠኖች ምርጫ አለዎት-
- 1.54 ኢንች (152x152 = 23 ፣ 104 ፒክሰሎች)
- 2.13 ኢንች (212x104 = 22 ፣ 048 ፒክሰሎች)
- 2.6 ኢንች (296x152 = 44 ፣ 992 ፒክሰሎች)
- 2.7 ኢንች (176x264 = 46 ፣ 464 ፒክስሎች)
- 2.9 ኢንች (296x128 = 37 ፣ 888 ፒክሰሎች)
- 4.2 ኢንች (400x300 = 120, 000 ፒክሰሎች)
- 5.83 ኢንች (640x480 = 307 ፣ 200 ፒክሰሎች)
- 7.5 ኢንች (880x528 = 464 ፣ 640 ፒክሰሎች)
(እኔ ከተመለከትኩበት ጊዜ ጀምሮ ክልሉ ተዘርግቷል ፣ ስለዚህ ይህንን በሚያነቡበት ጊዜ የበለጠ ሊሰፋ ይችላል።)
እነሱ እንደ ባለ 2-ቀለም (ጥቁር/ነጭ) ወይም 3 ቀለም (ጥቁር/ቀይ/ነጭ ወይም ጥቁር/ቢጫ/ነጭ) ይገኛሉ። ይህ አስተማሪ ቀይውን እየተጠቀሙ እንደሆነ ያስባል ፣ ግን ቢጫውን ስሪት ከመረጡ ፣ በቀላሉ “ቢጫ” ን ለ “ቀይ” ያንብቡ።
የ SPI (4-ሽቦ) ስሪት ይምረጡ። እኔ በጣም ጥሩ መጠን የሆነውን 1.54 ኢንች ሞዴሉን እጠቀም ነበር።
ደረጃ 1 ማሳያዎን በማገናኘት ላይ
እነዚህ ማሳያዎች ከ 2x4 ፒን ራስጌ ጋር ይመጣሉ። የፒን ቁጥሮች በግልጽ ተሰይመዋል ፣ ፒኖች 7 ፣ 5 ፣ 3 እና 1 (ከግራ ወደ ቀኝ) በላይኛው ረድፍ እና 8 ፣ 6 ፣ 4 ፣ 2 ከታች።
ማሳያዎ ባለ 8-መንገድ ጠጋኝ ገመድ ሊመጣ ይችላል ፣ ይህም ግንኙነቱን ቀላል ያደርገዋል። (የእኔ ጠጋኝ ገመድ 2 ቀይ ሽቦዎች እና 2 ቡናማ አለው። እነሱ ሊለዋወጡ አይችሉም!
የሚከተለው ሰንጠረዥ ለአብዛኞቹ የአርዲኖ ዓይነቶች (ዩኖ ፣ ፕሮ ሚኒ ፣ ፕሮ ማይክሮ እና ናኖን ጨምሮ) የሚዛመዱትን ግንኙነቶች ይሰጣል።
ኢ-ቀለም ሞዱል | አርዱinoኖ | ||
ፒን | ስም | ፒን | ስም |
1 | ቪዲዲ | ቪ.ሲ | 3.3/5 ቪ |
2 | ቪኤስኤስ | Gnd | Gnd |
3 | ተከታታይ ውሂብ በ | 11 | ሞሲ |
4 | ተከታታይ ሰዓት ውስጥ | 13 | ኤስ.ኬ |
5 | /ቺፕ ይምረጡ | 10 | |
6 | ውሂብ/አስተማሪ | 9 | |
7 | ዳግም አስጀምር | 8 | |
8 | መሣሪያ ተይyል | 7 |
ደረጃ 2 - የቀረበውን ሶፍትዌር ያውርዱ
በዚህ ደረጃ እንደተገለፀው የቀረበውን ሶፍትዌር መጠቀም ይችላሉ ፣ ወይም የእኔን የተሻሻለ ቤተ -መጽሐፍት በሚቀጥለው ደረጃ ግን አንድ መጠቀም ይችላሉ።
መሣሪያዎን በ BuyDisplay.com ላይ ያግኙት። ወደ ገጹ ታችኛው ክፍል የማውረድ ዚፕ ፋይልን ያገኛሉ “አርዱዲኖ ቤተ-መጽሐፍት እና ምሳሌ ለ 4-ሽቦ SPI”። በዊንዶውስ ኤክስፕሎረር ውስጥ ለማውረድ እና ለመክፈት በዚህ ላይ ጠቅ ያድርጉ።
ዊንዶውስ ኤክስፕሎረር ይህንን አንድ ነጠላ የከፍተኛ ደረጃ አቃፊ “ቤተ-መጽሐፍት-ምሳሌዎች_ER-EPM0154-1R” እንደያዘ ያሳያል። (የእርስዎ የ 1.54 ኢንች ሞዴል ካልሆነ ስሙ ትንሽ የተለየ ይሆናል።)
ይህንን የከፍተኛ ደረጃ አቃፊ ወደ አርዱዲኖ ቤተ-መጽሐፍት አቃፊዎ ይቅዱ። አቃፊውን እንደገና ለመሰየም በቀኝ ጠቅ ያድርጉ እና ከስም “ቤተ-መጽሐፍት-ምሳሌዎች_” ን ይሰርዙ።
(የአርዱዲኖ ቤተመፃህፍት አቃፊን ለማግኘት ፣ በአርዱዲኖ አይዲኢ ውስጥ ፣ ፋይልን ጠቅ ያድርጉ… ምርጫዎችን ያድርጉ እና የስዕል ደብተር ሥፍራውን ያስተውሉ። ይህንን ያድርጉ ፣ እና በአርዲኖዎ አቃፊዎች መካከል የአርዲኖን “ቤተመጽሐፍት” አቃፊ ያገኛሉ።)
ይህንን አቃፊ ይክፈቱ እና በውስጡ ያለውን “ቤተ -መጻሕፍት” አቃፊ ይክፈቱ። በዚህ አቃፊ ውስጥ ያሉትን ሁሉንም ፋይሎች ይጎትቱ እና ወደ ወላጅ አቃፊ አንድ ደረጃ (“ER-EPM0154-1R”) ይጣሉ። (አሁን ባዶ) የ “ቤተመፃሕፍት” አቃፊውን ይሰርዙ።
አሁን እንደ አርዱዲኖ ቤተ -መጽሐፍት ፋይሎቹን እና የፈተና ንድፍን ጭነዋል። ልብ ይበሉ ማሳያዎ 1.54 ኢንች ካልሆነ ፣ ብቸኛው ልዩነት በ ER-ERM*-1.h ውስጥ WIDTH እና HEIGHT ን በሚገልጹ ሁለት መስመሮች የሚመስል ይመስላል።
በአርዱዲኖ አይዲኢ ውስጥ ፋይል ላይ ጠቅ ያድርጉ… ምርመራዎች እና ማሳያዎን ከእርስዎ አርዱዲኖ ጋር እንዳገናኙ ወዲያውኑ ማጠናቀር እና ማካሄድ ለሚችሉት የማሳያ ንድፍ ወደ ER-EPM0154-1R ያሸብልሉ።
ደረጃ 3 - ማሳያውን ማስኬድ
በ Arduino IDE ውስጥ ፋይልን ጠቅ ያድርጉ… ምሳሌዎች… ER-EPM0154-1R።
በዩኤስቢ ገመድ ፣ ወይም በተለምዶ እርስዎ በሚያደርጉት መንገድ አርዱinoኖን ከኮምፒዩተርዎ ጋር ያገናኙት።
በመሳሪያዎች ስር ቦርዱን ፣ ፕሮሰሰርቱን እና ወደቡን ያዘጋጁ።
በንድፍ ስር ፣ ስቀል የሚለውን ጠቅ ያድርጉ።
ሰቀላው ከተጠናቀቀ በኋላ ትንሽ መዘግየት ይኖራል ፣ እና አሥር መዘግየቱ የመጀመሪያውን ምስል ሲስል ብዙ ጊዜ ያበራል። በማሳያው ውስጥ ሲያልፍ ይመልከቱ።
ደረጃ 4 - የተሻሻለውን ቤተ -መጽሐፍት መጠቀም
የተሻሻለውን ቤተ-መጽሐፍትዬን ከ github https://github.com/p-leriche/E-ink_ER-EPM ላይ ማውረድ ይችላሉ
N. B. የእኔ ቤተ -መጽሐፍት ከማንኛውም መጠን ተኳሃኝ ማሳያ ጋር እንደሚሠራ ከፍተኛ የመተማመን ስሜት አለኝ ፣ ግን በእውነቱ እኔ በ 1.54”ሞዴል ብቻ ሞክሬዋለሁ። የተለየን የሚጠቀሙ ከሆነ እባክዎን በመጨረሻው አስተያየቶች ውስጥ ያሳውቁኝ። የሚሰራው መሆኑን ለማረጋገጥ የዚህ አስተማሪ። ካልሆነ ግን እኔ እንድትሄዱ የተቻለኝን ሁሉ አደርጋለሁ።
የዚፕ ፋይሉን ያውርዱ እና ያስቀምጡ። በአርዱዲኖ አይዲኢ ውስጥ ንድፍን ጠቅ ያድርጉ… ቤተ -መጽሐፍትን ያካትቱ…. ZIP ቤተ -መጽሐፍትን ያክሉ እና የተቀመጠውን ዚፕ ፋይል ይምረጡ።
የእኔ ቤተ -መጽሐፍት በርካታ ጥቃቅን ማሻሻያዎችን ይ containsል ፦
- የተለያዩ የአርዱዲኖ ፒን ቁጥሮች (ከ MOSI በስተቀር) እንዲጠቀሙ ይፈቅዳል።
- ተመሳሳዩ ቤተ -መጽሐፍት በፎሪ መጠን መሣሪያ ላይ ሊያገለግል ይችላል።
- አዲስ 50% ጥላ ተሞልቶ ፣ እና ባለቀለም ሙሌት (የዘፈቀደ ፒክስሎች ስብስብ) ቀርቧል።
ቤተመፃህፍት እንደ መደበኛ አርዱinoኖ የተጨመቀ (ዚፕ) ፋይል ሆኖ ይመጣል። ወደ ውርዶች አቃፊዎ (ወይም እርስዎ በመረጡት ቦታ) ያውርዱት ፣ እና በአርዱዲኖ አይዲኢ ውስጥ ንድፍን ጠቅ ያድርጉ… ቤተ -መጽሐፍትን ያካትቱ… የዚፕ ቤተ -መጽሐፍትን ያክሉ።
በምሳሌዎች ስር ፣ አሁን ኢ-ink_ER-EPM ን ያገኛሉ። 3 ምሳሌዎች ንድፎች አሉ-
- ER_EPM154-1R- ሙከራ-የመጀመሪያው ሻጭ ያቀረበው ማሳያ
- ኢ-ink_demo: ንድፉ በቀጣዮቹ ደረጃዎች ተገንብቷል
- ኢ-ink_rotate: የምስል ማሽከርከር ማሳያ።
ደረጃ 5 - እራስዎ ፕሮግራም ማድረግ
እንደ አለመታደል ሆኖ በአቅራቢው ከቀረበው ኮድ ጋር ምንም ሰነድ የለም ፣ እንዲሁም የምሳሌ ኮዱ በበቂ ሁኔታ አስተያየት አልተሰጠም። ይህ ለመጠቀም ከሚያስፈልገው በላይ ከባድ ያደርገዋል ፣ እና የዚህ አስተማሪ ዋና ዓላማ ያንን መብት ማስቀመጥ ነው።
መሰረታዊ ፅንሰ -ሀሳቦች
አንድ አርዱዲኖ በሚገኘው ራም መጠን ውስን ስለሆነ ቤተ -መጽሐፉ በአንድ ጊዜ በማያ ገጹ ትናንሽ ክፍሎች ውስጥ እንዲስሉ ወይም እንዲጽፉ ይፈቅድልዎታል ፣ ለየመሣሪያው ውስጣዊ ማህደረ ትውስታ በግለሰብ ደረጃ ያስተዋውቋቸዋል። የሚፈልጓቸውን ሁሉንም ክፍሎች ከሰቀሉ በኋላ ብቻ በማስታወስ ውስጥ ያለውን ለማሳየት ይንገሩት።
እነዚህ የማያ ገጽ ክፍሎች “ቀለም” ዕቃዎች በመባል ይታወቃሉ። አንድ ብቻ ያስፈልግዎታል ፣ እና ለእያንዳንዱ የማያ ገጽ ክፍል ቁመቱን ፣ ስፋቱን እና ማሽከርከርዎን ይገልፃሉ። ሲጨርሱ ፣ እንዲጭኑት በማያ ገጹ ላይ ያለውን አቀማመጥ እና ጥቁር እና ነጭ ወይም ቀይ እና ነጭ መሆን አለመሆኑን በመግለፅ ይስቀሉታል።
በማያ ገጹ የላይኛው ግራ እጅ ጥግ አግድም (x) እና አቀባዊ (y) መጋጠሚያዎች (0 ፣ 0) ፣ የታችኛው ግራ (0 ፣ 151) እና ከላይ በስተቀኝ (151 ፣ 0) ነው።
መነሻነት
በአርዱዲኖ አይዲኢ ውስጥ የ E-ink_demo ንድፉን ይክፈቱ እና ቤተመፃህፍቱን እንዴት እንደሚጠቀሙበት በምገልፅበት ጊዜ ይከተሉት።
በስዕሉ አናት ላይ ሁል ጊዜ የሚያስፈልጉትን የሚከተሉትን መስመሮች ያያሉ።
#ያካተተ <SPI.h #«ER-ERM0154-1.h» # #ያካትቱ «imagedata.h» #ን ጨምሮ «epdpaint.h» #ገላጭ ቀለም 0 #ዲፊኔ ያልተሰመረ 1 Epd epd;
#ያካተቱ መስመሮች የሚፈለጉትን ቤተ -መጻሕፍት ይጎትታሉ። SPI.h መደበኛ የአርዱዲኖ ቤተ-መጽሐፍት ነው ፣ ሌሎቹ ግን የኢ-ቀለም ቤተ-መጽሐፍት አካል ናቸው።
ለ UNCOLORED (ነጭ) ፒክሰሎች እና ለ COLORED (ጥቁር ወይም ቀይ) ስሞችን እንገልፃለን። (ማስታወሻ ለወገኖቼ አውሮፓውያን - የአሜሪካ የ COLOR አጻጻፍ ጥቅም ላይ ውሏል።)
የ Epd epd; መስመሩ እኛ የምናሳየውን የኤሌክትሮኒክ የወረቀት መሣሪያን ነገር ይፈጥራል። ቅንብሩን () እና loop () ተግባሮችን ለመገኘት ይህ በስዕሉ መጀመሪያ ላይ እዚህ መሆን አለበት።
የተለየ የመጠን ማሳያ ካለዎት የኢፒዲ መስመሩን በሚከተለው መተካት ይችላሉ-
Epd epd (ስፋት ፣ ቁመት);
(ከዚህ ቀደም WIDTH እና HEIGHT ን በ #ገላጭ መግለጫዎች ውስጥ ከገለጸ)።
በተመሳሳይ ሁኔታ ነባሪ ያልሆኑ የፒን ቁጥሮችን በሚከተለው መግለፅ ይችላሉ-
Epd epd (WIDTH ፣ HEIGHT ፣ BUSY_PIN ፣ RESET_PIN ፣ DC_PIN ፣ CS_PIN) ፤
በማዋቀር () ውስጥ መሣሪያውን እንደሚከተለው ማስጀመር ያስፈልገናል-
Serial.begin (9600)
ከሆነ (epd. Init ()! = 0) {Serial.print ("e-Paper init failed"); መመለስ; }
(በእውነቱ ፣ epd. Init () ስህተትን በጭራሽ አይመልስም ፣ ግን የወደፊት ማሻሻያ የማሳያ አለመኖርን ወይም የማይሰራን ሊለይ ይችላል።)
ደረጃ 6 የጽሑፍ ጽሑፍ
በ E-ink_demo ውስጥ ፣ ትኩረትዎን ወደ loop () ያዙሩት። በመጀመሪያ ማሳያውን እናፅዳ
epd. ClearFrame ()
(የራስዎን ምስል ለማሳየት ከፈለጉ ይህ በእውነቱ አስፈላጊ አይደለም።)
ማንኛውንም ነገር ከመሳልዎ በፊት (ጽሑፍም ሆነ ግራፊክስ) ለመሳል የቀለም ነገር መፍጠር አለብን
ያልተፈረመ የቻር ምስል [1024]
የቀለም ቀለም (ምስል ፣ 152 ፣ 18); // ስፋት የ 8 ብዜት መሆን አለበት
ይህ የተወሰነ ቦታ (1024 ባይት) ይይዛል እና በሁለተኛው መስመር ለተቋረጠው ለቅብ ነገር ይመድባል። ይህ እንደ 152 ፒክሰሎች ስፋት እና 18 ፒክሰሎች ጥልቀት በጊዜያዊነት ተዋቅሯል። እንደአስፈላጊነቱ እንደገና ጥቅም ላይ እንዲውል እንደገና ልናዋቅረው እንችላለን ፣ ግን ልብ ይበሉ -ስፋቱ 8 ፒክሰሎች በአንድ ባይት ስለሚከማቹ እና ባይት መከፋፈል ስለማንችል ስፋቱ 8 ቁራጭ መሆን አለበት። (በእውነቱ አስፈላጊ ከሆነ ያጠናቅቀዋል ፣ ግን ማሳያዎ እንዴት መሆን እንዳለበት በማይታይበት ጊዜ ግራ ሊጋባ ይችላል።
አሁን የቀለም ንጥሉን ወደ ያልተቀየረ (ነጭ) ማጽዳት አለብን ፣ ከዚያ በአቀማመጥ (x ፣ y) = (22 ፣ 2) ባለ 16-ፒክሰል ከፍተኛ ቅርጸ-ቁምፊ በመጠቀም “ኢ-ink Demo” ን እንጽፋለን ፣ እና COLORED (በ ያልተቀየረ ዳራ።
ቀለም። ግልጽ (ያልተቀየረ)
paint. DrawStringAt (12 ፣ 2 ፣ “e-paper Demo” ፣ & Font16 ፣ COLORED);
አስተባባሪዎቹ (22 ፣ 2) የሕብረቁምፊው የመጀመሪያ ገጸ-ባህሪ የላይኛው ግራ ጥግ መሆናቸውን ያስተውሉ ፣ እና 22 ፒክሰሎች ወደ ውስጥ እና 2 ፒክሰሎች ወደ ታች ከቀለም እቃው የላይኛው ግራ እጅ ጥግ ጋር ፣ አጠቃላይ ማሳያ ሳይሆን. ጽሑፍ ከቀለም እቃው አናት ላይ ቢያንስ አንድ ፒክሰል ወደ ታች የተሻለ ይመስላል።
የሚከተሉት ቅርጸ -ቁምፊዎች ይገኛሉ
ቅርጸ -ቁምፊ 8 - 5x8 ፒክሰሎች ፎንት 12 - 7x12 ፒክሰሎች 16
አሁን የቀለም እቃውን (“ቀለም”) ወደ መሣሪያው (“ኤፒዲ”) መላክ አለብን-
epd. SetPartialWindowBlack (paint. GetImage () ፣ 0 ፣ 3 ፣ paint. GetWidth () ፣ paint. GetHeight ());
SetPartialWindowBlack ምስሉን እና የስዕሉን ስፋት እና ጥልቀት ባህሪያትን በመጠቀም ለኤፒዲ ነገር የምንተገበርበት ዘዴ ነው። ይህንን ምስል ለመሣሪያው በ (x, y) = (0, 3) ላይ እንዲጽፍ እየነገርነው ነው። እና እኛ COLORED ፒክሰሎች ጥቁር እንዲሆኑ እያልን ነው።
ያ በጣም ከባድ አልነበረም ፣ አይደል? ሌላ እንሞክር።
ቀለም ግልጽ (ባለቀለም);
paint. DrawStringAt (20 ፣ 2 ፣ “(በቀለም ላይ ነጭ)” ፣ & Font12 ፣ UNCOLORED); epd. SetPartialWindowRed (paint. GetImage () ፣ 0 ፣ 24 ፣ paint. GetWidth () ፣ paint. GetHeight ());
ተመሳሳዩን የቀለም ነገር ፣ እና ተመሳሳይ ስፋቱን እና ቁመቱን እንደገና እንጠቀማለን ፣ ግን በዚህ ጊዜ ፣ ለ COLORED ን እናጸዳ እና ያልተለወጠ ሕብረቁምፊ እንጽፍለት። እና ለለውጥ ፣ ባለ COLORED ፒክሰሎች ቀይ እናደርጋለን እና (0 ፣ 24) ላይ ባለው መሣሪያ ላይ ፣ ከመጀመሪያው በታች።
ሁለቱን የቀለም ዕቃዎች ለመሣሪያው ማህደረ ትውስታ ጽፈናል ፣ ግን እንዲያሳያቸው ገና አልነገርነውም። ይህንን በሚከተለው መግለጫ እናደርጋለን-
epd. DisplayFrame ();
(በ E-ink_demo ረቂቅ ውስጥ አንዳንድ ተጨማሪ ነገሮችን ከሳልን በኋላ ይህንን እስከ መጨረሻው እንተወዋለን ፣ ግን ከፈለጉ ከፈለጉ እዚህ ማስገባት ይችላሉ ፣ ማይቤ መዘግየትን ተከትሎ (10000) ፤ የእጅ ሥራዎን ለማድነቅ ጊዜ ለመስጠት።
ደረጃ 7 - መስመሮችን እና አራት ማዕዘኖችን መሳል
መስመሮችን እና አራት ማዕዘኖችን እንዴት መሳል እንደሚቻል እንመልከት። ተመሳሳዩን የቀለም ነገር እንጠቀማለን ፣ ግን እንደ 40 ፒክሰሎች ስፋት እና 36 ፒክሰሎች ቁመት እንደገና ማዋቀር አለብን። እኛ UNCOLORED ን እናጸዳዋለን።
የቀለም መጠን ስፋት (40);
ቀለም። SetHeight (36); paint. Clear (ያልተቀየረ);
ልክ እንደተለመደው ከቀለም እቃው ጋር ሲነፃፀር ከላይ (በግራ) ጥግ (5 ፣ 3) እና ከታች በስተቀኝ (35 ፣ 33) ጋር (ባለ COLORED) አራት ማእዘን እንሳሉ። እንዲሁም ዲያግራሞቹን ከ (5 ፣ 3) እስከ (35 ፣ 33) እና ከ (35 ፣ 3) እስከ (5 ፣ 33) ድረስ መስመሮችን እንሳሉበታለን። በመጨረሻም ፣ ሙሉውን የቀለም ነገር (ቀይ) በማያ ገጹ ላይ (32 ፣ 42) ላይ እንጽፋለን።
// ከፍተኛ ረድፍ
// የሬክታንግ ቀለም ቅልጥፍና (ያልተቀየረ); ቀለም። ቀለም. DrawLine (35 ፣ 3 ፣ 5 ፣ 33 ፣ ባለቀለም); epd. SetPartialWindowRed (paint. GetImage () ፣ 32 ፣ 42 ፣ paint. GetWidth () ፣ paint. GetHeight ());
ቤተ -መጽሐፍት ፣ እንደመጣ ፣ የተሞላ አራት ማእዘን ሰጥቶ ነበር ፣ ግን ሄይ ፣ እኔ አንድ ጥላን ስለፈለግኩ ፣ አዲስ ዘዴ ጨመርኩ። ሁለት ተጨማሪ አራት ማዕዘኖችን እንሠራለን ፣ አንዱ ጥላ እና አንድ ተሞልቶ ፣ ጥቁር እና ቀይ በመቀያየር ከመጀመሪያው በስተቀኝ በኩል እናስቀምጣቸዋለን።
// የተጠለፈ የሬክታንግ ቀለም. ቀለም. DrawShadedRektangle (5, 3, 35, 33); epd. SetPartialWindowBlack (paint. GetImage () ፣ 72 ፣ 42 ፣ paint. GetWidth () ፣ paint. GetHeight ()); // የተሞላው የሬክታንግል ቀለም ግልጽነት (ያልተቀየረ); ቀለም። DrarawFilledRektangle (5 ፣ 3 ፣ 35 ፣ 33 ፣ ባለቀለም); epd. SetPartialWindowRed (paint. GetImage () ፣ 112 ፣ 42 ፣ paint. GetWidth () ፣ paint. GetHeight ());
ደረጃ 8 - ክበቦችን መሳል
ክበቦች ለመሳል እንዲሁ ቀላል ናቸው። በሁለት ማዕዘኖች መጋጠሚያዎች ፋንታ የማዕከሉን እና ራዲየሱን መጋጠሚያዎች ቅድመ ጥንቃቄ ማድረግ አለብን። የቀለምን ነገር እናጸዳለን ከዚያም (20 ፣ 15) (ከቀለም እቃው አንፃር) እና ራዲየስ 15 ላይ ክበብ እናስቀምጣለን እና ለተሸፈነ እና ለተሞላ ክበብ ይድገሙት።
// ሁለተኛ ረድፍ
// የክበብ ቀለም። ግልጽ (ያልተቀየረ); ቀለም. DrawCircle (20 ፣ 18 ፣ 15 ፣ ባለቀለም); epd. SetPartialWindowBlack (paint. GetImage () ፣ 32 ፣ 78 ፣ paint. GetWidth () ፣ paint. GetHeight ()); // የታሸገ ክበብ ቀለም። ግልጽ (ያልተቀየረ); ቀለም. DrawShadedCircle (20, 18, 15); epd. SetPartialWindowRed (paint. GetImage () ፣ 72 ፣ 78 ፣ paint. GetWidth () ፣ paint. GetHeight ()); // የተሞላው የክበብ ቀለም ግልጽ (ያልተቀየረ); ቀለም። DrarawFilledCircle (20 ፣ 18 ፣ 15 ፣ ቀለም); epd. SetPartialWindowBlack (paint. GetImage () ፣ 112 ፣ 78 ፣ paint. GetWidth () ፣ paint. GetHeight ());
ደረጃ 9: በቀለማት ያሸበረቀ የመጫወቻ ሜዳ ላይ ያልተቀየረ
እዚህ ዝነኛ እየሆንን ነው! ስለዚህ ጥቅልል ላይ ሳለን ፣ ከዚህ በታች ባለው ረድፍ ላይ 3 ተጨማሪ ክበቦችን እናድርግ ፣ በዚህ ጊዜ በሁለተኛው የጽሑፍ መስመር እንዳደረግነው ባለቀለም ቀለም ነገር ላይ አልተቀየረም።
// ሦስተኛ ረድፍ
// የክበብ ቀለም። ግልጽ (ባለቀለም); ቀለም. DrawCircle (20 ፣ 18 ፣ 15 ፣ ያልተቀየረ); epd. SetPartialWindowRed (paint. GetImage () ፣ 32 ፣ 114 ፣ paint. GetWidth () ፣ paint. GetHeight ()); // የታሸገ ክበብ ቀለም። ግልፅ (ባለቀለም) ቀለም። epd. SetPartialWindowBlack (paint. GetImage () ፣ 72 ፣ 114 ፣ paint. GetWidth () ፣ paint. GetHeight ()); // የተሞላው የክበብ ቀለም ግልፅ (ባለቀለም); paint. DrawFilledCircle (20 ፣ 18 ፣ 15 ፣ ያልተቀየረ); epd. SetPartialWindowRed (paint. GetImage () ፣ 112 ፣ 114 ፣ paint. GetWidth () ፣ paint. GetHeight ());
ከተሸፈነው ሙሌት በተጨማሪ እንዲሁ በዘፈቀደ ፒክሰሎችን የሚቀባ ነጠብጣብ ነጠብጣብ አለ። ስለዚህ ከላይ ካለው ጥላ ክበብ ይልቅ እኛ ልናስቀምጠው እንችላለን
ቀለም. DrawSpeckledCircle (20, 18, 15, 25);
የመጨረሻው ግቤት (25) ጥግግት ነው ፣ ማለትም ቀለም ያላቸው የፒክሴሎች መቶኛ። ከተተወ 50% ይገመታል።
እንዲሁም ድፍረቱን የሚገልጽ አማራጭ ተጨማሪ ልኬት ያለው DrawSpeckledRectangle አለ።
ደረጃ 10: ማሽከርከር
እኛ መሳል የምንችለውን ማንኛውንም ነገር በ 90 ፣ በ 180 ወይም በ 270 ዲግሪዎች ማሽከርከር እንችላለን። (ማዞሪያዎችን በሰዓት አቅጣጫ እንቆጥራለን።)
የ ROTATE ንብረትን ለቀለም ነገር ማመልከት እንችላለን ፣ ግን የሚሽከረከረው የቀለም እቃ አለመሆኑን ነገር ግን የፃፉለት ሁሉ መሆኑን መረዳት አስፈላጊ ነው። ስለዚህ አቀባዊ ጽሑፍ ከፈለጉ የእርስዎን ቀለም ነገር በአግድም ሳይሆን በአቀባዊ አቅጣጫ ረጅም እና ቀጭን አድርጎ ማዋቀር ያስፈልግዎታል።
ስለዚህ ጽሑፍዎ ከላይ ወደ ታች (ከግራ ወደ ቀኝ) እንዲነበብ በሰዓት አቅጣጫ በ 90 ዲግሪ እንዲሽከረከር ከፈለጉ ፣ ለሚጽፉት ለማንኛውም ዓላማ የቀለም ሥዕሉ የላይኛው ቀኝ ጥግ (0 ፣ 0) ይሆናል። ወይም በውስጡ ይሳሉ ፣ ከዚያ x ጥግ ወደ ታች ፣ እና y ከዚያ ጥግ ወደ ግራ።
ከማሳያው ግራ እጅ በታች አንድ ቦታ እንደለቀቅን አስተውለው ይሆናል። ስለዚህ እዚያ አንድ ጽሑፍ እንፃፍ 270 ዲግሪዎች ፣ ማለትም ከታች ወደ ላይ ማንበብ። ይህ (0 ፣ 0) በታችኛው ግራ ጥግ ላይ ያስቀምጣል።
ምንም እንኳን የቀለም ነገርን ቢዞሩ ፣ ፒክሴሎች በላዩ ላይ ሲስሉ ማዞሪያው ብቻ ተግባራዊ ይሆናል። ወደ መሣሪያው ለመጻፍ ሲመጡ አሁንም ለ SetPartialWindow መስጠት ያለብዎት የላይኛው ግራ እጅ ጥግ መጋጠሚያዎች ናቸው።
ስለዚህ እንደገና ለመገመት ፣ የእኛን የቀለም ነገር ስፋት 32 እና ቁመት 110 እንዲኖረው እናዋቅረው ፣ እና የ ROTATE_270 ንብረት እንሰጠዋለን። ማንኛውንም ነገር ከመፃፋችን ወይም ከመሳልዎ በፊት ይህንን ሁሉ ማድረግ አለብን ማለት አይደለም።
የቀለም መጠን ስፋት (32);
ቀለም. SetHeight (110); paint. SetRotate (ROTATE_270);
እኛ ለ COLORED እናጸዳለን እና ያልተቀላቀለ ሕብረቁምፊ እንጽፋለን ፣ ከዚያ በ (0 ፣ 42) ላይ እናስቀምጠዋለን። (ያኛው የግራ እጅ ጥግ ነው ፣ ያስታውሱ። በእሱ ውስጥ ስለማንኛውም የፒክሴሎች ሽክርክሪት ይርሱ።)
ቀለም ግልጽ (ባለቀለም); paint. DrawStringAt (8 ፣ 8 ፣ “ወደ ጎን!” ፣ & Font16 ፣ UNCOLORED); epd. SetPartialWindowBlack (paint. GetImage () ፣ 0 ፣ 42 ፣ paint. GetWidth () ፣ paint. GetHeight ());
በመጨረሻም ፣ እኛ የሰጠነውን ሁሉንም ፒክሰሎች እንዲያሳይ ለመሣሪያው መንገር አለብን። እና ለተወሰነ ጊዜ እሱን ለመለወጥ ካልፈለግን እና የባትሪ ኃይልን ለመቆጠብ ከፈለግን እናደርገዋለን ፣ እና አርዱዲኖን እንዲሁ እንዲተኛ አናደርግም ፣ ሌላ ለመውሰድ እና ለማሳየት ጊዜው ሲደርስ ከእንቅልፋችን እንዲነቃ ለማድረግ። መለኪያ.
epd. DisplayFrame ();
epd እንቅልፍ ();
ሁለተኛው ምሳሌ ንድፍ በ 90 ፣ በ 180 እና በ 270 ዲግሪዎች መዞርን ያሳያል። እስከ አሁን ድረስ እሱን መከተል መቻል አለብዎት።
ደረጃ 11 Bitmaps ን መሳል
የአቅራቢው ማሳያ ሁለት የ bitmap ምስሎችን ማሳያ ያካትታል። ሊወርድ የሚችል መሣሪያ በመጠቀም እነዚህ ለመፍጠር ቀላል ናቸው
www.buydisplay.com/image2lcd
እሱ የሚመጣው የ.exe ጭነት ፋይል እና የፍቃድ ቁልፍ የያዘ የጽሑፍ ፋይል እንደ ዚፕ ፋይል ነው። አስፋው ከዚያ እሱን ለመጫን በ.exe ፋይል ላይ ሁለቴ ጠቅ ያድርጉ።
በግልጽ ለማየት እንደሚቻለው ፣ ኢ-ቀለም ፒክስሎች ማብራት ወይም ማጥፋት ብቻ ስለሆኑ ግራጫ ደረጃዎችን ሊወክል ስለማይችል በሚያሳዩት ላይ በጣም ከባድ ገደቦች አሉ። ግን አራት ማዕዘን ቅርፅ ያለው የቀለም ነገር በምስል ላይ መደራረብ ይቻላል። ምናልባት እንደ ፈሳሽ ደረጃ ያለ ነገርን የሚያመለክት ተለዋዋጭ ጽሑፍን ወይም ግራፊክስን እንደ ባር ወይም የፓይ ገበታ የመሳሰሉትን በላዩ ላይ በሚያርፉበት ቅርጸ -ቁምፊ ውስጥ አርማ ፣ ምልክቶች ወይም ቋሚ ጽሑፍ ማሳየት ይፈልጉ ይሆናል።
በሚያውቁት በማንኛውም የስዕል ሶፍትዌር ላይ ምስልዎን መፍጠር ይችላሉ ፣ ወይም በስዕል ወይም በስዕል ውስጥ መቃኘት ይችላሉ ፣ ግን በማንኛውም ሁኔታ ወደ 2 ደረጃዎች ብቻ መቀነስ መቻል አለብዎት። እንደ.gif ፣-j.webp
Image2Lcd ን ያስጀምሩ። ከታች በኩል የመመዝገቢያ ትርን ያያሉ። በዚህ ላይ ጠቅ ያድርጉ እና ባወረዱት ዚፕ ፋይል ውስጥ በጽሑፍ ፋይል የመጣውን የምዝገባ ኮድ ያስገቡ። ይህ በምስሉ ላይ ተደራቢን ያስወግዳል።
በ Image2Lcd ውስጥ የምስል ፋይልዎን ይክፈቱ። በግራ እጅ ፓነል ውስጥ ፣ ያለዎት መሆኑን ያረጋግጡ
- የውጤት ፋይል ዓይነት - C ድርድር
- የቅኝት ሁኔታ: አግድም ቅኝት
- BitsPixel: ሞኖክሮም
- ማክስ ስፋት እና ቁመት - የማሳያዎ መጠን ፣ እና
- የጭንቅላት መረጃን ማጣራት አለበት።
ለማስኬድ ከማክስ ስፋት እና ቁመት ቀጥሎ ያለውን ቁልፍ ጠቅ ያድርጉ። የሂደቱ ውጤት ይታያል። ምርጡን ውጤት ለማግኘት የብሩህነት እና የንፅፅር ተንሸራታቾችን ማስተካከል ሊኖርብዎት ይችላል።
ከብርሃን ተንሸራታች በላይ ያለውን የተገላቢጦሽ ቀለም አመልካች ሳጥኑን ጠቅ ያድርጉ ፣ በሆነ ምክንያት አስፈላጊ የሆነውን አሉታዊ ምስል በማድረግ ፣ ከዚያ የአርዲኖ ንድፍዎን በያዘው አቃፊ ውስጥ እንደ imagedata.cpp ለማስቀመጥ አስቀምጥን ጠቅ ያድርጉ። በሚቀጥለው ጊዜ ንድፉን በአርዱዲኖ አይዲኢ ሲከፍቱ እንደ አዲስ ትር አድርገው ማየት አለብዎት።
ደረጃ 12 ፦ የእርስዎን Bitmap በማሳየት ላይ
በአርዱዲኖ ንድፍዎ ዋና ፋይል ውስጥ ወዲያውኑ ከላይ ያሉትን #ያካትቱ መስመሮችን ይከተሉ ፣ ያስገቡ
#imagedata.h ን ያካትቱ
አዲስ ትር ይፍጠሩ (በትሮች መስመር መጨረሻ ላይ ያለውን የታች ቀስት ጠቅ ያድርጉ) እና imagedata.h ብለው ይደውሉ። በውስጡ የሚከተሉትን 2 መስመሮች ያስገቡ
extern const ያልተፈረመ ቻር IMAGE_BLACK ;
extern const ያልተፈረመ ቻር IMAGE_RED ;
በእርስዎ imagedata.cpp ፋይል ውስጥ ፣ የመጀመሪያው መስመር በ ይጀምራል
const ያልተፈረመ char gImage_image [2888] = {
(የ 1.54”ማሳያውን ካልተጠቀሙ በካሬ ቅንፎች ውስጥ ያለው ቁጥር የተለየ ይሆናል።) ይህንን በ ይተኩ
const ያልተፈረመ ቻር IMAGE_BLACK PROGMEM = {
ይህ ለጥቁር እና ነጭ ምስል ነው። ቀይ እና ነጭ እንዲሆን ከፈለጉ ወደ እሱ ይለውጡት
const ያልተፈረመ ቻር IMAGE_RED PROGMEM = {
ልክ ከዚህ መስመር በፊት ፣ ያክሉ
#ያካትቱ
#imagedata.h ን ያካትቱ
አሁን ምስልዎን ለማሳየት ዝግጁ ነዎት። በዋና ፋይልዎ ውስጥ በ loop () ውስጥ ፣ ያክሉ
epd. ClearFrame ();
epd. DisplayFrame (IMAGE_BLACK ፣ NULL);
ወይም ፣ እርስዎ የፈጠሩት ቀይ ምስል ከሆነ ፣ ሁለተኛው መስመር መሆን አለበት
epd. DisplayFrame (NULL ፣ IMAGE_RED);
በእውነቱ ቀይ እና ጥቁር ክፍሎችን በተናጥል ከ Image2Lcd በመቀየር እና ሁለቱንም በማሳየት ጥምር ቀይ እና ጥቁር ምስል መፍጠር ይችላሉ
epd. DisplayFrame (IMAGE_BLACK ፣ IMAGE_RED);
ሆኖም ፣ በጥቁር እና በነጭ ምስል ውስጥ ሁለቱም እንደ ጥቁር ፣ እና በቀይ እና በነጭ ቀይ ውስጥ የተገለጹ ማናቸውም ፒክሰሎች ቀይ ሆነው ይወጣሉ።
በመጨረሻም ፣ ቀደም ሲል በተማርነው በማንኛውም የጽሑፍ ወይም የግራፊክስ ተግባራት ምስልዎን መደራረብ ይችላሉ። የትዊተር እጀታዬን ማከል ስለፈለግኩ ጨመርኩ
የቀለም ቀለም (ምስል ፣ 20 ፣ 152); // ስፋት የ 8 ብዜት መሆን አለበት
paint. SetRotate (ROTATE_270); paint. Clear (ያልተቀየረ); paint. DrawStringAt (20 ፣ 2 ፣ “@pleriche” ፣ & Font16 ፣ COLORED); epd. SetPartialWindowRed (paint. GetImage () ፣ 0 ፣ 0 ፣ paint. GetWidth () ፣ paint. GetHeight ()); epd. SetPartialWindowRed (paint. GetImage () ፣ 0 ፣ 0 ፣ paint. GetWidth () ፣ paint. GetHeight ()); epd. DisplayFrame ();
የሚመከር:
ለደስታዎችዎ የብረት መቆለፊያ እንዴት እንደሚታከሉ -8 ደረጃዎች
ለደስታዎችዎ የብረት መቆለፊያ እንዴት እንደሚታከሉ - ይህንን ፕሮጀክት ለመስራት ይህንን ምርት እጠቀም ነበር https://www.amazon.es/dp/B07Q34BL8P?ref=ppx_pop_mo… ነገር ግን እርስዎ ሊገዙት የሚችሏቸው እና ብዙ ሌሎች ምርቶች አሉ ለመላኪያ ዋጋዎች በሚኖሩበት ቦታ ላይ በመመስረት ወይም ርካሽ ሊሆን አይችልም። በዚህ መመሪያ ውስጥ እኔ
ወደ Arduino የውጭ ቤተ -መጽሐፍት እንዴት እንደሚታከሉ -3 ደረጃዎች
ወደ አርዱዲኖ የውጭ ቤተ -መጽሐፍትን እንዴት ማከል እንደሚቻል -ቤተ -መጽሐፍት ለሠራነው ንድፍ ተጨማሪ ተግባሮችን ይሰጣል። እነዚህ ተግባራት ረቂቆችን ቀለል ለማድረግ ይረዳሉ። እኛ ልንጠቀምባቸው የምንችላቸው ብዙ ቤተ -መጻሕፍት አሉ። በአንድ ሰው ወይም በማህበረሰብ የተፈጠረ የአርዲኖ አይዲኢ ነባሪ ቤተ -መጽሐፍት ወይም ውጫዊ ቤተ -መጽሐፍት። በዚህ
ለፕሮጀክትዎ ምርጥ የአርዲኖ ቦርዶች - 14 ደረጃዎች
ለፕሮጀክትዎ ምርጥ የአርዲኖ ቦርዶች - *እባክዎን ከዚህ በፊት ለማድረግ አስፈላጊ ጊዜ ስላልነበረኝ ይህንን የአርዱዲኖ ውድድር የመጨረሻ መስመር (እባክዎን ድምጽ ይስጡኝ!) . አሁን ከ 8 ሰዓት ጀምሮ ትምህርት ቤት አለኝ። እስከ ምሽቱ 5 ሰዓት ድረስ አስር ያድርጉ
አርዱዲኖ እና TFT ማሳያ በመጠቀም እውነተኛ ሰዓት እንዴት እንደሚሠራ - አርዱዲኖ ሜጋ RTC ከ 3.5 ኢንች TFT ማሳያ ጋር - 4 ደረጃዎች
አርዱዲኖ እና TFT ማሳያ በመጠቀም እውነተኛ ሰዓት እንዴት እንደሚሠራ | አርዱዲኖ ሜጋ RTC ከ 3.5 ኢንች TFT ማሳያ ጋር- የእኔን የ Youtube ሰርጥ ይጎብኙ። መግቢያ-- በዚህ ልጥፍ 3.5 ኢንች TFT ን ንኪኪ LCD ን ፣ አርዱዲኖ ሜጋን በመጠቀም “የእውነተኛ ሰዓት ሰዓት” እሠራለሁ። 2560 እና DS3231 RTC ሞዱል…. ከመጀመሩ በፊት… ቪዲዮውን ከዩቲዩብ ጣቢያዬ ይፈትሹ። ማስታወሻ- አርዱይን የሚጠቀሙ ከሆነ
ለፕሮጀክትዎ ዋጋ ይስጡ - የግራፊክ ማሳያ ይጠቀሙ !: 14 ደረጃዎች
ለፕሮጀክትዎ ዋጋ ይስጡ-የግራፊክ ማሳያ ይጠቀሙ !: ዛሬ በቪዲዮችን ውስጥ የ 1.8 ኢንች TFT ማሳያ ላሳይዎት ነው። ይህ ባለ 128 በ 160 ግራፊክ ማሳያ ነው። በ ESP32 LoRa ውስጥ ከሚመጣው ይበልጣል ፣ እንዲሁም በባህላዊው ESP32 ውስጥ አጠቃቀሙን አሳይሻለሁ። ከዚያ ስብሰባውን እና ግብዣውን እንኖራለን