Uma ferramenta semelhante a um assistente pode ser atraente na primeira vez em que você a usa, mas fica no caminho. Um método melhor é uma estrutura decente dos descritores na memória e algumas macros úteis e outra lógica de pré-processamento, para que você possa fornecer as informações em um nível superior e os bytes e bits corretos sejam preenchidos automaticamente.
Minha pilha USB para o PIC 18 funciona assim. Você pode instalar isso e várias outras coisas na minha página de downloads de software . A configuração estática do USB é definida em dois arquivos. Os modelos para esses são nomeados QQQ_USB.INS.ASPIC e QQQ_USB0.INS.ASPIC no diretório SOURCE> PIC. Primeiro, você define o VID / PID, quais terminais você usa e quais tipos de transferência por terminal no arquivo usb.ins.aspic. Em seguida, você modifica os descritores em usb0.ins.aspic com o pouco que precisa personalizar. Como ele já conhece coisas como os tipos de transferência e tamanhos de buffer, você deixa esses símbolos em paz e apenas altera o que é exclusivo para sua implementação. Na maioria dos casos, isso apenas ajusta o nome do fabricante e o nome do produto. Você escreve como strings comuns e uma macro cuida da formatação correta.