最近在搞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上傳數據的程序就完全沒動靜了,中斷不進,總線分析儀也抓不到東西,看了好久手冊實在找不出原因,所以才來請教各位大神,希望大神們幫我解
工程文件放在附件里面
|