ዝርዝር ሁኔታ:

MCP9803 ን እና Arduino Nano ን በመጠቀም የሙቀት መጠን መለካት - 4 ደረጃዎች
MCP9803 ን እና Arduino Nano ን በመጠቀም የሙቀት መጠን መለካት - 4 ደረጃዎች

ቪዲዮ: MCP9803 ን እና Arduino Nano ን በመጠቀም የሙቀት መጠን መለካት - 4 ደረጃዎች

ቪዲዮ: MCP9803 ን እና Arduino Nano ን በመጠቀም የሙቀት መጠን መለካት - 4 ደረጃዎች
ቪዲዮ: BeagleBone Black MCP9803 Temperature Sensor 'C' code Tutorial 2024, ሀምሌ
Anonim
Image
Image

MCP9803 ባለ 2-ሽቦ ከፍተኛ ትክክለኛ የሙቀት መጠን ዳሳሽ ነው። እነሱ የሙቀት ዳሳሽ ትግበራዎችን የሚያመቻቹ በተጠቃሚ-በፕሮግራም መመዝገቢያዎች ተካትተዋል። ይህ ዳሳሽ ለከፍተኛ የተራቀቀ ባለ ብዙ ዞን የሙቀት መቆጣጠሪያ ስርዓት ተስማሚ ነው።

በዚህ መማሪያ ውስጥ የ MCP9803 ዳሳሽ ሞዱል ከአርዱዲኖ ናኖ ጋር መገናኘቱ ተብራርቷል። የሙቀት እሴቶችን ለማንበብ አርዱዲኖን ከ I2c አስማሚ ጋር ተጠቀምን ።ይህ I2C አስማሚ ከአነፍናፊ ሞዱል ጋር ግንኙነቱን ቀላል እና የበለጠ አስተማማኝ ያደርገዋል።

ደረጃ 1 ሃርድዌር ያስፈልጋል

ሃርድዌር ያስፈልጋል
ሃርድዌር ያስፈልጋል
ሃርድዌር ያስፈልጋል
ሃርድዌር ያስፈልጋል
ሃርድዌር ያስፈልጋል
ሃርድዌር ያስፈልጋል

ግባችንን ለማሳካት የሚያስፈልጉን ቁሳቁሶች የሚከተሉትን የሃርድዌር ክፍሎች ያካትታሉ።

1. MCP9803

2. አርዱዲኖ ናኖ

3. I2C ኬብል

4. I2C ጋሻ ለአርዱዲኖ ናኖ

ደረጃ 2 የሃርድዌር ማያያዣ;

የሃርድዌር ግንኙነት
የሃርድዌር ግንኙነት
የሃርድዌር ግንኙነት
የሃርድዌር ግንኙነት

የሃርድዌር ማያያዣ ክፍል በመሠረቱ በአነፍናፊው እና በአሩዲኖ ናኖ መካከል የሚፈለጉትን የሽቦ ግንኙነቶች ያብራራል። ለተፈለገው ውጤት በማንኛውም ስርዓት ላይ ሲሰሩ ትክክለኛ ግንኙነቶችን ማረጋገጥ መሠረታዊ አስፈላጊነት ነው። ስለዚህ አስፈላጊዎቹ ግንኙነቶች እንደሚከተለው ናቸው

MCP9803 ከ I2C በላይ ይሠራል። እያንዳንዱን የአነፍናፊ በይነገጽ እንዴት ሽቦ ማገናኘት እንደሚቻል የሚያሳይ የምስል ሽቦ ንድፍ ምሳሌ እዚህ አለ።

ከሳጥን ውጭ ፣ ቦርዱ ለ I2C በይነገጽ የተዋቀረ ነው ፣ ስለሆነም እርስዎ ሌላ የማይታወቁ ከሆኑ ይህንን መንጠቆ እንዲጠቀሙ እንመክራለን።

የሚያስፈልግዎት አራት ሽቦዎች ብቻ ናቸው! Vcc ፣ Gnd ፣ SCL እና SDA ፒኖች የሚያስፈልጉት አራት ግንኙነቶች ብቻ ናቸው እና እነዚህ በ I2C ገመድ እገዛ ተገናኝተዋል።

እነዚህ ግንኙነቶች ከላይ ባሉት ሥዕሎች ውስጥ ይታያሉ።

ደረጃ 3 - የሙቀት መጠን መለኪያ ኮድ

የሙቀት መጠን መለኪያ ኮድ
የሙቀት መጠን መለኪያ ኮድ

አሁን በአሩዲኖ ኮድ እንጀምር።

ከአርዲኖው ጋር የአነፍናፊ ሞጁሉን በሚጠቀሙበት ጊዜ የ Wire.h ቤተ -መጽሐፍትን እንጨምራለን። “ሽቦ” ቤተ -መጽሐፍት በአነፍናፊው እና በአርዲኖ ቦርድ መካከል ያለውን የ i2c ግንኙነት የሚያመቻቹ ተግባሮችን ይ containsል።

ጠቅላላው የአሩዲኖ ኮድ ለተጠቃሚው ምቾት ከዚህ በታች ተሰጥቷል-

#ያካትቱ

// MCP9803 I2C አድራሻ 0x48 (72) ነው

#ገላጭ አድራጊ 0x48

ባዶነት ማዋቀር ()

{

// የ I2C ግንኙነትን እንደ ማስተር ማስጀመር

Wire.begin ();

// የመጀመርያ ደረጃ ተከታታይ ግንኙነት ፣ የባውድ መጠን = 9600 ያዘጋጁ

Serial.begin (9600);

// I2C ማስተላለፍን ይጀምሩ

Wire.begin ማስተላለፊያ (Addr);

// የውቅረት ምዝገባን ይምረጡ

Wire.write (0x01);

// የማያቋርጥ የመቀየሪያ ሁኔታ ፣ የኃይል-ነባሪ

Wire.write (0x60);

// I2C ማስተላለፍን ያቁሙ

Wire.endTransmission ();

መዘግየት (300);

}

ባዶነት loop ()

{

ያልተፈረመ int ውሂብ [2];

// I2C ግንኙነትን ይጀምራል

Wire.begin ማስተላለፊያ (Addr);

// የውሂብ መመዝገቢያ ይምረጡ

Wire.write (0x00);

// I2C ስርጭትን ያቁሙ

Wire.endTransmission ();

// 2 ባይት ውሂብን ይጠይቁ

Wire.requestFrom (Addr, 2);

// 2 ባይት ውሂብ ያንብቡ

// temp msb ፣ temp lsb

ከሆነ (Wire.available () == 2)

{

ውሂብ [0] = Wire.read ();

ውሂብ [1] = Wire.read ();

}

// ውሂቡን ወደ 12-ቢት ይለውጡ

int temp = ((ውሂብ [0] * 256) + ውሂብ [1]) / 16.0;

ከሆነ (ሙቀት> 2047)

{

ሙቀት -= 4096;

}

ተንሳፋፊ cTemp = temp * 0.0625;

ተንሳፋፊ fTemp = cTemp * 1.8 + 32;

// የውጤት መረጃን ወደ ተከታታይ ማሳያ

Serial.print ("የሙቀት መጠን በሴልሲየስ");

Serial.print (cTemp);

Serial.println ("C");

Serial.print ("ፋራናይት ውስጥ ያለው ሙቀት:");

Serial.print (fTemp);

Serial.println ("F");

መዘግየት (500);

}

በሽቦ ቤተ -መጽሐፍት ውስጥ Wire.write () እና Wire.read () ትዕዛዞቹን ለመፃፍ እና የአነፍናፊውን ውጤት ለማንበብ ያገለግላሉ።

Serial.print () እና Serial.println () በአርዲኖ አይዲኢ ተከታታይ ሞኒተር ላይ የአነፍናፊውን ውጤት ለማሳየት ያገለግላል።

የአነፍናፊው ውጤት ከላይ በስዕሉ ላይ ይታያል።

ደረጃ 4: ማመልከቻዎች

ማመልከቻዎች
ማመልከቻዎች

MCP9803 የግል ኮምፒተርን እና ተጓዳኞችን ፣ ሃርድ ድራይቭን ፣ የተለያዩ የመዝናኛ ስርዓቶችን ፣ የቢሮ ስርዓቶችን እና የውሂብ ግንኙነት ስርዓቶችን በሚያካትቱ ሰፊ የመሣሪያ መድረኮች ውስጥ ሊቀጠር ይችላል። ይህ ዳሳሽ በተለያዩ የተራቀቁ ስርዓቶች ውስጥ ሊካተት ይችላል።

የሚመከር: