There are many low cost controllers/ development boards have USB support
1. STM32f4_discovery
2. TM4c123
3.PSOC5
They have buildin pheripherals like I2C, SPI, UART , CAN ... Making a protocol converter/ other controllers using these devices makes the price compatative ..
There are 4 ways one can write driver to these devices
1. Libusb
2.WinUSB
3.Custom Drivers
4.CDC /Serial Driver
Libusb
Libusb is best for devices which requires support to other OS like Linux , MAC OS , BSD ..
It maintains common calling conventions & data structures across defferent platforms ..
Application
|
User Mode Driver (dll)
|
Kernel Mode Driver (Sys)
|
USB Host Driver (Comes along with OS)
WinUSB
WinUSB only work with Windows platform ..
Application
|
User Mode Driver (dll)
|
Kernel Mode Driver (Sys)
|
USB Host Driver (Comes along with OS)
Custom Drivers :
Instead of using the above two drivers one can prefer to write a custom driver & maintain proprietary issues , avoid exposing the data transfer format/ protocol .. [Still some one can hook a USB analyser & see whats happening ]
Application
|
User Mode Driver (dll)
|
Kernel Mode Driver (Sys)
|
USB Host Driver (Comes along with OS)
Virtual Serial Driver :
This way one can avoid supplying a driver for the device & use the pre-supplied windows USB class drivers ..
Application
|
Serial Port Accessing Interface
Red Color Shows work required to do... Green - driver /Software already available ..
No comments:
Post a Comment