I denna handledning kommer vi att utforma ett barometriskt tryckmätningssystem med BMP180 och ARDUINO. Först och främst för att koppla ihop BMP180 till ARDUINO måste vi ladda ner ett bibliotek som är särskilt utformat för BMP180. Detta bibliotek finns tillgängligt på: https://github.com/adafruit/Adafruit-BMP085-Library Efter att ha bifogat det biblioteket kan vi ringa specialfunktioner som underlättar arbetet med BMP180-sensorn.
Komponenter krävs
Hårdvara: Arduino uno-kort, anslutningsstift, 220Ω motstånd, BMP180 barometertrycksensor, 16x2 LCD, brödbräda.
Programvara: Arduino nattligt
Kretsschema och arbetsförklaring
Efter att ha efterlyst rubrik behöver vi inte oroa oss för att skapa kommunikation mellan Arduino Uno och BMP180-sensorn. Vi kan helt enkelt ringa in specialfunktioner som gör det för oss. Vi behöver bara initialisera en LCD och visa de anropade värdena från SENSOR på den.
I 16x2 LCD finns det 16 stift överallt om det finns en bakgrundsbelysning, om det inte finns något bakgrundsbelysning kommer det att finnas totalt 14 stift. Man kan driva eller lämna bakljuset. Nu i de 14 stiften finns 8 datastift (7-14 eller D0-D7), 2 effektmatningsstiften (1 & 2 eller VSS & VDD eller GND & + 5v), 3 : e stift för kontrastreglering (VEE-styr hur tjock tecknen bör vara visas) och 3 kontrollstift (RS & RW & E).
I kretsen kan du observera att jag bara har tagit två kontrollstift, kontrastbiten och LÄS / SKRIV inte ofta så att de kan kortslutas till marken. Detta sätter LCD i högsta kontrast och läsläge. Vi behöver bara kontrollera ENABLE- och RS-stift för att skicka tecken och data i enlighet därmed.
De anslutningar som görs för LCD ges nedan:
PIN1 eller VSS till jord
PIN2 eller VDD eller VCC till + 5v ström
PIN3 eller VEE till marken (ger maximal kontrast bäst för en nybörjare)
PIN4 eller RS (Registrera val) till PIN8 för ARDUINO UNO
PIN5 eller RW (läs / skriv) till marken (sätter LCD i läsläge underlättar kommunikationen för användaren)
PIN6 eller E (Aktivera) till PIN9 för ARDUINO UNO
PIN11 eller D4 till PIN10 för ARDUINO UNO
PIN12 eller D5 till PIN11 för ARDUINO UNO
PIN13 eller D6 till PIN12 för ARDUINO UNO
PIN14 eller D7 till PIN13 för ARDUINO UNO
ARDUINO IDE tillåter användaren att använda LCD i 4-bitars läge. Denna typ av kommunikation gör det möjligt för användaren att minska stiftanvändningen på ARDUINO, till skillnad från andra behöver ARDUINO inte programmeras separat för att använda den i 4 it-läge eftersom ARDUINO som standard är inställt för att kommunicera i 4-bitarsläge. I kretsen kan du se att vi har använt 4-bitars kommunikation (D4-D7).
Så från enbart observation från ovanstående tabell ansluter vi 6 stift LCD till styrenhet där 4 stift är datapinnar och 2 stift för kontroll.
För att ansluta BMP180 till Arduino Uno måste vi göra följande:
|
Först måste vi kalla rubrikfilen för att aktivera specialfunktioner "#include".
Med den här rubrikfilen kan vi ringa funktioner som kan läsa värden från sensorn direkt utan fuzz.
Nu måste vi aktivera C-kommunikationen, detta görs genom att ringa “#include
Vi kan läsa tryck genom att ringa ”String PRESSUREVALUE = String (bmp.readPressure ());”. Här avläses tryckvärdet från sensorn och lagras i strängen "TRYCKVÄRDE".
Vi kan läsa temperaturen genom att ringa ”String TEMPARATUREVALUE = String (bmp.readTemperature ());”. Här avläses tryckvärdet från sensorn och lagras i strängen "TEMPARATUREVALUE".
Först måste vi aktivera rubrikfilen ('#include
För det andra måste vi berätta för tavlan vilken typ av LCD vi använder här. Eftersom vi har så många olika typer av LCD-skärmar (som 20 * 4, 16 * 2, 16 * 1 etc.). Här inne ska vi ansluta en 16 * 2 LCD till UNO så att vi får 'lcd.begin (16,2);'. För 16 * 1 får vi 'lcd.begin (16,1);'.
I den här instruktionen ska vi berätta för kortet var vi kopplade stiften, Stiften som är anslutna ska representeras i ordning som ”RS, En, D4, D5, D6, D7”. Dessa stift ska representeras korrekt. Eftersom vi kopplade RS till PIN0 och så vidare som visas i kretsschemat, representerar vi stiftnumret som ska styras som “LiquidCrystallcd (0,1,8,9,10,11);”.
Efter ovanstående finns allt kvar att skicka data, de data som måste visas i LCD bör skrivas som “cd.print (” hej, världen! ”);”. Med detta kommando visar LCD-skärmen 'hej, värld!'.
Som du kan se behöver vi inte oroa oss för detta, vi måste bara initiera och UNO är redo att visa data. Vi behöver inte skriva en programslinga för att skicka data BYTE av BYTE här. Efter att ha läst värdet från sensorn kommer vi att visa dem på 16x2 LCD.