ዝርዝር ሁኔታ:

XinaBox ን በመጠቀም ቀን ፣ ሰዓት እና የሙቀት ማሳያ 8 ደረጃዎች
XinaBox ን በመጠቀም ቀን ፣ ሰዓት እና የሙቀት ማሳያ 8 ደረጃዎች

ቪዲዮ: XinaBox ን በመጠቀም ቀን ፣ ሰዓት እና የሙቀት ማሳያ 8 ደረጃዎች

ቪዲዮ: XinaBox ን በመጠቀም ቀን ፣ ሰዓት እና የሙቀት ማሳያ 8 ደረጃዎች
ቪዲዮ: Minecraft Migration is Ending, Accounts Will Be Deleted! 2024, ህዳር
Anonim
XinaBox ን በመጠቀም ቀን ፣ ሰዓት እና የሙቀት ማሳያ
XinaBox ን በመጠቀም ቀን ፣ ሰዓት እና የሙቀት ማሳያ

በ ESP8266 ላይ የተመሠረተ Xinabox xChips ን በመጠቀም በሴልሲየስ እና ፋራናይት ውስጥ ቀኑን ፣ ሰዓቱን እና ሙቀቱን የሚያሳይ አሪፍ OLED ማሳያ።

ደረጃ 1 በዚህ ፕሮጀክት ውስጥ ያገለገሉ ነገሮች

የሃርድዌር ክፍሎች

  • XinaBox IP01 x 1 xChip USB Programmer በ FT232R መሠረት ከ FTDI Limited
  • XinaBox CW01 x 1 xChip Wi-Fi ኮር በ ESP8266 Wi-Fi ሞዱል ላይ የተመሠረተ
  • XinaBox SW01 x 1 xChip የሙቀት መጠን ፣ እርጥበት እና የከባቢ አየር ግፊት ዳሳሽ ከቦሽ በ BME280 ላይ የተመሠረተ።
  • XinaBox OD01 x 1 xChip 128x64 Pixel OLED ማሳያ
  • XinaBox PU01 x 1 xChip USB (ዓይነት ሀ) የኃይል አቅርቦት
  • XinaBox XC10 x 1 xChip አውቶቡሶች አገናኞች
  • 5V የዩኤስቢ የኃይል አቅርቦት x 1

የሶፍትዌር መተግበሪያዎች እና የመስመር ላይ አገልግሎቶች

አርዱዲኖ አይዲኢ

ደረጃ 2 - ታሪክ

መግቢያ

I2C የአውቶቡስ ፕሮቶኮልን የሚጠቀም XinaBox xChips ን በመጠቀም ቀኑን ፣ UCT ጊዜውን እና የሙቀት መጠኑን ለማሳየት ይህንን ፕሮጀክት ገንብቻለሁ። ጊዜው ከ google NTP አገልጋይ ተሰርስሯል። የአከባቢው ሙቀት የሚለካው SW01 xChip ን በመጠቀም በሴልሺየስ እና ፋራናይት ውስጥ በ OD01 xChip OLED ማሳያ ላይ ነበር። ከታች ያለው ምስል የ OLED ማሳያ ያሳያል።

ምስል
ምስል

OLED ማሳያ ቀን ፣ ሰዓት እና የሙቀት መጠን

ደረጃ 3 አስፈላጊ ፋይሎችን ያውርዱ

ለዚህ ፕሮጀክት የሚከተሉትን ቤተመፃህፍት እና ሶፍትዌር ያስፈልግዎታል።

  • አርዱዲኖ አይዲኢ - ኮድ የሚይዙበት የልማት ሶፍትዌር
  • xSW01 - የሙቀት ዳሳሽ ቤተ -መጽሐፍት
  • xCore - ለ XinaBox xChips ኮር ቤተ -መጽሐፍት
  • xOD01 - OLED ማሳያ ቤተ -መጽሐፍት።
  • የሰዓት ሰቅ - የሰዓት ሰቅዎን ለመምረጥ ቤተ -መጽሐፍት
  • ጊዜ - የጊዜ ተግባሮችን ለመጠቀም
  • NTPClient - ከአገልጋይ ጊዜ እንዲያገኙ ያስችልዎታል
  • እንዲሁም ሰሌዳውን ለመጫን የ ESP8266 ቦርዱን ማውረድ እና ከእሱ ጋር አብሮ የሚገኘውን መመሪያ መከተል ያስፈልግዎታል

አንዴ ከወረዱ በኋላ አይዲኢውን እና ቤተ -መጽሐፍቱን ይጭናሉ። መመሪያዎቹን ከተከተሉ በቀጥታ ወደ ፊት ቀጥ ያለ ነው።

ደረጃ 4: ይሰብስቡ

