是这STM32的USB最后一篇文章,之后我们就去看一下主机USB CORE是如何与STM32进行数据交互的。
关于STM32大概讲解,如果不懂,看一下单片机与C语言可能有助于你的理解。
开始:
STM32 USB枚举主要函数是:
Setup0_Process(); //Get the device request data and dispatch to individual process
//获取设备请求数据并分派给各个进程
流程如下:
USB_Istr();->
CTR_LP();->
Setup0_Process();->
Data_Setup0(); //Proceed the processing of setup request with data stage
各个函数就不展开,如果需要源代码可以百度搜索一下:STM32F103 USB开发,我拿到的是一个HID通信,不过其它的都大同小异。
另外可以在Setup0_Process();打印接收数据,可以看到USB HOST传输过来的数据。
这部分可以直接看源代码,问题应该不大。
接下来我们进入Android7.0看一下他的内核是如何与STM32进行USB HID通信的。
思路如下:
APP->JNI-内核驱动------------------------>STM32 USB。