📄 usbd_out.c.svn-base
字号:
#include "usbd.h"
#include "usb.h"
#ifdef _DEBUG
#include <stdio.h>
#endif /* _DEBUG */
#define CLR_EP3_OUT_PKT_READY() OUT_CSR1_REG = (out_csr3 & (~ EPO_WR_BITS)\
& (~EPO_OUT_PKT_READY) )
#define SET_EP3_SEND_STALL() OUT_CSR1_REG = (out_csr3 & (~EPO_WR_BITS)\
| EPO_SEND_STALL) )
#define CLR_EP3_SENT_STALL() OUT_CSR1_REG = (out_csr3 & (~EPO_WR_BITS)\
& (~EPO_SENT_STALL) )
#define FLUSH_EP3_FIFO() OUT_CSR1_REG = (out_csr3 & (~EPO_WR_BITS)\
| EPO_FIFO_FLUSH) )
unsigned char ep3_buf[EP3_PKT_SIZE];
static unsigned char temp_buf[64+1];
void
ep3_handler(void)
{
unsigned char out_csr3;
int fifo_cnt;
int i;
INDEX_REG = 3;
out_csr3 = OUT_CSR1_REG;
if(out_csr3 & EPO_OUT_PKT_READY)
{
fifo_cnt = OUT_FIFO_CNT1_REG;
read_pkt_ep3(ep3_buf, fifo_cnt);
delay(1);
CLR_EP3_OUT_PKT_READY();
for(i = 0; i < fifo_cnt; i++)
{
printf("%x\n", ep3_buf[i]);
}
return;
}
if(out_csr3 & EPO_SENT_STALL)
{
CLR_EP3_SENT_STALL();
return;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -