Cérebro#

Introdução#

Em VEX V5 C++, o Cérebro é representado pela classe brain . Cria (ou utiliza o objeto Brain padrão fornecido pelo projeto) e depois acede aos recursos do Cérebro através dos seus objetos membros.

Classes Derivadas#

A classe brain serve de classe base para as seguintes classes derivadas:

  • Screen - Esta classe fornece acesso ao ecrã táctil a cores integrado do Brain, permitindo que os programas exibam texto, gráficos e recebam entrada de toque.

  • Timer - Esta classe fornece utilitários de temporização de alta resolução para medir o tempo decorrido e controlar o comportamento baseado no tempo nos programas.

  • Battery - Esta classe permite aos programas monitorizar o estado da bateria do cérebro, incluindo a voltagem, a corrente, a capacidade e a temperatura.

  • ThreeWirePort (triport / Porta de 3 fios) - Esta classe fornece acesso às portas de 3 fios do Brain para ligar e controlar sensores e dispositivos legados, como interruptores de fim de curso, potenciómetros e LEDs.

  • SDcard - Esta classe permite a leitura e escrita no cartão SD do Brain para armazenamento de ficheiros, registo de dados e carregamento de recursos externos.

Construtores de Classes#

brain();

Parâmetros#

O construtor brain não utiliza parâmetros.

Notas#

  • Apenas um objeto com o valor brain deve ser criado num projeto.

Exemplo#

// Create the V5 Brain
brain Brain = brain();

Funções de membro#

A classe brain inclui as seguintes funções membro:

  • programStop - Interrompe o projeto que está a ser executado no V5 Brain.

  • timer - Retorna o valor actual do temporizador interno do Brain nas unidades especificadas.

  • resetTimer - Repõe o temporizador interno do cérebro a zero e reinicia a contagem do tempo.

  • setTimer - Define o temporizador interno do cérebro para um valor e unidade de tempo especificados.

Antes de chamar qualquer função membro de brain , deve ser criada uma instância brain , como se mostra abaixo:

// Create the V5 Brain
brain Brain = brain();

programaParar#

Interrompe o projeto em execução no V5 Brain.

Available Functions
void programStop();

Parameters

Esta função não aceita qualquer parâmetro.

Return Values

Esta função não devolve qualquer valor.

Examples
// Stop the project when the Brain screen is pressed
while (true) {
  if (Brain.Screen.pressing()) {
    Brain.programStop();
  }
  wait(20, msec);
}

temporizador#

Retorna o valor atual do temporizador interno do cérebro nas unidades especificadas.

Available Functions
double timer(
  timeUnits units );

Parameters

Parâmetro

Tipo

Descrição

units

timeUnits

Unidade de tempo de retorno:

  • seconds / sec - segundos
  • msec - milissegundos

Return Values

Retorna um valor double representando o tempo decorrido desde o início do programa, nas unidades especificadas.

Examples
  • O temporizador inicia automaticamente quando o projeto começa.

  • O temporizador pode ser reiniciado com a utilização de resetTimer .

Examples
// Stop the project after 3 seconds
while (Brain.timer(seconds) < 3) {
  wait(20, msec);
}

Brain.programStop();

resetTimer#

Reinicializa o temporizador interno do cérebro para zero. Em seguida, o temporizador começa imediatamente a contar novamente a partir de zero.

Available Functions
void resetTimer();

Parameters

Esta função não aceita qualquer parâmetro.

Return Values

Esta função não devolve qualquer valor.

Notes
  • O cronómetro recomeça a contagem imediatamente após ser reiniciado.

  • A chamada resetTimer afecta o valor devolvido pelas chamadas subsequentes a timer.

Examples
// 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");

definirTemporizador#

Define o temporizador interno do cérebro para um valor e unidade de tempo específicos.

Available Functions
void setTimer(
  double value,
  timeUnits units );

Parameters

Parâmetro

Tipo

Descrição

value

double

O tempo para o qual o temporizador deve ser configurado, com base no valor timeUnits fornecido no parâmetro units.

units

timeUnits

The unit used to interpret the value parameter:

  • seconds / sec - seconds
  • msec - milliseconds

Return Values

Esta função não devolve qualquer valor.

Notes
  • O temporizador continua a contagem regressiva após ser configurado.

  • A chamada de setTimer altera imediatamente o valor devolvido por timer.

Examples
// 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");