Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in
Toggle navigation
F
fwatch
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
8
Issues
8
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
Wiki
Wiki
image/svg+xml
Discourse
Discourse
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Commits
Issue Boards
Open sidebar
Projects
fwatch
Commits
53985415
Commit
53985415
authored
Aug 06, 2014
by
Theodor-Adrian Stana
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Add USB test host-side software (not working)
parent
1ff35de5
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
80 additions
and
0 deletions
+80
-0
Makefile
sw/usbled/Makefile
+8
-0
usbled.c
sw/usbled/usbled.c
+72
-0
No files found.
sw/usbled/Makefile
0 → 100644
View file @
53985415
CC
=
gcc
INCLUDE
=
SOURCES
=
usbled.c
LIB
=
-L
/usr/lib/i386-linux-gnu
LDFLAGS
=
-lusb
all
:
$(CC)
$(INCLUDE)
$(LIB)
$(LDFLAGS)
-o
usbled
$(SOURCES)
sw/usbled/usbled.c
0 → 100644
View file @
53985415
#include <stdio.h>
#include <usb.h>
#define LED_SET 0x11
int
main
()
{
static
usb_dev_handle
*
pDevH
=
NULL
;
// USB device handle
static
struct
usb_device
*
pDev
;
static
struct
usb_bus
*
pBus
;
int
led
=
0
;
usb_init
();
usb_find_busses
();
usb_find_devices
();
// Enumerate USB devices ...
for
(
pBus
=
usb_get_busses
();
pBus
;
pBus
=
pBus
->
next
)
{
for
(
pDev
=
pBus
->
devices
;
pDev
;
pDev
=
pDev
->
next
)
{
if
(
(
pDev
->
descriptor
.
idVendor
==
0x10C4
)
&&
(
pDev
->
descriptor
.
idProduct
==
0x00ff
)
)
{
pDevH
=
usb_open
(
pDev
);
if
(
pDevH
)
{
if
(
usb_set_configuration
(
pDevH
,
pDev
->
config
->
bConfigurationValue
)
!=
0
)
{
usb_close
(
pDevH
);
pDevH
=
NULL
;
printf
(
"FAIL: usb_set_configuration"
);
}
if
(
pDev
->
descriptor
.
idProduct
==
0x00ff
)
{
if
(
usb_claim_interface
(
pDevH
,
0
)
!=
0
)
{
usb_close
(
pDevH
);
pDevH
=
NULL
;
printf
(
"FAIL: usb_claim_interface"
);
}
}
}
}
}
}
while
(
1
)
{
led
^=
1
;
if
(
pDevH
)
{
usb_control_msg
(
pDevH
,
// Device handle
USB_ENDPOINT_IN
|
USB_TYPE_VENDOR
|
USB_RECIP_DEVICE
,
// bmRequestType
LED_SET
,
// bRequest
0
,
// wValue
led
,
// wIndex
NULL
,
// char *pBuffer
1
,
// wLength
1000
);
// Timeout (ms)
sleep
(
1
);
}
}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment