
Orodha ya maudhui:
2025 Mwandishi: John Day | [email protected]. Mwisho uliobadilishwa: 2025-01-23 15:11


MPL3115A2 inaajiri sensa ya shinikizo la MEMS na kiolesura cha I2C ili kutoa data sahihi ya Shinikizo / Urefu na Joto. Matokeo ya sensa ni digitized na azimio kubwa 24-bit ADC. Usindikaji wa ndani huondoa kazi za fidia kutoka kwa mfumo wa mwenyeji wa MCU. Inauwezo wa kugundua mabadiliko katika 0.05 kPa tu ambayo ni sawa na mabadiliko ya 0.3m kwa urefu. Hapa kuna maonyesho yake na Arduino Nano.
Hatua ya 1: Unachohitaji.. !

1. Arduino Nano
2. MPL3115A2
3. I²C Cable
4. I²C Shield kwa Arduino Nano
Hatua ya 2: Miunganisho:




Chukua ngao ya I2C kwa Arduino Nano na usukume kwa upole juu ya pini za Nano.
Kisha unganisha mwisho mmoja wa kebo ya I2C kwa sensorer ya MPL3115A2 na mwisho mwingine kwenye ngao ya I2C.
Uunganisho umeonyeshwa kwenye picha hapo juu.
Hatua ya 3: Nambari:

Nambari ya arduino ya MPL3115A2 inaweza kupakuliwa kutoka kwa duka yetu ya github-Duka la DCUBE.
Hapa kuna kiunga cha hiyo hiyo:
github.com/DcubeTechVentures/MPL3115A2/blob/master/Arduino/MPL3115A2.ino
Tunajumuisha Wire.h kuwezesha mawasiliano ya I2c ya sensa na bodi ya Arduino.
Unaweza pia kunakili nambari kutoka hapa, imepewa kama ifuatavyo:
// Imesambazwa na leseni ya hiari.
// Itumie kwa njia yoyote unayotaka, faida au bure, mradi inafaa katika leseni za kazi zake zinazohusiana.
// MPL3115A2
// Nambari hii imeundwa kufanya kazi na Moduli ya MPL3115A2_I2CS I2C Mini
# pamoja
// Anwani ya MPL3115A2 I2C ni 0x60 (96)
#fafanua Addr 0x60
kuanzisha batili ()
{
// Anzisha mawasiliano ya I2C
Wire.begin ();
// Awali Mawasiliano ya Siri, weka kiwango cha baud = 9600
Kuanzia Serial (9600);
// Anzisha usambazaji wa I2C
Uwasilishaji wa waya (Addr);
// Chagua rejista ya kudhibiti
Andika waya (0x26);
// Hali inayotumika, OSR = 128, hali ya altimeter
Andika waya (0xB9);
// Acha usambazaji wa I2C
Uwasilishaji wa waya ();
// Anzisha usambazaji wa I2C
Uwasilishaji wa waya (Addr);
// Chagua rejista ya usanidi wa data
Andika waya (0x13);
// Tukio tayari la data limewezeshwa kwa urefu, shinikizo, joto
Andika waya (0x07);
// Acha usambazaji wa I2C
Uwasilishaji wa waya ();
kuchelewesha (300);
}
kitanzi batili ()
{
data isiyoingia [6];
// Anzisha usambazaji wa I2C
Uwasilishaji wa waya (Addr);
// Chagua rejista ya kudhibiti
Andika waya (0x26);
// Hali inayotumika, OSR = 128, hali ya altimeter
Andika waya (0xB9);
// Acha usambazaji wa I2C
Uwasilishaji wa waya ();
kuchelewesha (1000);
// Anzisha usambazaji wa I2C
Uwasilishaji wa waya (Addr);
// Chagua rejista ya data
Andika waya (0x00);
// Acha usambazaji wa I2C
Uwasilishaji wa waya ();
// Omba ka 6 za data
Ombi la Wire. Toka (Addr, 6);
// Soma ka 6 za data kutoka kwa anwani 0x00 (00)
// hadhi, tHeight msb1, tHeight msb, tHeight lsb, temp msb, temp lsb
ikiwa (Waya haipatikani () == 6)
{
data [0] = Wire.read ();
data [1] = soma kwa waya ();
data [2] = soma kwa waya ();
data [3] = soma kwa waya ();
data [4] = soma kwa waya ();
data [5] = soma kwa waya ();
}
// Badilisha data iwe 20-bits
int tHeight = (((ndefu) (data [1] * (ndefu) 65536) + (data [2] * 256) + (data [3] & 0xF0)) / 16);
int temp = ((data [4] * 256) + (data [5] & 0xF0)) / 16;
urefu wa kuelea = tUrefu / 16.0;
kuelea cTemp = (temp / 16.0);
kuelea fTemp = cTemp * 1.8 + 32;
// Anzisha usambazaji wa I2C
Uwasilishaji wa waya (Addr);
// Chagua rejista ya kudhibiti
Andika waya (0x26);
// Hali inayotumika, OSR = 128, hali ya barometer
Andika waya (0x39);
// Acha usambazaji wa I2C
Uwasilishaji wa waya ();
kuchelewesha (1000);
// Anzisha usambazaji wa I2C
Uwasilishaji wa waya (Addr);
// Chagua rejista ya data
Andika waya (0x00);
// Acha usambazaji wa I2C
Uwasilishaji wa waya ();
// Omba ka 4 za data
Ombi la Wire. Toka (Addr, 4);
// Soma ka 4 za data
// hadhi, pres msb1, pres msb, pres lsb
ikiwa (Waya haipatikani () == 4)
{
data [0] = Wire.read ();
data [1] = soma kwa waya ();
data [2] = soma kwa waya ();
data [3] = soma kwa waya ();
}
// Badilisha data iwe 20-bits
muda mrefu pres = ((((muda mrefu) data [1] * (ndefu) 65536) + (data [2] * 256) + (data [3] & 0xF0)) / 16;
shinikizo la kuelea = (pres / 4.0) / 1000.0;
// data ya Pato kwa mfuatiliaji wa serial
Serial.print ("Urefu:");
Serial.print (urefu);
Serial.println ("m");
Serial.print ("Shinikizo:");
Serial.print (shinikizo);
Serial.println ("kPa");
Serial.print ("Joto katika Celsius:");
Serial.print (cTemp);
Serial.println ("C");
Serial.print ("Joto katika Fahrenheit:");
Serial.print (fTemp);
Serial.println ("F");
kuchelewesha (500);
}
Hatua ya 4: Maombi:
Matumizi anuwai ya MPL3115A2 ni pamoja na Altimetry ya Usahihi wa Juu, Simu za Mkononi / Kompyuta Kibao, Upimaji wa Elektroniki za kibinafsi n.k. Inaweza pia kuingizwa katika Uhesabuji wa Wafu wa GPS, Uboreshaji wa GPS kwa Huduma za Dharura, Msaada wa Ramani, Urambazaji pamoja na Vifaa vya Kituo cha Hali ya Hewa.
Ilipendekeza:
Arduino Nano - TSL45315 Mafunzo ya sensa ya Mwanga iliyoko: Hatua 4

Arduino Nano - TSL45315 Mafunzo ya sensa ya Mwanga iliyoko: TSL45315 ni sensa ya nuru iliyoko kwenye dijiti. Inakadiri majibu ya macho ya mwanadamu chini ya hali anuwai ya taa. Vifaa vina nyakati tatu za ujumuishaji na hutoa pato la moja kwa moja la 16-bit kupitia kiolesura cha basi cha I2C. Ushirikiano wa kifaa
Altimeter (mita ya urefu) Kulingana na Shinikizo la Anga: Hatua 7 (na Picha)

Altimeter (mita ya urefu) Kulingana na Shinikizo la Anga: [Hariri]; Tazama toleo la 2 katika hatua ya 6 na pembejeo la urefu wa msingi wa mikono. Hii ni maelezo ya jengo la Altimeter (Meta ya urefu) kulingana na Arduino Nano na sensorer ya shinikizo la anga la Bosch BMP180. Ubunifu ni rahisi lakini vipimo
Arduino Nano - BH1715 Mafunzo ya sensa ya Nuru iliyoko Dijitali: Hatua 4

Arduino Nano - BH1715 Digital Ambient Light Sensor Tutorial: BH1715 ni sensa ya Mwanga iliyoko kwenye dijiti na kiolesura cha basi cha I²C. BH1715 kawaida hutumiwa kupata data ya taa iliyoko kwa kurekebisha umeme wa taa ya LCD na Keypad kwa vifaa vya rununu. Kifaa hiki kinatoa azimio la 16-bit na kiambatisho
Chembe Photon - BH1715 Mafunzo ya sensa ya Nuru iliyoko Dijitali: Hatua 4

Chembe Photon - BH1715 Mafunzo ya sensa ya Mwangaza ya Dijiti: BH1715 ni sensorer ya Nuru iliyoko kwenye dijiti na kiolesura cha basi cha I²C. BH1715 kawaida hutumiwa kupata data ya taa iliyoko kwa kurekebisha umeme wa taa ya LCD na Keypad kwa vifaa vya rununu. Kifaa hiki kinatoa azimio la 16-bit na kiambatisho
Mafunzo ya sensa ya alama ya kidole ya Arduino: Hatua 6 (na Picha)

Mafunzo ya sensa ya alama ya kidole ya Arduino: Marafiki wapendwa karibu kwenye mafunzo mengine! Leo tutaunda mradi wa kuvutia wa Arduino ambao unatumia moduli ya sensorer ya vidole. Bila ucheleweshaji wowote zaidi, wacha & rsquo ianze! Siku zote nilitaka kujaribu moduli ya kitambuzi cha kidole katika