Brein#
Invoering#
In VEX EXP C++ wordt de Brain weergegeven door de klasse brain Je maakt een Brain-object aan (of gebruikt het standaardobject dat door het project wordt geleverd) en hebt vervolgens toegang tot de Brain-functies via de bijbehorende lidobjecten.
Afgeleide klassen#
De klasse brain dient als basisklasse voor de volgende afgeleide klassen:
Screen- Deze klasse biedt toegang tot het ingebouwde kleurentouchscreen van de Brain, waardoor programma’s tekst en afbeeldingen kunnen weergeven en aanraakinvoer kunnen ontvangen.Timer- Deze klasse biedt timinghulpmiddelen met hoge resolutie voor het meten van de verstreken tijd en het aansturen van tijdsgebonden gedrag in programma’s.Battery- Deze klasse stelt programma’s in staat de batterijstatus van de Brain te bewaken, inclusief spanning, stroomsterkte, capaciteit en temperatuur.Button- Deze klasse stelt programma’s in staat om met de knoppen van de Brain te communiceren.ThreeWirePort(triport/ 3-draads poort) - Deze klasse biedt toegang tot de 3-draads poorten van de Brain voor het aansluiten en aansturen van oudere sensoren en apparaten zoals eindschakelaars, potentiometers en LED’s.SDcard- Deze klasse maakt het mogelijk om van en naar de SD-kaart van de Brain te lezen voor bestandsopslag, gegevensregistratie en het laden van externe bronnen.
Klasseconstructors#
brain();
Parameters#
De brain constructor gebruikt geen parameters.
Notities#
Er mag slechts één object van het type
brainper project worden aangemaakt.
Voorbeeld#
// Create the EXP Brain
brain Brain = brain();
Lidfuncties#
De klasse brain omvat de volgende lidfuncties:
playSound- Speelt een van de ingebouwde geluidseffecten van de hersenen af.playNote- Speelt een muzieknoot gedurende een bepaalde tijd.programStop- Stopt het momenteel actieve project op de EXP Brain.timer- Geeft de huidige waarde van de interne timer van de Brain terug in de opgegeven eenheden.resetTimer- Zet de interne timer van de hersenen terug naar nul en start de timing opnieuw.setTimer- Stelt de interne timer van de hersenen in op een opgegeven waarde en tijdseenheid.
Voordat er lidfuncties van brain kunnen worden aangeroepen, moet er een instantie van brain worden aangemaakt, zoals hieronder weergegeven:
// Create the EXP Brain
brain Brain = brain();
playSound#
Speelt een van de ingebouwde geluiden van de Brain af.
Available Functionsvoid playSound(
soundtype sound,
uint32_t volume = 50 );
Parameters |
Type |
Beschrijving |
|---|---|---|
|
|
Het opgegeven geluid dat door de hersenen moet worden afgespeeld. |
|
|
Optioneel. Het volume waarmee het geluid wordt afgespeeld, als een geheel getal van 0% tot 100%. De standaardwaarde is 50%. |
Geluidsnaam |
Geluid afspelen |
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Deze functie retourneert geen waarde.
playNote#
Speelt een muzieknoot vanuit de hersenen.
Available Functions1 - Speel een muzieknoot.
void playNote( int32_t octave, int32_t note );
Parameters2 - Speelt een noot gedurende een bepaalde tijd en met een bepaald volume.
void playNote( int32_t octave, int32_t note, int32_t duration, int32_t volume = 50 );
Parameters |
Type |
Beschrijving |
|---|---|---|
|
|
Het getal dat het octaaf aangeeft waarin de noot wordt gespeeld:
|
|
|
De te spelen noot:
|
|
|
Optioneel. De duur in milliseconden dat de noot moet worden afgespeeld, tot een maximum van 500 milliseconden. Indien geen duur wordt opgegeven, is de standaardduur 500 milliseconden. |
|
|
Optioneel. Het volume waarmee het geluid wordt afgespeeld, als een geheel getal van 0% tot 100%. De standaardwaarde is 50%. |
Deze functie retourneert geen waarde.
programmaStop#
Stopt het momenteel actieve project op de EXP Brain.
Available Functionsvoid programStop();
Deze functie accepteert geen parameters.
Return ValuesDeze functie retourneert geen waarde.
Examples// Stop the project when the Brain screen is pressed
while (true) {
if (Brain.Screen.pressing()) {
Brain.programStop();
}
wait(20, msec);
}
timer#
Geeft de huidige waarde van de interne timer van de Brain weer in de opgegeven eenheden.
Available Functionsdouble timer(
timeUnits units );
Parameter |
Type |
Beschrijving |
|---|---|---|
|
|
The unit of time to return:
|
Retourneert een double die de verstreken tijd sinds de start van het programma weergeeft, in de opgegeven eenheden.
De timer start automatisch wanneer het project begint.
De timer kan worden gereset met behulp van
resetTimer.
// Stop the project after 3 seconds
while (Brain.timer(seconds) < 3) {
wait(20, msec);
}
Brain.programStop();
timer resetten#
Hiermee wordt de interne timer van de hersenen op nul gezet. Daarna begint de timer onmiddellijk weer vanaf nul te tellen.
Available Functionsvoid resetTimer();
Deze functie accepteert geen parameters.
Return ValuesDeze functie retourneert geen waarde.
NotesDe timer begint direct na het resetten weer te tellen.
Het aanroepen van
resetTimerbeïnvloedt de waarde die wordt geretourneerd door latere aanroepen vantimer.
// Reset the timer and measure elapsed time
Brain.resetTimer();
while (Brain.timer(sec) < 5) {
wait(20, msec);
}
// 5 seconds have elapsed since reset
Brain.Screen.print("5 seconds passed");
setTimer#
Stelt de interne timer van de hersenen in op een opgegeven waarde en tijdseenheid.
Available Functionsvoid setTimer(
double value,
timeUnits units );
Parameter |
Type |
Beschrijving |
|---|---|---|
|
|
De tijd waarop de timer moet worden ingesteld, gebaseerd op de |
|
|
The unit used to interpret the
|
Deze functie retourneert geen waarde.
NotesDe timer blijft doortellen nadat hij is ingesteld.
Het aanroepen van
setTimerverandert onmiddellijk de waarde die wordt geretourneerd doortimer.
// Set the timer to start at 10 seconds
Brain.setTimer(10, sec);
// Wait until the timer is at 3 seconds
while (Brain.timer(sec) < 3) {
wait(20, msec);
}
// 5 seconds have elapsed since setTimer was called
Brain.Screen.print("5 seconds passed");