elomax

[ Techniek ] [ Shop ] [ Site map
THidDevices ] THidDevice ] [ THidDataPort ] THidWaiter ]

Terug
Omhoog

THidDataPort

THidDevice wordt gebruikt om met een apparaat te communiceren. Via een THidData array kan data naar het apparaat worden opgestuurd en ontvangen. Het THidData array is echter niet altijd de meest geschikte vorm.

Met THidDataPort kan het 8 bytes lange datablok worden beschouwd als

  • 8 bytes, met byte[ 0] als meest significante byte (het byte dat als eerste wordt uitgeklokt of wordt ingelezen), en byte[ 7] als minst significante byte (het byte dat als laatste wordt uitgeklokt of wordt ingelezen)

  • 4 short (16-bits) integers, met ShortInteger[ 0] als meest significant, en ShortInteger[ 3] als minst significant

  • 2 long (32-bits) integers, met LongInteger[ 0] als meest significant, en LongInteger[ 1] als minst significant

  • 1 Int64, een 64-bits integer

  • 64 bits (Booleans), met bit[ 63] als meest significant bit, en bit[ 0] als minst significant bit

Een eenvoudig voorbeeld maakt het gebruik van dit component snel duidelijk. U kunt een voorbeeld project hier downloaden, en een ander voorbeeld hier.

Properties

HidDevice: THidDevice

Dit is een verwijzing naar het THidDevice component waaraan THidDataPort is gekoppeld.

AsInt64: Int64

Gebruik AsInt64 als de data als een 64-bits integer beschouwd moet worden.

AsLongInt[ Index: Integer]

Gebruik AsLongInt als de data als twee 32-bits integers beschouwd moet worden. AsLongInt[ 0] is het meest significant, en AsLongInt[ 1] het minst.

AsShortInt[ Index: Integer]

Gebruik AsShortInt als de data als vier 16-bits integers beschouwd moet worden. AsShortInt[ 0] is het meest significant, en AsShortInt[ 3] het minst.

AsByte[ Index: Integer]

Gebruik AsByte als de data als acht bytes beschouwd moet worden. AsByte[ 0] is het meest significant, en AsByte[ 7] het minst.

AsBit[ Index: Integer]

Gebruik AsBit als de data als 64 losse bits beschouwd moet worden. AsBit[ 63] is het meest significant, en AsBit[ 0] het minst.

AcceptUSBData: Boolean

Een THidDataPort component wordt gekoppeld met een THidDevice component. Als op dit THidDevice component data binnenkomt vanuit de USB bus, wordt de data in het THidDataPort component hiermee aangepast. Met de bovengenoemde properties van het THidDataPort component kan deze data verder verwerkt worden. Echter, als er data klaargezet moet worden om later met een THidDataPort.SendData procedure te worden verstuurd, kan het zijn dat de data die later verstuurd moet gaan worden ondertussen wordt overschreven door data die net vers binnenkomt. Om dit te voorkomen, kunnen op één THidDevice component, twee THidDataPort componenten worden aangesloten. Het ene THidDataPort component wordt dan gebruikt om data van het USB apparaat te ontvangen, en het andere wordt gebruikt om data naar het USB apparaat toe te sturen. Bij dit laatste THidDataPort component kan AcceptUSBData op FALSE gezet worden. Als AcceptUSBData op FALSE wordt gezet, zal het betreffende THidDataPort component niet reageren op data die via USB binnenkomt.

Methods

SendData

Met deze procedure wordt de data uit THidDataPort verstuurd via het THidDevice waarop THidDataPort is aangesloten. Als het niet lukt om de data te versturen, of als THidDataPort niet op een THidDevice is aangesloten, wordt een USBException gegenereerd.

Events

OnHidData: TNotifyEvent

Dit event wordt gegenereerd wanneer het apparaat waaraan THidDataPort (via THidDevice) is aangesloten, data naar de PC gestuurd heeft, en deze data door THidDataPort werd ontvangen. Met de bovengenoemde properties van het THidDataPort component kan deze data verder verwerkt worden.

Vorige ] Volgende ]

© 2005...2008 Elomax [Voorwaarden ]