ፕሮግራሙን የሚያስፈጽም እና የሚያስኬድ የእርስዎ ዋና xChip CW01 ነው። እሱ በ ESP8266 WiFi ሞዱል ላይ የተመሠረተ እና የ I2C አውቶቡስ ፕሮቶኮልን ይጠቀማል። ለ CW01 ፕሮግራም ለማድረግ ፣ የፕሮግራም xChip ያስፈልግዎታል። IP01 XC10 የአውቶቡስ ማገናኛዎችን በመጠቀም ሁለቱን xChips በአንድ ላይ ጠቅ በማድረግ ወደ ዩኤስቢ ወደብ በማስገባት በቀላሉ CW01 ን በኮምፒውተራችን ላይ በዩኤስቢ ወደብ በኩል ፕሮግራም እንድናደርግ ያስችለናል። ምንም ሽቦ እና ብየዳ አያስፈልግም። ልብ ሊባል የሚገባው ነገር የ xChip መለያ ስሞች አቅጣጫ ነው። ሁሉም በአንድ አቅጣጫ ሊመሩ ይገባል። አሁን የሚከተለው ቅንብር ሊኖርዎት ይገባል።

ምስል
ምስል

CW01 እና IP01 ን አንድ ላይ ጠቅ ያድርጉ እና በኮምፒተርዎ ላይ ባለው የዩኤስቢ ወደብ ውስጥ ያስገቡት

ከ xChips ጋር የሚያውቁ ከሆኑ ለፕሮጀክትዎ ሊጠቀሙባቸው የሚፈልጓቸውን የ XC10 አውቶቡስ ማገናኛዎችን በመጠቀም እያንዳንዱን xChip አንድ ላይ ማገናኘት እና ከዚያ ወደ ዩኤስቢ ወደብ ውስጥ ማስገባት ይችላሉ። እኛ SW01 የሙቀት ዳሳሽ እና የ OD01 OLED ማሳያ እንጠቀማለን።

ምስል
ምስል

ሁሉንም ቺፖችዎን አንድ ላይ ማገናኘት እና ከዚያ በዩኤስቢ ወደብዎ ውስጥ ማስገባት ይችላሉ

ደረጃ 5 - ፕሮግራም

ከዚህ በታች ያለውን ኮድ ወደ አርዱዲኖ አይዲኢ ያውርዱ ወይም ይቅዱ እና ይለጥፉት። በኮዱ ላይ ምንም ለውጦችን ካላደረጉ ከዚህ በታች እንደሚታየው በቀላሉ የ WiFi ዝርዝሮቻቸውን በየራሳቸው መስኮች ያስገቡ። እንዲሁም አስተማማኝ የ NTP ጊዜ አገልጋይ ያስገቡ። ለዚህ ፕሮጀክት የ Google ሰዓት አገልጋይ ተጠቅሜያለሁ።

ምስል
ምስል

የ WiFi ዝርዝሮች እና የ NTP ጊዜ አገልጋይ

አሁን ያጠናቅሩ እና ይስቀሉ። በአርዱዲኖ አይዲኢ ውስጥ በመሳሪያዎች ምናሌ ስር ትክክለኛውን የ COM ወደብ እና ሰሌዳ መምረጥዎን ያረጋግጡ። ከተሰቀሉ በኋላ ሰዓቱ ፣ ቀኑ እና ሙቀቱ ከዚህ በታች መታየት አለባቸው።

ምስል
ምስል

ከሰቀሉ በኋላ የሚከተሉትን ማየት አለብዎት

ደረጃ 6: ተንቀሳቃሽ ያድርጉት

አሁን ክፍሉን ከዩኤስቢ ወደብዎ ማስወገድ እና እያንዳንዱን xChip በቀላሉ በመለያየት ሊለዩት ይችላሉ። ፕሮግራሙ ስለ ተጠናቀቀ ፣ IP01 ከአሁን በኋላ አያስፈልግም። የመታወቂያ ስሞች ሁሉም በአንድ አቅጣጫ እስከተያዙ ድረስ አሁን ፕሮጀክትዎን በሚፈልጉት መንገድ ማገናኘት ይችላሉ። ክፍላችንን ለማብራት PU01 ን እንጠቀማለን። ይህ ከተለመደው የኃይል ባንክ ወይም ከማንኛውም 5V ዩኤስቢ የኃይል አቅርቦት እንድናስችል ያስችለናል። ከዚህ በታች እንደሚታየው የእኔን አገናኝቻለሁ።

ምስል
ምስል

የመጨረሻ ስብሰባ። xChips በፈለጉት መንገድ ሊገናኙ ይችላሉ።

ደረጃ 7 መደምደሚያ

ይህ ፕሮጀክት ለማጠናቀቅ 20 ደቂቃ ይወስዳል። ጊዜዎን በአከባቢዎ ከፈለጉ ፣ በ Timezone ቤተ -መጽሐፍት ውስጥ የምሳሌ ኮዱን ለመመልከት ያስቡ ወይም ከዩቲሲ ጊዜ ጋር አንዳንድ ስሌት ያድርጉ። ምንም ሽቦዎች ጥቅም ላይ አልዋሉም እና ብየዳ አያስፈልግም።

ደረጃ 8 ኮድ

Date_Time_Temp.ino Arduino በቀላሉ በየራሳቸው መስኮች የ WiFi መረጃዎን ያስገቡ እና ወደ ሰሌዳዎ ይስቀሉ።

