Forked HIDScope

Dependencies:   USBDevice

Fork of HIDScope by Sjoerd Barts

Embed: (wiki syntax)

« Back to documentation index

HIDScope Class Reference

HIDScope Class Reference

A simple HID (Human Interface Device) scope

  • Up to 6 channels of float data is transmitted in a single HID message (64 byte)
  • Theoretical maximum samplerate of 1kHz (due to HID specifications)
  • Data can be parsed using a client-side server.
More...

#include <HIDScope.h>

Public Member Functions

 HIDScope (int channels)
 Instantiate the HID Scope.
void set (int ch, float val)
 Sets the current channel value.
void set (int ch, int val)
 Sets the current channel value.
void set (int ch, bool val)
 Sets the current channel value.
void set (int ch, double val)
 Sets the current channel value.
void send ()
 Sends the channel data to the HID client.

Detailed Description

A simple HID (Human Interface Device) scope

  • Up to 6 channels of float data is transmitted in a single HID message (64 byte)
  • Theoretical maximum samplerate of 1kHz (due to HID specifications)
  • Data can be parsed using a client-side server.

See the following repository for PC software: https://bitbucket.org/tomlankhorst/hidscope

Example:

 #include "mbed.h"
 #include "HIDScope.h"        // Require the HIDScope library

 HIDScope    scope(2);        // Instantize a 2-channel HIDScope object
 Ticker      scopeTimer;      // Instantize the timer for sending data to the PC 
 
 AnalogIn    a0(A0);          // Using an analog input to obtain data 
 
 int main()
 {
   
   // Attach the HIDScope::send function to the timer at a 10.000 us interval (100 Hz)
   scopeTimer.attach_us(&scope, &HIDScope::send, 1e4);
   
   // Read from the analog input in an endless loop. Two channels are written each iteration. 
   // Note that the control loop can run at a different frequency (1 kHz in this case)
   while(1){
       scope.set(0, a0.read());
       scope.set(1, a0.read());
       wait_us(1000);
   };    
   
 }

Definition at line 41 of file HIDScope.h.


Constructor & Destructor Documentation

HIDScope ( int  channels )

Instantiate the HID Scope.

Definition at line 3 of file HIDScope.cpp.


Member Function Documentation

void send (  )

Sends the channel data to the HID client.

Returns:
void

Definition at line 30 of file HIDScope.cpp.

void set ( int  ch,
int  val 
)

Sets the current channel value.

Parameters:
ch: integer channel no (0-6)
val: integer value
Returns:
void

Definition at line 15 of file HIDScope.cpp.

void set ( int  ch,
double  val 
)

Sets the current channel value.

Parameters:
ch: double channel no (0-6)
val: float value
Returns:
void

Definition at line 25 of file HIDScope.cpp.

void set ( int  ch,
bool  val 
)

Sets the current channel value.

Parameters:
ch: integer channel no (0-6)
val: boolean value
Returns:
void

Definition at line 20 of file HIDScope.cpp.

void set ( int  ch,
float  val 
)

Sets the current channel value.

Parameters:
ch: integer channel no (0-6)
val: float value
Returns:
void

Definition at line 10 of file HIDScope.cpp.