当收到的下传数据长度为零时,为何要将收到的信息上传回去?

当收到的下传数据长度为零时,为何要将收到的信息上传回去? 是协议要求吗? 以下程序是外置固件的例程,下一段为回传程序。

CH375_EP2_DOWN: MOV A,#CMD_RD_USB_DATA ;将下传的数据读出,释放端点 CALL WR_CMD_TO_375 ;读命令发向CH375 MOVX A,@DPTR ;取出后续数据长度 MOV R4,A ;保存长度 JZ CH375_EP2_UP ;长度为0返回 MOV R5,A MOV R0,#CMD_BUFFER ;缓冲区首地址送R0 CH375_EP2_LOOP: MOVX A,@DPTR MOV @R0,A INC R0 DJNZ R5,CH375_EP2_LOOP ; 演示回传 CH375_EP2_UP: MOV A,#CMD_WR_USB_DATA7 ;演示回传数据 CALL WR_CMD_TO_375 MOV A,R4 MOVX @DPTR,A JZ CH375_EP2_UP_RET ;长度为0 MOV R0,#CMD_BUFFER ;缓冲区首地址送R0 CH375_EP2_UP_LOOP:MOV A,@R0 MOVX @DPTR,A INC R0 DJNZ R4,CH375_EP2_UP_LOOP CH375_EP2_UP_RET:RET

随便你,这只是演示例子,不是协议要求


谢谢


只有登录才能回复,可以选择微信账号登录