你好,我看芯片介紹有這么一段話, 主機端點包括輸出端點和輸入端點,輸出和輸入緩沖區(qū)各是64B,主機端點與端點2合用同一組緩沖區(qū),主機端點的輸出緩沖區(qū)就是端點2的上傳緩沖區(qū),主機端點的輸入緩沖區(qū)就是端點2的下傳緩沖區(qū)。 其中,CH375的端點0、端點1、端點2只用于USB設備方式,在USB主機方式下只需要用到主機端點。
想問的是,所謂的主機端點是怎么理解呢?端點號是多少呢?我在芯片作host實現(xiàn)打印機功能的代碼里面看到這樣一段: c=p_cfg_descr->endp_descr[0].bEndpointAddress; /* 第一個端點的地址 */ if ( c&0x80 ) endp_in_addr=c&0x0f; /* IN端點的地址 */ else { /* OUT端點 */ endp_out_addr=c&0x0f; endp_out_size=p_cfg_descr->endp_descr[0].wMaxPacketSize; /* 數(shù)據(jù)接收端點的最大包長度 */ } if ( p_cfg_descr->itf_descr.bNumEndpoints>=2 ) { /* 接口有兩個以上的端點 */ if ( p_cfg_descr->endp_descr[1].bDescriptorType==5 ) { /* 端點描述符 */ c=p_cfg_descr->endp_descr[1].bEndpointAddress; /* 第二個端點的地址 */ if ( c&0x80 ) endp_in_addr=c&0x0f; /* IN端點 */ else { /* OUT端點 */ endp_out_addr=c&0x0f; endp_out_size=p_cfg_descr->endp_descr[1].wMaxPacketSize; } } } 這里的第一個端點,第二個端點又怎么理解呢?跟端點1,端點2有什么關系嗎?謝謝!