2019-04-11 03:48:35 +00:00
|
|
|
#ifndef __USB_H
|
|
|
|
#define __USB_H
|
|
|
|
|
2019-09-11 05:29:03 +00:00
|
|
|
#include <stdint.h>
|
|
|
|
|
2019-04-11 03:48:35 +00:00
|
|
|
#ifdef __cplusplus
|
|
|
|
extern "C" {
|
|
|
|
#endif
|
|
|
|
|
|
|
|
struct usb_setup_request;
|
|
|
|
|
|
|
|
void usb_isr(void);
|
|
|
|
void usb_init(void);
|
|
|
|
void usb_connect(void);
|
2019-05-01 21:08:30 +00:00
|
|
|
void usb_idle(void);
|
2019-04-11 03:48:35 +00:00
|
|
|
void usb_disconnect(void);
|
|
|
|
|
|
|
|
int usb_irq_happened(void);
|
|
|
|
void usb_setup(const struct usb_setup_request *setup);
|
2019-09-12 02:23:15 +00:00
|
|
|
void usb_send(uint8_t epno, const void *data, int total_count);
|
2019-11-22 00:03:35 +00:00
|
|
|
void usb_ack(uint8_t ep);
|
2019-09-11 05:29:03 +00:00
|
|
|
void usb_err(uint8_t ep);
|
2019-11-22 03:32:19 +00:00
|
|
|
int usb_recv(void *buffer, int buffer_len);
|
2019-04-11 03:48:35 +00:00
|
|
|
void usb_poll(void);
|
2019-04-22 04:02:33 +00:00
|
|
|
void usb_wait_for_send_done(void);
|
2019-09-11 05:29:03 +00:00
|
|
|
void usb_set_address(uint8_t new_address);
|
2019-04-11 03:48:35 +00:00
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
|
|
}
|
|
|
|
#endif
|
|
|
|
|
2019-01-01 14:37:14 +00:00
|
|
|
#endif
|