Estoy desarrollando una aplicación para microcontrolador con USB integrado. Se supone que la aplicación es lo más portátil posible, por lo que no puedo señalar a una familia en particular.
Estoy en el proceso de leer el descriptor de configuración de un dispositivo, sin embargo, es demasiado largo para caber en mi búfer interno. No puedo usar la memoria dinámica para esto, por lo que se debe asignar estáticamente un búfer para las transferencias de control y realmente quiero minimizar su tamaño dado que no se usará mucho. Así que asignarle un par de Kb solo para este descriptor de cfg no es una opción.
No lo he encontrado en el estándar, pero tal vez no me he visto lo suficientemente bien... ¿es posible dividir las solicitudes de control en varias? Por ejemplo, solicite 128 (o lo que sea) bytes del cfg desc, luego solicite otros 128 bytes del mismo descriptor, por supuesto, estos tendrían que devolverse con un desplazamiento de 128 para dar cuenta de los ya leídos, y así sucesivamente.
es posible?
Gracias a todos por su tiempo.
En lugar de solicitar el descriptor de configuración y reunir todos los descriptores de interfaz y punto final, puede solicitar los descriptores de uno en uno. Un descriptor de dispositivo tiene 18 bytes y los otros descriptores estándar son aún más pequeños. (Los descriptores de clase pueden ser más grandes, así que elija el más grande que necesite como tamaño de búfer). Deberá analizar los descriptores para averiguar qué más solicitar, pero eso no es mucho trabajo adicional. El descriptor del dispositivo proporciona el número de configuraciones, config proporciona el número de interfaces e interface proporciona el número de puntos finales y la clase.
aarond
aarond
elpato
aarond
elpato
aarond
elpato