最近在搞STC8H8K64U的USB功能,由官网下的STC8H实验箱程序中的“41-USB键盘设备通过P0口矩阵按键模拟小键盘功能”修改,官网案例中只有一个键盘的功能,只支持端点1上传,但想做一个复合键鼠,就要用到端点2上传数据
原官方案例的端点1数据上传程序为:
WriteReg(INDEX, 1);
for(i=0;i<8;i++)
{
WriteReg(FIFO1, HidInput[ i]);
}
WriteReg(INCSR1, INIPRDY);
改为端点2上传数据:
WriteReg(INDEX, 2);
for(i=0;i<8;i++)
{
WriteReg(FIFO2, HidInput[ i]);
}
WriteReg(INCSR1, INIPRDY);
理论上描述符虽然支持1个端点,但不影响我单片机强制发端点2,但改成端点2上传数据的程序就完全没动静了,中断不进,总线分析仪也抓不到东西,看了好久手册实在找不出原因,所以才来请教各位大神,希望大神们帮我解
工程文件放在附件里面
|