USB Device for NUCLEO-F103RB, STM32F103C8T6 and Maple Mini boards

Dependents:   MapleMini_USBSerial STM32F103C8T6_USBKeyboard firstDelta STM32F103C8T6_USBSerial ... more

Fork of L152RE_USBDevice by Norimasa Okamoto

Embed: (wiki syntax)

« Back to documentation index

USBKeyboard Class Reference

USBKeyboard Class Reference

USBKeyboard example. More...

#include <USBKeyboard.h>

Inherits USBHID.

Public Member Functions

 USBKeyboard (uint16_t vendor_id=0x1235, uint16_t product_id=0x0050, uint16_t product_release=0x0001)
 Constructor.
bool keyCode (uint8_t key, uint8_t modifier=0, bool release=true)
 To send a character defined by a modifier(CTRL, SHIFT, ALT) and the key.
virtual int _putc (int c)
 Send a character.
bool mediaControl (MEDIA_KEY key)
 Control media keys.
uint8_t lockStatus ()
 Read status of lock keys.
bool send (HID_REPORT *report)
 Send a Report.
bool sendNB (HID_REPORT *report)
 Send a Report.
bool read (HID_REPORT *report)
 Read a report: blocking.
bool readNB (HID_REPORT *report)
 Read a report: non blocking.

Detailed Description

USBKeyboard example.

 #include "mbed.h"
 #include "USBKeyboard.h"

 USBKeyboard key;

 int main(void)
 {
   while (1)
   {
       key.printf("Hello World\r\n");
       wait(1);
   }
 }

Definition at line 92 of file USBKeyboard.h.


Constructor & Destructor Documentation

USBKeyboard ( uint16_t  vendor_id = 0x1235,
uint16_t  product_id = 0x0050,
uint16_t  product_release = 0x0001 
)

Constructor.

Parameters:
ledsLeds bus: first: NUM_LOCK, second: CAPS_LOCK, third: SCROLL_LOCK
vendor_idYour vendor_id (default: 0x1235)
product_idYour product_id (default: 0x0050)
product_releaseYour preoduct_release (default: 0x0001)

Definition at line 105 of file USBKeyboard.h.


Member Function Documentation

int _putc ( int  c ) [virtual]

Send a character.

Parameters:
ccharacter to be sent
Returns:
true if there is no error, false otherwise

Definition at line 441 of file USBKeyboard.cpp.

bool keyCode ( uint8_t  key,
uint8_t  modifier = 0,
bool  release = true 
)

To send a character defined by a modifier(CTRL, SHIFT, ALT) and the key.

 //To send CTRL + s (save)
  keyboard.keyCode('s', KEY_CTRL);
Parameters:
modifierbit 0: KEY_CTRL, bit 1: KEY_SHIFT, bit 2: KEY_ALT (default: 0)
keycharacter to send
holdDowntrue when the key shall be released in this function false when the key shall be released in the application program
Returns:
true if there is no error, false otherwise

Definition at line 445 of file USBKeyboard.cpp.

uint8_t lockStatus (  )

Read status of lock keys.

Useful to switch-on/off leds according to key pressed. Only the first three bits of the result is important:

  • First bit: NUM_LOCK
  • Second bit: CAPS_LOCK
  • Third bit: SCROLL_LOCK
Returns:
status of lock keys

Definition at line 437 of file USBKeyboard.cpp.

bool mediaControl ( MEDIA_KEY  key )

Control media keys.

Parameters:
keymedia key pressed (KEY_NEXT_TRACK, KEY_PREVIOUS_TRACK, KEY_STOP, KEY_PLAY_PAUSE, KEY_MUTE, KEY_VOLUME_UP, KEY_VOLUME_DOWN)
Returns:
true if there is no error, false otherwise

Definition at line 477 of file USBKeyboard.cpp.

bool read ( HID_REPORT *  report ) [inherited]

Read a report: blocking.

Parameters:
reportpointer to the report to fill
Returns:
true if successful

Definition at line 45 of file USBHID.cpp.

bool readNB ( HID_REPORT *  report ) [inherited]

Read a report: non blocking.

Parameters:
reportpointer to the report to fill
Returns:
true if successful

Definition at line 57 of file USBHID.cpp.

bool send ( HID_REPORT *  report ) [inherited]

Send a Report.

warning: blocking

Parameters:
reportReport which will be sent (a report is defined by all data and the length)
Returns:
true if successful

Definition at line 34 of file USBHID.cpp.

bool sendNB ( HID_REPORT *  report ) [inherited]

Send a Report.

warning: non blocking

Parameters:
reportReport which will be sent (a report is defined by all data and the length)
Returns:
true if successful

Definition at line 39 of file USBHID.cpp.