【英飞凌PSOC 62S4 PIONEER KIT 测评】——USB
根据手册,PSOC 62S4 PIONEER KIT拥有一个USB全速设备接口;该设备最多可以有8个端点,一个控制端点,7个数据端点;支持四种数据传输协议:控制传输(Control)、中断传输(Interrupt)、批量传输(Bulk)、等时传输(Isochronous);提供了一个512字节的SRAM缓冲区,并支持DMA;符合USB2.0规范;支持USB挂起、恢复和删除唤醒;支持三种逻辑传输方式:CUP(非DMA)模式(模式1)、手动DMA模式(模式2)、自动DMA模式(模式3);支持最大数据包大小:512字节(使用模式1和模式2)、1023字节(使用模式3的同步传输)。
Hardware Abstraction Layer (HAL)
1.USB初始化cyhal_usb_dev_init()
其中,cyhal_usb_dev_t结构体为
其中,cyhal_syspm_callback_data_t结构体为
其中,(1)cyhal_syspm_callback_state_t枚举为
(2)cyhal_syspm_callback_mode_t枚举为
3.USB连接主机cyhal_usb_dev_connect()
4.USB注册事件回调cyhal_usb_dev_register_event_callback()
其中,cyhal_usb_dev_event_t枚举为
1.端点添加cyhal_usb_dev_endpoint_add()
其中,cyhal_usb_dev_ep_type_t枚举为
注意:①当enable参数为false,不关心端点的类型为什么
②这个函数不能被用来配置端点0(控制端点)
2.注册端点回调cyhal_usb_dev_register_endpoint_callback()
Peripheral driver library(PDL)
其中,cy_stc_usbfs_dev_drv_config_t结构体为
其中,(1)cy_en_usbfs_dev_drv_ep_management_mode_t枚举为
(2)cy_stc_usbfs_dev_drv_dma_config_t结构体为
(3)cy_en_usbfs_dev_ep_access_t枚举为
注意:在用户自定义的中断服务线程中必须调用该函数。
其中,cy_stc_usb_dev_ep_config_t结构体为
注意:当USB进入深度睡眠时,被唤醒后,其输入输出缓冲区中的数据将丢失。