Túr Comharthaíochta#

Réamhrá#

Úsáidtear an rang signaltower chun soilse a athrú agus idirghníomhaíochtaí leis an Túr Comharthaíochta CTE a bhrath.

Tógálaithe Ranga#

signaltower( 
  int32_t  index );

Scriostóir Ranga#

Scriosann sé an réad signaltower agus scaoileann sé acmhainní gaolmhara.

virtual ~signaltower();

Paraiméadair#

Paraiméadar

Cineál

Cur síos

index

int32_t

An Port Cliste a bhfuil an Túr Comharthaíochta ceangailte leis, scríofa mar PORTx, áit a seasann x don uimhir phoirt (mar shampla, PORT1).

Samplaí#

// Create a signal tower instance in Port 1
signaltower SignalTower = signaltower(PORT1);

Feidhmeanna na mBall#

Soláthraíonn an rang signaltower na feidhmeanna ball seo a leanas:

  • setColor - Rialaíonn sé dathanna agus stáit na soilse LED ar an Túr Comharthaíochta ag baint úsáide as modhanna ionchuir éagsúla.

  • setColors - Socraíonn sé staid na soilse LED uile ar an Túr Comharthaíochta ina n-aonar.

  • setBlink - Socraíonn sé staid splancadh LED ar an Túr Comharthaíochta de réir ID an LED.

  • setBlinkTime - Socraíonn sé an t-am idir splancanna na soilse LED ar an Túr Comharthaíochta.

  • enableBlink - Cumasaíonn sé seo splancadh do roinnt soilse LED ar an Túr Comharthaíochta de réir a n-aitheantais.

  • disableBlink - Díchumasaíonn sé splancadh i gcás il-LEDanna ar an Túr Comharthaíochta de réir a n-aitheantais.

  • ag brú - Tugann sé seo ar ais an bhfuil brú ar an mbuaicphointe ar an Túr Comharthaíochta faoi láthair.

  • brúite - Cláraíonn sé feidhm le glaoch uirthi nuair a bhrúitear maolán an Túir Chomharthaíochta.

  • scaoilte - Cláraíonn sé feidhm le glaoch uirthi nuair a scaoiltear maolán an Túir Chomharthaíochta.

setColor#

Rialaíonn sé dathanna agus stáit na soilse LED ar an Túr Comharthaíochta ag baint úsáide as modhanna ionchuir éagsúla. Is féidir na soilse seo a úsáid chun a rianú cá bhfuil an róbat i dtionscadal nó chun a thaispeáint cathain a chomhlíontar coinníollacha áirithe.

Available Functions

1 — Socraíonn sé dath don Túr Comharthaíochta ag baint úsáide as vex::color.

void setColor( 
  vex::color         color, 
  signaltower::state state = signaltower::state::on );

2 — Socraíonn sé dathanna LED ag baint úsáide as luachanna RGB agus YW 32-giotán.

void setColor( 
  uint32_t rgb, 
  uint32_t yw );

3 — Socraíonn sé gile LED aonair de réir aitheantóir LED.

void setColor( 
  ledId id, 
  uint32_t value );

4 — Socraíonn sé leibhéil gile do gach LED ina n-aonar.

void setColor( 
  uint8_t r, 
  uint8_t y, 
  uint8_t g, 
  uint8_t b, 
  uint8_t w );

Parameters

Paraiméadar

Cineál

Cur síos

color

vex::color

An dath le húsáid:

  • red
  • yellow
  • green
  • blue
  • white
  • all

state

signaltower::state

Stádas an LED:

  • on (Réamhshocrú) – Lasann sé an LED.
  • off – Múchann sé an LED.
  • blink – Spléachadh an LED.

rgb

uint32_t

Gile an LED dhearg, glas agus gorm ag baint úsáide as luach 32-giotán (m.sh., dearg ar siúl = 0xFF0000, glas ar siúl = 0x00FF00, agus gorm ar siúl = 0x0000FF).

yw

uint32_t

Gile LED buí agus bán ag baint úsáide as luach 32-giotán (m.sh., buí ar siúl = 0xFF00 agus bán ar siúl = 0x00FF).

id

ledId

Innéacs an LED le rialú:

  • 0 – dearg
  • 1 – glas
  • 2 – gorm
  • 3 – bán
  • 4 – buí

value

uint32_t

Gile an LED ó 0 go 255, agus 0 múchta agus 255 an uas-gile.

r

uint8_t

Gile an LED dhearg ó 0 go 255, agus 0 múchta agus 255 an gile uasta.

y

uint8_t

Gile an LED bhuí ó 0 go 255, agus 0 múchta agus 255 an gile uasta.

g

uint8_t

Gile an LED uaine ó 0 go 255, agus 0 múchta agus 255 an gile uasta.

b

uint8_t

Gile an LED ghoirm ó 0 go 255, agus 0 múchta agus 255 an gile uasta.

w

uint8_t

Gile an LED bháin ó 0 go 255, agus 0 múchta agus 255 an gile uasta.

Return Values

Ní thugann an fheidhm seo luach ar ais.

Examples
// Set the Signal Tower to start blinking blue
SignalTower.setColor(vex::color::blue, signaltower::blink);

// Set the red, blue and white LEDs using hex values
SignalTower.setColor(0xFF00FF, 0x00FF);

