Use your forum account to login.

LOGIN

TOP Contributors

  1. MikroElektronika Team (149 codes)
  2. Alcides Ramos (54 codes)
  3. Dany (52 codes)
  4. NART SCHINACKOW (34 codes)
  5. Agent Wolfz (22 codes)
  6. Andrew Hazelden (17 codes)
  7. Alberto Trasimeni (17 codes)
  8. Bojan Kranjc (15 codes)
  9. Roman Toropov (14 codes)
  10. FOURNET Olivier (13 codes)

Most Downloaded

  1. Timer Calculator (25436 times)
  2. Network Ethernet Library (20489 times)
  3. FAT32 Library (15873 times)
  4. Network WiFi Library (12525 times)
  5. USB Device Library (11790 times)
  6. PID Library (9414 times)
  7. GSM click - Example (8955 times)
  8. microSD click - Example (7676 times)
  9. FT800 Library (7285 times)
  10. SMS home alarm system (6923 times)
Libstock prefers package manager

Package Manager

We strongly encourage users to use Package manager for sharing their code on Libstock website, because it boosts your efficiency and leaves the end user with no room for error. [more info]

< Back
Library

USB Device Library

Rating:

Author: MikroElektronika Team

Last Updated: 2013-12-18

Category: USB

Downloaded: 11790 times

Followed by: 16 users

USB Device Library presents the user set of functions required to handle USB device peripheral. A embedded user application program uses API defined in this library to access USB device peripheral.

No Abuse Reported

Do you want to subscribe in order to receive notifications regarding "USB Device Library" changes.

Do you want to unsubscribe in order to stop receiving notifications regarding "USB Device Library" changes.

Do you want to report abuse regarding "USB Device Library".

  • Information
  • Comments (37)

Library Blog

USB Device Library presents the user set of functions required to handle USB device peripheral. A embedded user application program uses API defined in this library to access USB device peripheral. The library has set of functions implemented within library and also uses set of callback functions which will be implemented by application designer outside of the library. Library internaly handles standard device requests, leaving the user to process other requests.

As example of use of this library, following USB device classes are implemented:

HID (Human Interface Devices) class with mouse functionality 
MSC BOT (Mass Storage - Bulk Only Transport) class. 
CDC (Communications Device Class) class.

USB Device Library: HID example

Example showing usage of USB HID mouse class. After connection, the board is recognized as USB Input device and you can use it as a touchpad via TFT display.

Watch on Vimeo

USB Device Library: Mass Storage example

Example showing how to use mikromedia board as mass storage device. After connection with PC, mikromedia is detected as mass storage device.

Watch on Vimeo

USB Device Library features following functions:

USBDev_Init
USBDev_IntHandler
USBDev_GetDeviceState
USBDev_StallEndpoint
USBDev_CtrlStall
USBDev_ClearStallEndpoint
USBDev_RegisterGetDescriptorHandler
USBDev_RegisterEventHandler
USBDev_RegisterSetupReqHandler
USBDev_RegisterDataReceivedHandler
USBDev_RegisterDataSentHandler
USBDev_ConvertStringToDescriptor
USBDev_SendPacket
USBDev_SetReceiveBuffer
USBDev_CtrlDataAck
USBDev_CtrlSendData

Release notes:

Version 1.2.0.0:

 - ARM TI Tiva MCUs supported.
 - Examples for mikroMedia 5 for Tiva added.
 - PIC16F145x library added.

Version 1.1.0.0:

 - CDC class added
 - Virtual COM port example added
 - Minor bug fixes

 

ALSO FROM THIS AUTHOR

8x8 click - Example

Simple example which demonstrates working with 8x8 click boards. 8x8 clicks are 8x8 LED matrix displays in form of add-on boards in mikroBUS form factor. Boards feature MAX7219 8-digit LED display driver module as well as 64 LED diodes.

[Learn More]

Mikromedia 5 for Tiva - RF Communication Example

This is demonstration project how Mikromedia 5 for Tiva communicates over RF. Data is send over simple 'led protocol' (1 byte command). Development board for Stellaris with an add-on board nRF Click is used as a receiver device.

[Learn More]

Network Ethernet Library

Ethernet library designed to simplify handling of the underlying hardware (ENC24J600/ENC28J60 and internal ethernet module on PIC18, PIC32, TIVA and STM32). Library supports: TCP Stack (Server/Client), UDP, IPv4 protocol, ARP requests, ICMP echo requests, ARP client with cache, DNS client, DHCP client.

[Learn More]