Collaboration diagram for USB endpoint drivers:
![]() |
Defines | |
#define | Usb_select_endpoint(ep) (UENUM = (U8)ep ) |
selects the endpoint number to interface with the CPU | |
#define | Usb_reset_endpoint(ep) (UERST = 1 << (U8)ep, UERST = 0) |
resets the selected endpoint | |
#define | Usb_enable_endpoint() (UECONX |= (1<<EPEN)) |
enables the current endpoint | |
#define | Usb_enable_stall_handshake() (UECONX |= (1<<STALLRQ)) |
enables the STALL handshake for the next transaction | |
#define | Usb_reset_data_toggle() (UECONX |= (1<<RSTDT)) |
resets the data toggle sequence | |
#define | Usb_disable_endpoint() (UECONX &= ~(1<<EPEN)) |
disables the current endpoint | |
#define | Usb_disable_stall_handshake() (UECONX |= (1<<STALLRQC)) |
disables the STALL handshake | |
#define | Usb_select_epnum_for_cpu() (UECONX &= ~(1<<EPNUMS)) |
selects endpoint interface on CPU | |
#define | Is_usb_endpoint_enabled() ((UECONX & (1<<EPEN)) ? TRUE : FALSE) |
tests if the current endpoint is enabled | |
#define | Is_usb_endpoint_stall_requested() ((UECONX & (1<<STALLRQ)) ? TRUE : FALSE) |
tests if STALL handshake request is running | |
#define | Usb_configure_endpoint_type(type) (UECFG0X = (UECFG0X & ~(MSK_EPTYPE)) | ((U8)type << 6)) |
configures the current endpoint | |
#define | Usb_configure_endpoint_direction(dir) (UECFG0X = (UECFG0X & ~(1<<EPDIR)) | ((U8)dir)) |
configures the current endpoint direction | |
#define | Usb_configure_endpoint_size(size) (UECFG1X = (UECFG1X & ~MSK_EPSIZE) | ((U8)size << 4)) |
configures the current endpoint size | |
#define | Usb_configure_endpoint_bank(bank) (UECFG1X = (UECFG1X & ~MSK_EPBK) | ((U8)bank << 2)) |
configures the current endpoint number of banks | |
#define | Usb_allocate_memory() (UECFG1X |= (1<<ALLOC)) |
allocates the current configuration in DPRAM memory | |
#define | Usb_unallocate_memory() (UECFG1X &= ~(1<<ALLOC)) |
un-allocates the current configuration in DPRAM memory | |
#define | Usb_ack_overflow_interrupt() (UESTA0X &= ~(1<<OVERFI)) |
acks endpoint overflow interrupt | |
#define | Usb_ack_underflow_interrupt() (UESTA0X &= ~(1<<UNDERFI)) |
acks endpoint underflow memory | |
#define | Usb_ack_zlp() (UESTA0X &= ~(1<<ZLPSEEN)) |
acks Zero Length Packet received | |
#define | Usb_data_toggle() ((UESTA0X&MSK_DTSEQ) >> 2) |
returns data toggle | |
#define | Usb_nb_busy_bank() (UESTA0X & MSK_NBUSYBK) |
returns the number of busy banks | |
#define | Is_usb_one_bank_busy() ((UESTA0X & MSK_NBUSYBK) == 0 ? FALSE : TRUE) |
tests if at least one bank is busy | |
#define | Is_endpoint_configured() ((UESTA0X & (1<<CFGOK)) ? TRUE : FALSE) |
tests if current endpoint is configured | |
#define | Is_usb_overflow() ((UESTA0X & (1<<OVERFI)) ? TRUE : FALSE) |
tests if an overflows occurs | |
#define | Is_usb_underflow() ((UESTA0X & (1<<UNDERFI)) ? TRUE : FALSE) |
tests if an underflow occurs | |
#define | Is_usb_zlp() ((UESTA0X & (1<<ZLPSEEN)) ? TRUE : FALSE) |
tests if a ZLP has been detected | |
#define | Usb_control_direction() ((UESTA1X & (1<<CTRLDIR)) >> 2) |
returns the control direction | |
#define | Usb_current_bank() ( UESTA1X & MSK_CURRBK) |
returns the number of the current bank | |
#define | Usb_ack_fifocon() (UEINTX &= ~(1<<FIFOCON)) |
clears FIFOCON bit | |
#define | Usb_ack_nak_in() (UEINTX &= ~(1<<NAKINI)) |
acks NAK IN received | |
#define | Usb_ack_nak_out() (UEINTX &= ~(1<<NAKOUTI)) |
acks NAK OUT received | |
#define | Usb_ack_receive_setup() (UEINTX &= ~(1<<RXSTPI)) |
acks receive SETUP | |
#define | Usb_ack_receive_out() (UEINTX &= ~(1<<RXOUTI), Usb_ack_fifocon()) |
acks reveive OUT | |
#define | Usb_ack_stalled() (MSK_STALLEDI= 0) |
acks STALL sent | |
#define | Usb_ack_in_ready() (UEINTX &= ~(1<<TXINI), Usb_ack_fifocon()) |
acks IN ready | |
#define | Usb_kill_last_in_bank() (UENTTX |= (1<<RXOUTI)) |
Kills last bank. | |
#define | Is_usb_read_enabled() (UEINTX&(1<<RWAL)) |
tests if endpoint read allowed | |
#define | Is_usb_write_enabled() (UEINTX&(1<<RWAL)) |
tests if endpoint write allowed | |
#define | Is_usb_read_control_enabled() (UEINTX&(1<<TXINI)) |
tests if read allowed on control endpoint | |
#define | Is_usb_receive_setup() (UEINTX&(1<<RXSTPI)) |
tests if SETUP received | |
#define | Is_usb_receive_out() (UEINTX&(1<<RXOUTI)) |
tests if OUT received | |
#define | Is_usb_in_ready() (UEINTX&(1<<TXINI)) |
tests if IN ready | |
#define | Usb_send_in() (UEINTX &= ~(1<<FIFOCON)) |
sends IN | |
#define | Usb_send_control_in() (UEINTX &= ~(1<<TXINI)) |
sends IN on control endpoint | |
#define | Usb_free_out_bank() (UEINTX &= ~(1<<FIFOCON)) |
frees OUT bank | |
#define | Usb_ack_control_out() (UEINTX &= ~(1<<RXOUTI)) |
acks OUT on control endpoint | |
#define | Usb_enable_flow_error_interrupt() (UEIENX |= (1<<FLERRE)) |
enables flow error interrupt | |
#define | Usb_enable_nak_in_interrupt() (UEIENX |= (1<<NAKINE)) |
enables NAK IN interrupt | |
#define | Usb_enable_nak_out_interrupt() (UEIENX |= (1<<NAKOUTE)) |
enables NAK OUT interrupt | |
#define | Usb_enable_receive_setup_interrupt() (UEIENX |= (1<<RXSTPE)) |
enables receive SETUP interrupt | |
#define | Usb_enable_receive_out_interrupt() (UEIENX |= (1<<RXOUTE)) |
enables receive OUT interrupt | |
#define | Usb_enable_stalled_interrupt() (UEIENX |= (1<<STALLEDE)) |
enables STALL sent interrupt | |
#define | Usb_enable_in_ready_interrupt() (UEIENX |= (1<<TXIN)) |
enables IN ready interrupt | |
#define | Usb_disable_flow_error_interrupt() (UEIENX &= ~(1<<FLERRE)) |
disables flow error interrupt | |
#define | Usb_disable_nak_in_interrupt() (UEIENX &= ~(1<<NAKINE)) |
disables NAK IN interrupt | |
#define | Usb_disable_nak_out_interrupt() (UEIENX &= ~(1<<NAKOUTE)) |
disables NAK OUT interrupt | |
#define | Usb_disable_receive_setup_interrupt() (UEIENX &= ~(1<<RXSTPE)) |
disables receive SETUP interrupt | |
#define | Usb_disable_receive_out_interrupt() (UEIENX &= ~(1<<RXOUTE)) |
disables receive OUT interrupt | |
#define | Usb_disable_stalled_interrupt() (UEIENX &= ~(1<<STALLEDE)) |
disables STALL sent interrupt | |
#define | Usb_disable_in_ready_interrupt() (UEIENX &= ~(1<<TXIN)) |
disables IN ready interrupt | |
#define | Usb_read_byte() (UEDATX) |
returns FIFO byte for current endpoint | |
#define | Usb_write_byte(byte) (UEDATX = (U8)byte) |
writes byte in FIFO for current endpoint | |
#define | Usb_byte_counter() ((((U16)UEBCHX) << 8) | (UEBCLX)) |
returns number of bytes in FIFO current endpoint (16 bits) | |
#define | Usb_byte_counter_8() ((U8)UEBCLX) |
returns number of bytes in FIFO current endpoint (8 bits) | |
#define | Usb_interrupt_flags() (UEINT != 0x00) |
tests the general endpoint interrupt flags | |
#define | Is_usb_endpoint_event() (Usb_interrupt_flags()) |
tests the general endpoint interrupt flags | |
#define | Usb_select_ep_for_cpu(ep) (Usb_select_epnum_for_cpu(), Usb_select_endpoint(ep)) |
|
selects the endpoint number to interface with the CPU
Definition at line 426 of file usb_drv.h. Referenced by hid_task(), usb_clear_feature(), usb_device_task(), usb_halt_endpoint(), usb_init_device(), usb_read_packet(), usb_send_packet(), and usb_set_feature(). |
|
resets the selected endpoint
Definition at line 429 of file usb_drv.h. Referenced by usb_clear_feature(), and usb_device_task(). |
|
enables the current endpoint
Definition at line 432 of file usb_drv.h. Referenced by usb_config_ep(). |
|
enables the STALL handshake for the next transaction
Definition at line 434 of file usb_drv.h. Referenced by usb_clear_feature(), usb_get_descriptor(), usb_get_interface(), usb_get_status(), usb_halt_endpoint(), usb_process_request(), usb_set_configuration(), and usb_set_feature(). |
|
resets the data toggle sequence
Definition at line 436 of file usb_drv.h. Referenced by usb_clear_feature(). |
|
disables the current endpoint
|
|
disables the STALL handshake
Definition at line 440 of file usb_drv.h. Referenced by usb_clear_feature(). |
|
selects endpoint interface on CPU
|
|
tests if the current endpoint is enabled
Definition at line 444 of file usb_drv.h. Referenced by usb_clear_feature(), usb_init_device(), and usb_set_feature(). |
|
tests if STALL handshake request is running
|
|
configures the current endpoint
|
|
configures the current endpoint direction
|
|
configures the current endpoint size
|
|
configures the current endpoint number of banks
|
|
allocates the current configuration in DPRAM memory
Definition at line 458 of file usb_drv.h. Referenced by usb_config_ep(). |
|
un-allocates the current configuration in DPRAM memory
|
|
acks endpoint overflow interrupt
|
|
acks endpoint underflow memory
|
|
acks Zero Length Packet received
|
|
returns data toggle
|
|
returns the number of busy banks
|
|
tests if at least one bank is busy
|
|
tests if current endpoint is configured
Definition at line 475 of file usb_drv.h. Referenced by usb_config_ep(). |
|
tests if an overflows occurs
|
|
tests if an underflow occurs
|
|
tests if a ZLP has been detected
|
|
returns the control direction
|
|
returns the number of the current bank
|
|
clears FIFOCON bit
Definition at line 489 of file usb_drv.h. Referenced by hid_task(). |
|
acks NAK IN received
|
|
acks NAK OUT received
|
|
acks receive SETUP
Definition at line 495 of file usb_drv.h. Referenced by hid_get_report(), hid_set_report(), usb_clear_feature(), usb_get_configuration(), usb_get_descriptor(), usb_get_interface(), usb_get_status(), usb_hid_get_interface(), usb_hid_set_idle(), usb_process_request(), usb_set_address(), usb_set_configuration(), usb_set_feature(), and usb_set_interface(). |
|
acks reveive OUT
Definition at line 497 of file usb_drv.h. Referenced by hid_get_report(), hid_set_report(), hid_task(), usb_get_configuration(), usb_get_descriptor(), and usb_get_status(). |
|
acks STALL sent
|
|
acks IN ready
Definition at line 501 of file usb_drv.h. Referenced by usb_get_configuration(). |
|
Kills last bank.
|
|
tests if endpoint read allowed
Definition at line 505 of file usb_drv.h. Referenced by usb_read_packet(). |
|
tests if endpoint write allowed
Definition at line 507 of file usb_drv.h. Referenced by usb_send_packet(). |
|
tests if read allowed on control endpoint
Definition at line 509 of file usb_drv.h. Referenced by hid_get_report(), and usb_get_descriptor(). |
|
tests if SETUP received
Definition at line 511 of file usb_drv.h. Referenced by usb_device_task(). |
|
tests if OUT received
Definition at line 513 of file usb_drv.h. Referenced by hid_get_report(), hid_set_report(), hid_task(), usb_get_configuration(), usb_get_descriptor(), and usb_get_status(). |
|
tests if IN ready
Definition at line 515 of file usb_drv.h. Referenced by hid_task(), usb_hid_get_interface(), usb_hid_set_idle(), usb_set_address(), and usb_set_interface(). |
|
sends IN
|
|
sends IN on control endpoint
Definition at line 519 of file usb_drv.h. Referenced by hid_get_report(), hid_set_report(), usb_clear_feature(), usb_get_descriptor(), usb_get_status(), usb_hid_get_interface(), usb_hid_set_idle(), usb_set_address(), usb_set_configuration(), usb_set_feature(), and usb_set_interface(). |
|
frees OUT bank
|
|
acks OUT on control endpoint
|
|
enables flow error interrupt
|
|
enables NAK IN interrupt
|
|
enables NAK OUT interrupt
|
|
enables receive SETUP interrupt
|
|
enables receive OUT interrupt
|
|
enables STALL sent interrupt
|
|
enables IN ready interrupt
|
|
disables flow error interrupt
|
|
disables NAK IN interrupt
|
|
disables NAK OUT interrupt
|
|
disables receive SETUP interrupt
|
|
disables receive OUT interrupt
|
|
disables STALL sent interrupt
|
|
disables IN ready interrupt
|
|
returns FIFO byte for current endpoint
Definition at line 555 of file usb_drv.h. Referenced by hid_get_report(), hid_task(), usb_clear_feature(), usb_get_descriptor(), usb_get_status(), usb_hid_get_interface(), usb_hid_set_idle(), usb_process_request(), usb_read_packet(), usb_set_address(), usb_set_configuration(), usb_set_feature(), and usb_user_read_request(). |
|
writes byte in FIFO for current endpoint
Definition at line 557 of file usb_drv.h. Referenced by hid_get_report(), hid_task(), usb_get_configuration(), usb_get_descriptor(), usb_get_status(), and usb_send_packet(). |
|
returns number of bytes in FIFO current endpoint (16 bits)
|
|
returns number of bytes in FIFO current endpoint (8 bits)
|
|
tests the general endpoint interrupt flags
Definition at line 565 of file usb_drv.h. Referenced by usb_select_enpoint_interrupt(). |
|
tests the general endpoint interrupt flags
|
|
|