// Set the green LED to full brightness by ID
SignalTower.setColor(1, 255);

// Set all LEDs to full brightness
SignalTower.setColor(255, 255, 255, 255, 255);

setColors#

Socraíonn sé staid na soilse LED uile ar an Túr Comharthaíochta ina n-aonar. Is féidir na soilse seo a úsáid chun a rianú cá bhfuil an róbat i dtionscadal nó chun a thaispeáint cathain a chomhlíontar coinníollacha áirithe.

Available Functions
void setColors( 
  signaltower::state rs, 
  signaltower::state ys, 
  signaltower::state gs, 
  signaltower::state bs, 
  signaltower::state ws );

Parameters

Paraiméadar

Cineál

Cur síos

rs

signaltower::state

Stádas an LED dhearg:

  • on – Lasann sé an LED.
  • off – Múchann sé an LED.
  • blink – Spléachadh an LED.

ys

signaltower::state

Stádas an LED bhuí:

  • on – Lasann sé an LED.
  • off – Múchann sé an LED.
  • blink – Spléachadh an LED.

gs

signaltower::state

Stádas an LED uaine:

  • on – Lasann sé an LED.
  • off – Múchann sé an LED.
  • blink – Spléachadh an LED.

bs

signaltower::state

Stádas an LED ghoirm:

  • on – Lasann sé an LED.
  • off – Múchann sé an LED.
  • blink – Spléachadh an LED.

ws

signaltower::state

Stádas an LED bháin:

  • on – Lasann sé an LED.
  • off – Múchann sé an LED.
  • blink – Spléachadh an LED.

Return Values

Ní thugann an fheidhm seo luach ar ais.

Examples
// Turn on all LEDs
SignalTower.setColors(signaltower::on, signaltower::on, signaltower::on, signaltower::on, signaltower::on);

setBlinkTime#

Socraíonn sé an t-am idir splancanna na soilse LED ar an Túr Comharthaíochta.

Available Functions
void setBlinkTime( 
  uint32_t onTime, 
  uint32_t offTime = 0 );

Parameters

Paraiméadar

Cineál

Cur síos

onTime

uint32_t

An t-am i milleasoicindí ba chóir don LED a bheith air agus é ag splancadh. Is é 2500ms an t-uasmhéid. Luach réamhshocraithe de 0 ná 500ms.

offTime

uint32_t

An t-am i milleasoicindí ar cheart don LED a bheith múchta agus é ag splancadh. Is é 2500ms an t-uasmhéid. Úsáideann luach 0 an luach onTime. Is é 0 an réamhshocrú.

Return Values

Ní thugann an fheidhm seo luach ar ais.

pressing#

Tugann sé seo le fios an bhfuil brú á chur ar bhuilleoir an Thúir Chomharthaíochta faoi láthair. Is féidir é seo a úsáid mar stad éigeandála.

Available Functions
bool pressing();

Parameters

Níl paraiméadair ag an bhfeidhm seo.

Return Values

Tugann sé seo luach Booleach ar ais a léiríonn an bhfuil brú á chur ar bhuimpéar an Thúir Chomharthaíochta faoi láthair.

  • true — Tá brú ar bhuimpéar Thúr na Comharthaíochta faoi láthair.

  • false — Níl brú á chur ar tuairteoir an Thúir Chomharthaíochta.

pressed#

Cláraíonn sé feidhm le glaoch uirthi nuair a bhrúitear maolán an Thúir Chomharthaíochta.

Available Functions
void pressed( void (* callback)(void) );

Parameters

Paraiméadar

Cineál

Cur síos

callback

void (*)(void)

Pointeoir chuig feidhm a ghlaofar nuair a bhrúnntar an tuairteoir.

Return Values

Ní thugann an fheidhm seo luach ar ais.

Examples

Sainmhínigh an fheidhm athghlaoite (lasmuigh de int main())

// Display a message when bumper is pressed
void towerBumperPressed() {
  Brain.Screen.print("tower bumper pressed");
}

Cláraigh an glao ar ais taobh istigh de int main()

int main() {
  /* vexcodeInit() is only required when using VEXcode.
  Remove vexcodeInit() if compiling in VS Code. */
  vexcodeInit();

  // Run towerBumperPressed when the tower bumper 
  // is pressed
  SignalTower.pressed(towerBumperPressed);
}

released#

Cláraíonn sé feidhm le glaoch uirthi nuair a scaoiltear maolán an Túir Chomharthaíochta.

Available Functions
void released( void (* callback)(void) );

Parameters

Paraiméadar

Cineál

Cur síos

callback

void (*)(void)

Pointeoir chuig feidhm a ghlaofar nuair a scaoiltear an tuairteoir.

Return Values

Ní thugann an fheidhm seo luach ar ais.

Examples

Sainmhínigh an fheidhm athghlaoite (lasmuigh de int main())

// Display a message when bumper is pressed
void towerBumperReleased() {
  Brain.Screen.print("tower bumper pressed");
}

Cláraigh an glao ar ais taobh istigh de int main()

int main() {
  /* vexcodeInit() is only required when using VEXcode.
  Remove vexcodeInit() if compiling in VS Code. */
  vexcodeInit();

  // Run towerBumperReleased when the tower bumper 
  // is released
  SignalTower.released(towerBumperReleased);
}