学科基地网站建设,教务管理系统可行性研究报告,做网站怎么兼容所有浏览器,厦门关键词排名seo昨天的文章晚上读内核代码有人评论说好像说了一些什么#xff0c;好像又没有说什么#xff0c;所以我到底是在说什么呢#xff1f;因为今天已经把内核修改好了#xff0c;自己也测试了#xff0c;所以这次好好说下#xff0c;我到底是说了什么#xff0c;又做了什么。—…昨天的文章晚上读内核代码有人评论说好像说了一些什么好像又没有说什么所以我到底是在说什么呢因为今天已经把内核修改好了自己也测试了所以这次好好说下我到底是说了什么又做了什么。——问题是什么还是从HID来说上面留言说的没问题USB嘛不就是一个发送一个接口设备到主机通过in端口这个没问题。在HID低版本的时候用的是endpoint 0端口也不能说是低版本即使在高版本也是可以用endpoint 0端口的「不同之处在于低版本只有endpoint 0」我也拿了一些竞品的产品来看他们也是可以通过endpoint 0来发送信息给设备端的。问题是我们用的RK方案打开了out端点后不可以。其他产品在打开out端口的时候也是可以用endpoint 0 发送数据到设备的。为什么我揪着这个endpoint 0发送呢是因为测试发现通过这个端口可以使用set report 函数用这个函数来发送消息不会出现偶发的超时问题。RK是怎么回复的呢他们说他们提供的方案是用endpoint 0的都不会有问题。而且看了内核代码确实是配置想用哪个就用哪个用户自己选择用了out endpoint 0 就用不了了。人家代码也是写得很清楚了就是更子的。——那我们为什么不直接用RK的方案直接用endpoint 0 就好了直接用endpoint 0我在之前的文章也说了这样就可以兼容MAC的电脑也不会出现一些乱七八糟可能性的问题。但是问题是我们的应用程序开发的很多功能都已经实现都是用的out端点包的长度也是1024 这方案一搞下去那所有人都要重写代码重新测试了。—— 后面怎么修改了因为如果加上设备是可以调用HOST的setreport接口的我要做的无非就是在这里判断下数据指令然后传给应用程序就好了。问题就出在这里usb的一些结构体如果没有好好写就可能影响到系统的东西。OUT端点写入数据的时候是直接用到req结构体的这段代码在out端点接收没有问题但是放到setreport部分来处理就出现了问题。setreport的处理不一样他给HOST来的数据在内核重新分配了空间。然后就针对这些不同的逻辑修改修改。细节就不说了内核代码不像应用代码应用的调试是比较方便的内核的调试涉及硬件设备就不同了而且接口的处理也会不同稍不注意引起的空指针问题整个系统就挂了应用还可以用守护进程拉起来内核就不行只能重启。不过内核都是C看起来还是比较舒服的。就这些参考https://blog.csdn.net/zqixiao_09/article/details/52973392