Hardware Reference
In-Depth Information
7.11.8 INDICATOR_PULSE
Dieser Request gestattet es dem Host, am Gerät Aktivität zu signalisieren, indem
eine LED für den Zeitraum von 0.5 bis 1 Sekunde (die genaue Zeit innerhalb dieses
Intervalls ist dem Hersteller überlassen) eingeschaltet wird, nachdem dieser Request
empfangen wurde. Danach muss sich die LED automatisch ausschalten. Vorausset-
zung ist selbstverständlich, dass das Gerät über eine derartige Indikator-LED ver-
fügt und die Fähigkeit zur Unterstützung dieses Requests im vorher beschriebenen
CapabilitiesDescriptor eingetragen ist. Diese Eigenschaft ist grundsätzlich dazu
gedacht, ein Gerät zu identifizieren, jedoch kann sie auch für andere Zwecke ver-
wendet werden [USBTMC: 4.2.1.9].
Datenfeld Wert Bedeutung
bmRequestType 10100001 Class specific, Device to Host, Recipient: Interface
bRequest
01000000
INDICATOR_PULSE
wValue
0x0000
wIndex
0x0000
Interface-Adresse*
wLength
0x0001
Es wird 1 Byte vom Gerät erwartet
* Ein USB488-Gerät hat nur ein einziges Interface, und zwar das mit der Adresse 0.
Antwort:
Datenfeld
Wert
Bedeutung
USBTMC_status
0x01
STATUS_SUCCESS
;******************************************************************************
; USBTMC Request: INDICATOR_PULSE
;******************************************************************************
; Reference: USBTMC Chapter 4.2.1.9
INDICATOR_PULSE
call USBTMCindicator_pulse
; transfer STATUS_SUCESS
movlw 0x01
movff WREG,wStatusLOW
call
transmitBYTE
bra
transtest_over_ctl_out
Der Lichtimpuls der Indikator-LED soll im Beispielgerät nach 0.5 Sekunden erlö-
schen. Um das zu ermöglichen, muss eine Verzögerungszeit programmiert werden,
nach deren Ablauf die Indikator-LED abgeschaltet wird. Dazu wird der Timer0 des
verwendeten PIC-Derivats so initialisiert, dass er nach ca. 5 ms einen Low Priority
Interrupt erzeugt.
 
Search WWH ::




Custom Search