Komunikaci mezi dvěma Briany

class brian.sensors.BrianBrianComm.BrianBrianComm(port: SensorPort, is_master: bool)

Základ: Sensor

Třída zajišťující komunikaci mezi dvěma zařízeními Brian připojenými přes senzorový port.

Senzor (druhý Brian) je automaticky registrován v konstruktoru základní třídy a odregistrován v jejím destruktoru.

V celém programu může být v daném okamžiku maximálně jedna instance libovolné třídy senzoru na port.

__init__(port: SensorPort, is_master: bool) None

Inicializuje nového obslužného komunikátoru pro přenos dat mezi Brian zařízeními na zadaném portu. Komunikaci lze inicializovat v jednom ze dvou režimů – master nebo slave, přičemž jeden konec musí být master a druhý slave.

Parametry:
  • port – Port senzoru, ke kterému je senzor připojen.

  • is_master – true, pokud má být použit v režimu master, false pro režim slave

available() int
Vrací:

bajty dostupné ke čtení

read(size: int | None = None) bytes

čte data přicházející z druhého zařízení Brian.

Parametry:

size – limit velikosti, kolik bajtů zkopírovat. Pokud není zadán, přečtou se všechna dostupná data.

Vrací:

přečtené bajty

Vyvolá:

OSError – Pokud dojde k chybě během operace zápisu.

Error Codes: MP_EIO: BrianBrianComm is not ready or is disconnected.

write(message: bytearray | str | bytes) int

Odešle zadaný buffer druhému zařízení Brian.

Parametry:

message – str, bytearray nebo bytes buffer obsahující skutečnou zprávu.

Vrací:

počet zapsaných bajtů

Vyvolá:

OSError – Pokud dojde k chybě během operace zápisu.

Error Codes: MP_EIO: BrianBrianComm is not ready or is disconnected.