Even weer in het Nederlands. Het valt soms zwaar om alles in het Engels te volgen.
Daarbij... Hier kan ik soms zaken net even wat beter verwoorden.
Ik heb een stukje code gestript totaan puur het weergeven van atmosferische druk, wat ik voor een projectje wil gebruiken.
Maar ik begrijp een zekere regel niet helemaal. In ieder geval niet het nut en/of de betekenis.
Iemand die me daar wat over wijs kan maken?
#include <Adafruit_BMP085.h> //Bibliotheek voor de druksensor #include <Wire.h> //Bibliotheek voor de I2C verbinding.
**Adafruit_BMP085 bmp; ** < wat doet deze regel??
void setup() {
Serial.begin(9600);
if (!bmp.begin()) {
Serial.println("Geen verbinding met de BMP module");
while (1) {}
}
}
Ah, OK...
Het is dus een soort van verwijzing/vertaalslag van "ADAFRUIT_BMP085" naar een meer werkbare term "BMP".
De verwijzing kan naar een poort wijzen, maar ook naar een library, als ik het goed begrijp.
Die verwijzing naar een poort kan ik me wel herinneren in PICBasic, waar je dat deed met "Symbol".
Dat zou hier dan **Symbol **ADAFRUIT_BMP085 = BMP worden. Of iets in die richting.
Wat Erik_Baas schreef over een integer maken, dat is hoe het is.
Dus "int" is het type, en "ledPin" is de variabele die in de code gebruikt gaat worden.
Dan weet de compiler dat "ledPin" geen string is, geen float, geen byte, maar een "int".
int ledPin;
Op dezelfde manier is "Adafruit_BMP085" het type, en "bmp" is de variabele.
Dan weet de compiler dat "bmp" geen float en geen byte is, maar van het type "Adafruit_BMP085"
Adafruit_BMP085 bmp;
De "Adafruit_BMP085" wordt de class genoemd, en "bmp" wordt het object genoemd, maar het principe is hetzelfde.
Je kunt "Adafruit_BMP085" als type zien en "bmp" kun je als variabele zien.
Het is dan wel een ingewikkelde variabele waar van alles in zit.
OK, dat maakt het nog wat duidelijker...
Maar nu is Int, Byte, of Float een afgebakende waarde.
Adafruit_BMP is dat dan niet. Het is een grotere brok aan data, lijkt me...
Kan ik het dan zo zien dat deze Adafruit_BMP een reeks aan items(?) die elk een waarde hebben?
In geval van deze BPM dus bv pressure, temp, etc?
FTMZ:
Maar nu is Int, Byte, of Float een afgebakende waarde. Adafruit_BMP is dat dan niet.
Toch wel: de auteur van de library heeft exact vastgelegd wat je ermee kunt doen en welke waardes je erin kunt opslaan (zowel de namen als de datatypes).
FTMZ:
Kan ik het dan zo zien dat deze Adafruit_BMP085 een reeks aan items(?) die elk een waarde hebben?
In geval van deze BMP dus bv pressure, temp, etc?
Ja, zo kun je je dat voorstellen. Zoals gezegd, een aantal variabelen, maar ook een aantal functies: bmp.begin() doet iets, nl. de sensor initialiseren en wat interne waardes instellen (neem ik aan).