#ያካትቱ // ለ XinaBox xCHIPS ዋና ቤተ -መጽሐፍትን ያካትቱ

#አካትት / ያካተተ የ OLED ማሳያ ቤተ -መጽሐፍት #ያካትቱ // የሙቀት መጠን ዳሳሽ ቤተ -መጽሐፍትን ያካትቱ #ያካትቱ // ESP8266WiFi ተግባራዊነትን ያካተተ #ጨምሮ / የጊዜ ቤተ -ፍርግሞችን ያካትቱ #ያካትቱ #ያካትቱ #ያካትቱ // የ NTP ንብረቶችን #ይግለጹ ntpOffset 60 * 60 // በሰከንዶች ውስጥ #በደቂቃ ntpInterval 60 * 1000 // በሚሊሰከንዶች ውስጥ // በድርብ ጥቅሶች መካከል አስተማማኝ የ ntp ጊዜ አገልጋይ ያስገቡ // እዚህ እኔ የ google ntp ጊዜ አገልጋይ ተጠቅሜአለሁ # ntpAddress “time1.google.com” ን ይግለጹ / // የ NTP UDP ደንበኛ WiFiUDP ntpUDP ን ያዋቅሩ ፤ NTPClient timeClient (ntpUDP ፣ ntpAddress ፣ ntpOffset ፣ ntpInterval); // የሙቀት ተለዋዋጭ ተንሳፋፊ tempC; // ሴልሺየስ ተንሳፋፊ tempF; // fahrenheit // የእርስዎ የ wifi ዝርዝሮች const char* wifi_ssid = "XinaBox"; // የእርስዎ wifi ssid const char* wifi_pass = "RapidIoT"; // የእርስዎ wifi ይለፍ ቃል // ቀን እና ሰዓት ተለዋዋጭ የሕብረቁምፊ ቀን; ሕብረቁምፊ clktime; // ተለዋዋጮች ቀናት እና ወራት const char * ቀናት = {"እሁድ" ፣ "ሰኞ" ፣ "ማክሰኞ" ፣ "ረቡዕ" ፣ "ሐሙስ" ፣ "አርብ" ፣ "ቅዳሜ"}; const char * ወራት = {"ጃን" ፣ "ፌብ" ፣ "ማር" ፣ "ኤፕሪ" ፣ "ሜይ" ፣ "ሰኔ" ፣ "ሐምሌ" ፣ "ነሐሴ" ፣ "መስከረም" ፣ "ኦክቶ" ፣ "ህዳር "፣" ዲሴ "}; const char * ampm = {"AM", "PM"}; ባዶነት ማዋቀር () {tempC = tempF = 0; // የሙቀት መጠንን ወደ ዜሮ ጊዜ ያስጀምሩClient.begin (); // የ NTP UDP ደንበኛን ይጀምሩ/ ተከታታይ ግንኙነትን ይጀምሩ Serial.begin (115200); // የ i2c ግንኙነትን ይጀምሩ እና ካስማዎችን ያዘጋጁ Wire.begin (2 ፣ 14); // የሙቀት ዳሳሽ SW01. ጀምር (); // የ OLED ማሳያ OLED.begin () ይጀምሩ ፣ // ግልጽ OLED ማሳያ OD01.clear (); // የ wifi ግንኙነት መመስረት wifi_connect (); መዘግየት (1000); } ባዶነት loop () {// የ WiFi ግንኙነት ከተመሰረተ (WiFi.status () == WL_CONNECTED) {SW01.poll (); // የሙቀት መጠንን ያንብቡ = SW01.getTempC (); // የሙቀት መጠን በሴልሲየስ tempF = SW01.getTempF (); // መደብር የሙቀት መጠን በ fahrenheit ቀን = ""; // ግልጽ የቀን ተለዋዋጭ clktime = ""; // ግልጽ የጊዜ ተለዋዋጭ/ // የ ntp ደንበኛውን ያዘምኑ እና የዩኒክስ utc timestamp timeClient.update () ያግኙ ፤ ያልተፈረመ ረጅም ዘመን / ጊዜ = timeClient.getEpochTime (); // የተቀበለውን የጊዜ ማህተም ወደ time_t ነገር time_t utc ይለውጡ ፤ utc = epochTime; // utc ጊዜ TimeChangeRule utcRule = {"UTC" ፣ የመጨረሻው ፣ ፀሐይ ፣ ማር ፣ 1 ፣ 0}; የሰዓት ሰቅ UTC (utcRule ፣ utcRule); // ቅርጸት የጊዜ ተለዋዋጮች ቀን += ቀናት [የሳምንቱ ቀን (utc) - 1]; ቀን += ","; ቀን += ወሮች [ወር (utc) - 1]; ቀን += ""; ቀን += ቀን (utc); ቀን += ","; ቀን += ዓመት (utc); // ጊዜውን በ 12 ሰዓት ቅርጸት በ AM/PM እና ያለ ሰከንዶች clktime += hourFormat12 (utc); clktime += ":"; ከሆነ (ደቂቃ (utc)

የሚመከር: