U ovom uputstvu dizajnirat ćemo barometarski sustav za mjerenje tlaka pomoću BMP180 i ARDUINO. Prije svega za povezivanje BMP180 s ARDUINO, moramo preuzeti knjižnicu posebno dizajniranu za BMP180. Ova je knjižnica dostupna na: https://github.com/adafruit/Adafruit-BMP085-Library Nakon pričvršćivanja te biblioteke možemo pozvati posebne funkcije koje će olakšati rad sa senzorom BMP180.
Komponente potrebne
Hardver: Arduino uno ploča, priključne igle, otpor 220Ω, BMP180 barometarski senzor tlaka, LCD 16x2, ploča za kruh.
Softver: Arduino svake noći
Kružni dijagram i radno objašnjenje
Nakon poziva za zaglavlje ne trebamo brinuti zbog uspostavljanja komunikacije između Arduino Uno i BMP180 senzora. Jednostavno možemo pozvati posebne funkcije koje će to učiniti umjesto nas. Trebamo samo inicijalizirati LCD zaslon i na njemu prikazati pozvane vrijednosti iz SENZORA.
Na LCD zaslonu 16x2 postoji 16 pinova ako postoji pozadinsko svjetlo, a ako nema pozadinskog svjetla, bit će ukupno 14 pinova. Može se napajati ili ostaviti igle stražnjeg svjetla. Sada u 14 pinova postoji 8 podatkovnih pinova (7-14 ili D0-D7), 2 pina za napajanje (1 i 2 ili VSS & VDD ili GND & + 5v), treći pinski za kontrolu kontrasta (VEE - kontrolira koliko debeli znakovi trebaju biti prikazano) i 3 upravljačka zatiča (RS & RW & E).
U krugu možete primijetiti da sam uzeo samo dvije upravljačke igle, kontrastni bit i READ / WRITE se ne koriste često, tako da se mogu kratko spojiti na masu. Ovo LCD postavlja u najveći kontrast i način čitanja. Samo trebamo kontrolirati ENABLE i RS igle da bi u skladu s tim slali znakove i podatke.
Priključci koji se rade za LCD prikazani su u nastavku:
PIN1 ili VSS na masu
PIN2 ili VDD ili VCC do + 5v snage
PIN3 ili VEE na zemlju (daje maksimalni kontrast najbolji za početnike)
PIN4 ili RS (Registriraj odabir) na PIN8 ARDUINO UNO
PIN5 ili RW (čitanje / pisanje) na masu (stavlja LCD u način čitanja olakšava komunikaciju za korisnika)
PIN6 ili E (Omogući) doPIN9 od ARDUINO UNO
PIN11 ili D4 do PIN10 ARDUINO UNO
PIN12 ili D5 do PIN11 ARDUINO UNO
PIN13 ili D6 do PIN12 ARDUINO UNO
PIN14 ili D7 do PIN13 ARDUINO UNO
ARDUINO IDE omogućuje korisniku upotrebu LCD-a u 4-bitnom načinu. Ova vrsta komunikacije omogućuje korisniku da smanji upotrebu pin-a na ARDUINO, za razliku od drugih, ARDUINO ne mora biti programiran odvojeno za upotrebu u 4 it modu jer je ARDUINO prema zadanim postavkama postavljen za komunikaciju u 4 bitnom načinu. U krugu možete vidjeti da smo koristili 4-bitnu komunikaciju (D4-D7).
Dakle, iz pukog promatranja iz gornje tablice povezujemo 6 pinova LCD-a s kontrolerom u kojem su 4 pina podatkovne i 2 pina za kontrolu.
Za povezivanje BMP180 s Arduino Uno moramo učiniti sljedeće:
|
Prvo moramo nazvati datoteku zaglavlja za omogućavanje posebnih funkcija "#include".
Pomoću ove datoteke zaglavlja možemo pozvati funkcije koje mogu očitati vrijednosti iz senzora izravno bez ikakvih nejasnoća.
Sada moramo omogućiti C komunikaciju, to se postiže pozivom "#include
Pritisak možemo očitati pozivom "String PRESSUREVALUE = String (bmp.readPressure ());". Ovdje će se vrijednost tlaka očitati sa senzora i pohraniti u niz "PRITISAK".
Temparaturu možemo čitati pozivom "String TEMPARATUREVALUE = String (bmp.readTemperature ());". Ovdje će se vrijednost tlaka očitati sa senzora i pohraniti u niz "TEMPARATUREVALUE".

Prvo moramo omogućiti datoteku zaglavlja ('#include
Drugo, moramo reći ploči koju vrstu LCD-a ovdje koristimo. Budući da imamo toliko različitih vrsta LCD-a (poput 20 * 4, 16 * 2, 16 * 1 itd.). Ovdje ćemo povezati LCD 16 * 2 s UNO-om, pa ćemo dobiti 'lcd.begin (16,2);'. Za 16 * 1 dobivamo 'lcd.begin (16,1);'.
U ovoj ćemo uputi reći ploči gdje smo spojili pinove. Priključci koji su spojeni trebaju biti predstavljeni redom kao „RS, En, D4, D5, D6, D7”. Ove pribadače treba ispravno predstaviti. Budući da smo RS povezali na PIN0 i tako dalje, kao što je prikazano na shemi spojeva, predstavljamo pin broj na pločici kao “LiquidCrystallcd (0,1,8,9,10,11);”.
Nakon što gore ostane samo poslati podatke, podaci koje treba prikazati na LCD-u trebaju biti zapisani kao „cd.print („ bok, svijete! “);“. Pomoću ove naredbe LCD prikazuje 'zdravo, svijet!'.
Kao što vidite, ne trebamo se brinuti ni zbog čega drugog, samo moramo inicijalizirati i UNO će biti spreman za prikaz podataka. Ne moramo ovdje pisati programsku petlju da bismo ovdje slali podatke po BYTE. Nakon čitanja vrijednosti sa senzora, prikazat ćemo ih na LCD-u 16x2.
