ዝርዝር ሁኔታ:

ዴስክቶፕ ኦርጋኒክ ከኤልሲዲ ጋር: 4 ደረጃዎች
ዴስክቶፕ ኦርጋኒክ ከኤልሲዲ ጋር: 4 ደረጃዎች

ቪዲዮ: ዴስክቶፕ ኦርጋኒክ ከኤልሲዲ ጋር: 4 ደረጃዎች

ቪዲዮ: ዴስክቶፕ ኦርጋኒክ ከኤልሲዲ ጋር: 4 ደረጃዎች
ቪዲዮ: ጥሩ ነገሮችን እንዴት መሳብ እንደሚቻል. ኦዲዮ መጽሐፍ 2024, ሀምሌ
Anonim
Image
Image

** አርትዖት እየተደረገበት ነው **

ለኤችኬዩ አርዱዲኖ ፕሮጀክት የእርስዎን ፖሜትር በሚዞሩበት ጊዜ እርስዎን ለማንሳት የመነሳሳት ጥቅሶችን የሚያሳዩ የ LCD ማያ ገጽን የሚያሳይ የዴስክቶፕ ኦርጅናሌ ለማድረግ ወሰንኩ!

አርዱዲኖን እና ኤልሲዲዎን በግል ተፈላጊነት በማንኛውም መልኩ ሊወስድ የሚችል እንደ የእንጨት ሳጥን ያለ ነገር እስከተገኘ ድረስ አብዛኛውን ጊዜ የአርዲኖ ቴክኒካዊ ነገሮችን እሸፍናለሁ።

የሚያስፈልጉዎት ነገሮች

  • *አርዱዲኖ አንድ
  • ድስት ሜትር
  • *የወንድ ፕሮቲፕ ሽቦዎች
  • *ኤልሲዲ ሞዱል! በ SD ካርድ አንባቢ! (አርዱዲኖ tft ኤልሲዲ አግኝቻለሁ)
  • *የማይክሮ ኤስዲ ካርድ
  • *እንጨት (የድሮ ሚኒ መሳቢያዎችን እንደገና ጥቅም ላይ አዋልኩ እና አንዳንድ መለዋወጫ የእንጨት ክፍሎችን እጠቀማለሁ ፣ አርዱዲኖን ለመደበቅ ቢያንስ ትንሽ ሳጥን መመስረትዎን ያረጋግጡ!

ደረጃ 1 - በአርዲኖ ላይ የ Potmeter ን ማቀናበር

በአርዱዲኖ ላይ የፔትሜትር መለኪያ ማዘጋጀት
በአርዱዲኖ ላይ የፔትሜትር መለኪያ ማዘጋጀት

በስዕሉ ላይ እንደሚታየው የሸክላ ቆጣሪዎን ያገናኙ

የሸክላ ቆጣሪውን ሥራ ለመጀመር

ከማዋቀሩ በፊት በስዕልዎ አናት ላይ አንዳንድ ተለዋዋጮችን መጀመር ያስፈልግዎታል-

ኮድ

const int analogInPin = A0; // ፖታቲሞሜትር የተጣበቀበት የአናሎግ ግብዓት ፒን

int sensorValue = 0; // እሴት ከድስት ተነበበ int outputValue = 0; // እሴት ወደ PWM (የአናሎግ መውጫ)

በስዕል 2 ውስጥ የ potmeter ባዶ በሆነ ሉፕ ውስጥ እንዴት እንደተቀረፀ አሳያለሁ

ኮድ

// አናሎግን በእሴት ያንብቡ-

sensorValue = analogRead (analogInPin); // ወደ የአናሎግ መውጫው ክልል ካርታ ያድርጉት - ውፅዓት እሴት = ካርታ (ዳሳሽ እሴት ፣ 0 ፣ 1023 ፣ 0 ፣ 255)። ሕብረቁምፊ stuffToPrint = ሕብረቁምፊ (outputValue); // የአናሎግ መውጫውን እሴት ይለውጡ

stuffToPrint.toCharArray (ህትመት ፣ 9); // የማይንቀሳቀስ ጽሑፍ myScreen.setTextSize (1);

Serial.print ("ዳሳሽ ="); Serial.print (sensorValue); Serial.print ("\ t output ="); Serial.println (outputValue);

መዘግየት (50);

ይህ የአናሎግ ውሂቡን ከድስትሜትር ወደ ከ 0 እስከ 255 ባለው ክልል ውስጥ ያሳያል ፣ የእኛን ኤልሲዲ ተንሸራታች ትዕይንት ለመቆጣጠር ይህንን ክልል እንጠቀማለን።

የ potmeter ለማቀናበር እርዳታ ከፈለጉ; እኔ ከዚህ አጋዥ አጋዥ ስልጠና ኮዱን ተጠቀምኩ ፣ ፒኖቹ በትክክል አንድ ናቸው እና በሚቀጥሉት ደረጃዎች ከ LCD ቅንብር ጋር ይሰራሉ።

www.toptechboy.com/arduino/lesson-11-arduin…

ደረጃ 2 ኤልሲዲውን ማቀናበር

ኤልሲዲውን በማዋቀር ላይ
ኤልሲዲውን በማዋቀር ላይ

ከላይ ባለው ምሳሌ ውስጥ ያሉትን መሰኪያዎች ያዘጋጁ።

በትክክል ከተሰራ ማያዎ ነጭ ሆኖ ያበራል።

ተጨማሪ እገዛ ከፈለጉ ወይም ማሳያዎን ለመፈተሽ አንዳንድ የምሳሌ ኮድ ለመጠቀም ከፈለጉ ለዚህ ሞጁል ኦፊሴላዊ አጋዥ ስልጠናውን ማየት ይችላሉ እና የኮድ ምሳሌዎች እዚህ

በሚቀጥለው ደረጃ “የምስል ምስል ከ SD ካርድ” በከፊል እንጠቀማለን።

ደረጃ 3: የተንሸራታች ትዕይንት ማዘጋጀት

የተንሸራታች ትዕይንት ማዘጋጀት
የተንሸራታች ትዕይንት ማዘጋጀት

አሁን እኛ የ Potmeter እና LCD ቅንብር አለን ፣ የ potmeter ካርታ እሴቶችን በመጠቀም “ተንሸራታች ትዕይንት” ማዘጋጀት እንችላለን።

ከ 0 እስከ 255 ያለውን ክልል በመጠቀም አርዲኖኖን በኤልሲዲ ላይ አንዳንድ ይዘትን ለማሳየት የምናነሳበትን የተወሰነ ክልል ማመልከት እንችላለን።

በምሳሌው ላይ እንደሚታየው የመጀመሪያው ምሳሌ

ከሆነ (outputValue <51) {// ክልል አንድ ከሆነ (rangeOne == true) {rangeTwo = true; myScreen.setRotation (90); myScreen.background (0, 0, 0); myScreen.stroke (255 ፣ 255 ፣ 255) ፤ myScreen.text (“እንኳን ደህና መጣህ ፣” ፣ 10 ፣ 50); myScreen.text ("ፒኑን> ወደ" ፣ 10 ፣ 60 አሽከርክር) ፤ myScreen.text (“ማበረታቻን ያግኙ” ፣ 10 ፣ 70); rangeOne = ሐሰት;

ፖቲሜትር ከ 51 በታች ወደሆነ ክልል ከተለወጠ ፣ ማያ ገጹ ከማሳያ (በቁመት ሞድ = rotatio 90) የተወሰነ ጽሑፍ።

ምስል ለማሳየት መቻል የእርስዎ ኤስ ኤስ ኤስ ፒን ፒን በትክክል መገለጹን ያረጋግጡ ፣ ወይም አርዱዲኖ ኤስዲውን ማስጀመር አይሳነውም (ስለዚህ ሽቦዎችዎን መፈተሽዎን ያረጋግጡ !!)

የእርስዎን ኤልሲዲ ፒኖች ለመፈተሽ ከፈለጉ “ማያ ገጹን በማገናኘት” ላይ ወደሚገኘው ኦፊሴላዊ መመሪያ ማመልከት ይችላሉ

ለምሳሌ ፣ የእኔን ኤስ ኤስ ኤስ ፒን ፒን አሁን 4 አድርጌዋለሁ ፣ ምክንያቱም ሽቦዎቼን ስለደባለቅኩ! - ያንን “ትንሽ ማስጀመር” ስህተት ለማጋራት ድሩን ለመፈለግ ብዙ ጊዜ ስለሚቆጥብዎት ደስ ብሎኛል። በአንዳንድ መድረኮች ላይ ጥገናው የተወሰነ የ SD ካርድ ሞዴል መኖር ነው ተብሏል። ስለዚህ አዲስ የ SD ካርዶችን ከመግዛትዎ በፊት መጀመሪያ ሽቦዎን ይፈትሹ !!

ደረጃ 4 - ሙሉ ኮድ ምሳሌ

#ያካትቱ

#ያካትቱ // በሃርድዌር-ተኮር ቤተ-መጽሐፍት #ያካትቱ

#ዲዲኤን ኤስዲሲሲኤስ 4 #ገላጭ CS 10 #ዲፊን ዲሲ 9 #ገላጭ ዳግም ማስጀመር 8

const int analogInPin = A0; // ፖታቲሞሜትር የተጣበቀበት የአናሎግ ግብዓት ፒን

int sensorValue = 0; // እሴት ከድስት ውስጥ ተነበበ int outputValue = 0; // የእሴት ውፅዓት ወደ PWM (ከአናሎግ ውጭ) bool rangeOne = true; bool rangeTwo = እውነት; bool rangeThree = እውነት; bool rangeFour = እውነት; bool rangeFive = እውነት;

TFT myScreen = TFT (CS ፣ DC ፣ RESET) ፤

የምስል ምስል; const charto printout [9];

ባዶነት ማዋቀር () {Serial.begin (9600); myScreen.begin (); // የ SD ካርዱን ለመድረስ ይሞክሩ Serial.print ("የ SD ካርድን ማስጀመር …"); ከሆነ (! SD.begin (SD_CS)) {Serial.println ("አልተሳካም!"); መመለስ; } Serial.println («እሺ!»);

// የ GLCD ማያ ገጹን ማስጀመር እና ማጽዳት myScreen.begin (); myScreen.background (255, 255, 255);

} ባዶነት loop () {// የአናሎግውን እሴት ያንብቡ - sensorValue = analogRead (analogInPin); // ወደ የአናሎግ መውጫው ክልል ካርታ ያድርጉት - ውፅዓት እሴት = ካርታ (ዳሳሽ እሴት ፣ 0 ፣ 1023 ፣ 0 ፣ 255)። ሕብረቁምፊ stuffToPrint = ሕብረቁምፊ (outputValue); // የአናሎግ መውጫውን እሴት ይለውጡ

stuffToPrint.toCharArray (ህትመት ፣ 9); // የማይንቀሳቀስ ጽሑፍ myScreen.setTextSize (1);

Serial.print ("ዳሳሽ ="); Serial.print (sensorValue); Serial.print ("\ t output ="); Serial.println (outputValue);

መዘግየት (50);

ከሆነ (ውፅዓት እሴት ወደ "፣ 10 ፣ 60) ፤ myScreen.text (" ማበረታቻ ያግኙ። "፣ 10 ፣ 70) ፤ rangeOne = ሐሰት; /ክልል አራት ከሆነ (rangeFour == true) {rangeThree = true; rangeFive = true; myScreen.setRotation (90); myScreen.background (255, 255, 255) ፤ // የማያ ገጹን ምስል = myScreen.loadImage ("quote2.bmp "); // ምስሉን በማያ ገጽ ላይ ይፃፉ myScreen.image (ምስል ፣ 0 ፣ 0);; myScreen.text ("ከእርስዎ!" ፣ 10 ፣ 60) ፤ ክልል አራት = ሐሰት ፤}}

ከሆነ (outputValue> 206 && outputValue

የሚመከር: