Open li460135301 opened 2 years ago
驱动可能没装好
另外检查R16的1M电阻是否焊接正确
驱动可能没装好
电阻测试1M是正常的,驱动没有安装会导致花屏吗?关键是电脑都没有弹出任何设备接入,设备管理器里面只有一个CP2102的USB串口,没有其他未安装驱动的设备,也就是根本没有检测到USB设备接入!非常感谢!
没有发送数据上电就是花屏啊,设备管理器里正常是会出现一个新设备需要按照README里面说的安装仓库的驱动才行
没有发送数据上电就是花屏啊,设备管理器里正常是会出现一个新设备需要按照README里面说的安装仓库的驱动才行
后来有显示驱动了,但是我已经禁用了系统强制驱动签名了(通过高级模式,按7禁用系统强制驱动签名),但是驱动还是安装失败,不管怎么样驱动都无法安装成功,不知道和系统版本是否有关,我的系统版本是win1021H1 专业版
跟系统没关系,就是导航到驱动文件夹就就可以安装啊,你指的安装失败是提示的啥
我的也一样!你的弄好了吗
可以分享一下编译好的HEX文件吗
可以分享一下编译好的HEX文件吗
同求,我的屏幕都没亮,想借用你的hex文件排除一下问题
装好了驱动,设备管理器上能看到ELECTRONBOT, 一样也是花屏。 R16电阻无误
我晚点更新一个单独的屏幕测试程序吧
装好了驱动,设备管理器上能看到ELECTRONBOT, 一样也是花屏。 R16电阻无误
花屏不是问题,那是因为初始化,内存里的噪点。我现在虽然把屏幕初始化的时候,用颜色清了屏幕,不是噪点了,但是
我是Mac系统,在USB串口里,能看到ElectronBot@PZH,并且能识别到480Mb/s,/dev/ 下也有对应设备。我把舵机的I2C传输屏蔽了,现在就是无法传输USB数据。。。
我更新了测试程序,不过是Windows下的,可以试一试,见README说明
我更新了测试程序,不过是Windows下的,可以试一试,见README说明
大佬,显示少几个dll,下载放在相应系统文件夹下后,运行sample 无法运行。是少了什么吗,谢谢
装好了驱动,设备管理器上能看到ELECTRONBOT, 一样也是花屏。 R16电阻无误
花屏不是问题,那是因为初始化,内存里的噪点。我现在虽然把屏幕初始化的时候,用颜色清了屏幕,不是噪点了,但是
- 主控板卡在:electron.SendUsbPacket(electron.usbBuffer.extraDataTx, 32);
- ElectronBotSDK-LowLevel里的Sample卡在:_obj->ReceivePacket(reinterpret_cast<uint8_t*>(_obj->extraDataBufferRx), 1, 32);
我是Mac系统,在USB串口里,能看到ElectronBot@PZH,并且能识别到480Mb/s,/dev/ 下也有对应设备。我把舵机的I2C传输屏蔽了,现在就是无法传输USB数据。。。
Windows下情况也和你一样,都开始怀疑买的24mhz的晶振是否有问题了
我更新了测试程序,不过是Windows下的,可以试一试,见README说明
大佬,显示少几个dll,下载放在相应系统文件夹下后,运行sample 无法运行。是少了什么吗,谢谢
DLL在文件夹里都提供了,不需要单独放到系统文件夹,确认一下你的操作系统是64位的?DLL下载可能不完整,重新下载一下仓库
装好了驱动,设备管理器上能看到ELECTRONBOT, 一样也是花屏。 R16电阻无误
花屏不是问题,那是因为初始化,内存里的噪点。我现在虽然把屏幕初始化的时候,用颜色清了屏幕,不是噪点了,但是
- 主控板卡在:electron.SendUsbPacket(electron.usbBuffer.extraDataTx, 32);
- ElectronBotSDK-LowLevel里的Sample卡在:_obj->ReceivePacket(reinterpret_cast<uint8_t*>(_obj->extraDataBufferRx), 1, 32);
我是Mac系统,在USB串口里,能看到ElectronBot@PZH,并且能识别到480Mb/s,/dev/ 下也有对应设备。我把舵机的I2C传输屏蔽了,现在就是无法传输USB数据。。。
Windows下情况也和你一样,都开始怀疑买的24mhz的晶振是否有问题了
用我新发的测试程序测试一下
、
我更新了测试程序,不过是Windows下的,可以试一试,见README说明
大佬,显示少几个dll,下载放在相应系统文件夹下后,运行sample 无法运行。是少了什么吗,谢谢
DLL在文件夹里都提供了,不需要单独放到系统文件夹,确认一下你的操作系统是64位的?DLL下载可能不完整,重新下载一下仓库
大佬,一开始缺少的是 vcruntime dll,是要放到system32文件夹里的,我的是64位 win10,刚重新下了一遍仓库,确认完整,故障依旧。另外,我还装了一遍opencv 库
以下方法适合明确知道自己在干什么的小伙伴使用,不清楚自己在干什么的小伙伴,不要看到这里就立刻动手。参考后面的这一条 https://github.com/peng-zhihui/ElectronBot/issues/122#issuecomment-1089684661
对于Windows上驱动装不上的同学,参考以下方法:
然后我的问题还是依旧,感觉不是软件方面的问题了。还是硬件哪里有问题了
下图是用稚晖君发布的固件
我自己改后打印信息的固件和之前发的图一样。
对于Windows上驱动装不上的同学,参考以下方法:
- libusb-win32-bin-1.2.6.0驱动安装方法: https://blog.csdn.net/yuelengloulan/article/details/71665213
- libusb-win32安装包: https://iweb.dl.sourceforge.net/project/libusb-win32/libusb-win32-releases/1.2.6.0/libusb-win32-bin-1.2.6.0.zip
然后我的问题还是依旧,感觉不是软件方面的问题了。还是硬件哪里有问题了
下图是用稚晖君发布的固件
我自己改后打印信息的固件和之前发的图一样。
这样装驱动我也试了,打开sample.exe显示connected和你一样 然后就闪退了,屏幕也没有显示
那你们应该是USB3300 PHY电路有点问题,确认一下板子的焊接,我最开始遇到类似的情况经检查是晶振的1M电阻引起的。
不过既然设备管理器能枚举出来说明应该也没啥问题啊,而且看你们的图设备连接也是正常的,你们看看PID和VID是否正常(0x8023和0x1001)
~那你们应该是USB3300 PHY电路有点问题,确认一下板子的焊接,我最开始遇到类似的情况经检查是晶振的1M电阻引起的。~ 不过既然设备管理器能枚举出来说明应该也没啥问题啊,而且看你们的图设备连接也是正常的,你们看看PID和VID是否正常(0x8023和0x1001)
看起来应该是这样,虽然不工作,没想到这样竟然也能识别 (。 ́︿ ̀。)。 PID和VID是正常的,我的能连上,但是不能发数据。
有调试环境的话,在固件的CDC_Receive_HS函数里打个断点,看能不能接收到主机发来的USB数据包
有调试环境的话,在固件的CDC_Receive_HS函数里打个断点,看能不能接收到主机发来的USB数据包
恐怕还没到主机发送数据的地步。我在mac上打断电给LowLevel的Sample,发现卡在ElectronLowLevel::SyncTask里的第一个ReceivePacket从机的32字节的位置,返回结果总是 -2。打印的是-2,实际打断点,是uint32的4294967294
那我还是怀疑是驱动安装的问题...设备管理器卸载了设备(勾选卸载驱动)然后按我仓库的说明重新安装一遍我提供的驱动?此外测试的时候最好是拔了USB线重新插一下再运行电脑上的软件,避免出现奇怪的问题
那我还是怀疑是驱动安装的问题...设备管理器卸载了设备(勾选卸载驱动)然后按我仓库的说明重新安装一遍我提供的驱动?此外测试的时候最好是拔了USB线重新插一下再运行电脑上的软件,避免出现奇怪的问题
请问下,为什么 ElectronBot.inf 里的 DeviceId 是 VID_0483&PID_5740,ElectronBot@PZH.inf 里的是 VID_1001&PID_8023?
一个不同的小细节: 我用libusb-win32的驱动安装包,识别出来的DeviceId是 VID_1001&PID_8023&MI_00 和 VID_1001&PID_8023&MI_01。
我运行sample 一直 0xc000007b 报错,无法运行。
我运行sample 一直 0xc000007b 报错,无法运行。
百度一下,安装系统缺少的DLL
那我还是怀疑是驱动安装的问题...设备管理器卸载了设备(勾选卸载驱动)然后按我仓库的说明重新安装一遍我提供的驱动?此外测试的时候最好是拔了USB线重新插一下再运行电脑上的软件,避免出现奇怪的问题
请问下,为什么 ElectronBot.inf 里的 DeviceId 是 VID_0483&PID_5740,ElectronBot@PZH.inf 里的是 VID_1001&PID_8023?
一个不同的小细节: 我用libusb-win32的驱动安装包,识别出来的DeviceId是 VID_1001&PID_8023&MI_00 和 VID_1001&PID_8023&MI_01。
前者是多余的,安装驱动的时候会匹配后者,正常安装就行
对于Windows上驱动装不上的同学,参考以下方法:
- libusb-win32-bin-1.2.6.0驱动安装方法: https://blog.csdn.net/yuelengloulan/article/details/71665213
- libusb-win32安装包: https://iweb.dl.sourceforge.net/project/libusb-win32/libusb-win32-releases/1.2.6.0/libusb-win32-bin-1.2.6.0.zip
然后我的问题还是依旧,感觉不是软件方面的问题了。还是硬件哪里有问题了 下图是用稚晖君发布的固件 我自己改后打印信息的固件和之前发的图一样。
这样装驱动我也试了,打开sample.exe显示connected和你一样 然后就闪退了,屏幕也没有显示
测试过也一样出现这种情况
关于DLL的下载,可以在这个网站中下载https://www.dll-files.com/
关于DLL的下载,可以在这个网站中下载https://www.dll-files.com/
正常驱动信息是这样的,你看看是不是一样?
关于DLL的下载,可以在这个网站中下载https://www.dll-files.com/
正常驱动信息是这样的,你看看是不是一样?
就这个后面的&MI_00和&MI_01的不同,导致BotDriver里的驱动就算装了也没反应,难道是芯片有区别? 就在没装驱动前,插上以后也是会出现两个设备,一个是COM口,一个显示ElectronBot@PZH (驱动没正常启动),硬件的ID就是我截图的这两个
关于DLL的下载,可以在这个网站中下载https://www.dll-files.com/
正常驱动信息是这样的,你看看是不是一样?
就这个后面的&MI_00和&MI_01的不同,导致BotDriver里的驱动就算装了也没反应,难道是芯片有区别? 就在没装驱动前,插上以后也是会出现两个设备,一个是COM口,一个显示ElectronBot@PZH (驱动没正常启动),硬件的ID就是我截图的这两个 一模一样
我没有在描述符里配置虚拟串口啊,你这个是不是驱动冲突了?设备管理器里面选择显示隐藏设备,卸载所有libusb相关的设备顺便勾选卸载驱动,然后重新安装一下看看,另外板子固件代码确认没改过?用STM32CubeMX重新生成代码的话会覆盖USB相关配置的,最好用我提供的测试hex固件直接烧录
我改了下代码,将DeviceClass和SubClass都改成02,SubClass也可以改为0x00
在DeviceClass=0x02的时候,至于SubClass,不管是0x00还是0x02,都可以被识别为串口,同时硬件ID也不带有&MI_0X的了,并且也不会出现2个设备。
接下来我设置DeviceClass=0x02,DeviceSubClass=0x00,然后烧录固件 首先禁用了驱动签名重启后,在INF上右键安装,按提示安装完成后,更新驱动
让我从计算机上的可用驱动列表中选取
选择刚才装好的驱动
安装完成
关闭后会自动刷新,最终显示成这样
然后从串口打印的数据来看,可以通讯了。F405也收到数据了,但是屏幕仍然没有图像
Good,是个很大的进步,再接再厉
PS:经过进一步的测试,只要DeviceClass=0x02,不管是DeviceSubClass是0x00,还是0x02,F405都可以收到数据。只要DeviceClass=0x00,那就会出现2个设备,且F405都不能收到数据。
我没有在描述符里配置虚拟串口啊,你这个是不是驱动冲突了?设备管理器里面选择显示隐藏设备,卸载所有libusb相关的设备顺便勾选卸载驱动,然后重新安装一下看看,另外板子固件代码确认没改过?用STM32CubeMX重新生成代码的话会覆盖USB相关配置的,最好用我提供的测试hex固件直接烧录
用hex烧录也是会有个串口
我没有在描述符里配置虚拟串口啊,你这个是不是驱动冲突了?设备管理器里面选择显示隐藏设备,卸载所有libusb相关的设备顺便勾选卸载驱动,然后重新安装一下看看,另外板子固件代码确认没改过?用STM32CubeMX重新生成代码的话会覆盖USB相关配置的,最好用我提供的测试hex固件直接烧录
我用 6.Tests/TestDisplayUSB/_Released/STM32F4 Firmware/ElectronBot-fw.hex 这个文件,也烧录过测试,同时也把所有安装的驱动都删了。也确实会出现2个设备,硬件ID会多出 &MI_0X 的部分。
昨天睡觉前,我用STM32CubeMX重新生成了工程,然后用 FileMerge 工具一个文件一个文件,一行一行的比对(不过MX的固件迁移到最新了。但影响不大),最终发现是描述符的DeviceClass和SubClass不同。MX默认生成的都是0x02。然后会显示一个虚拟串口。如果我把这个也都改成0x00,那么MX新生成的代码烧录后,也会出现两个设备
顺带一提,出现两个设备的时候,即使把ElectronBot@PZH.inf里的DeviceId改成一样的,驱动也装上了,但是F405那边也仍然无法收到数据。
大佬们加油,好多人都遇到了这个问题,希望能出来一个完美的解法,装不上驱动,剩下的什么事情都干不了。
老哥用你的方法修改0x02装上驱动!运行sample.exe我这里成功显示了(改的6文件夹的程序的0x02)感谢大哥
![29959b8086909d9c33932a1bd1324d3] 老哥用你的方法修改0x02装上驱动!运行sample.exe我这里成功显示了(改的6文件夹的程序的0x02)感谢大哥
可恶啊,我还没成功啊 (╯‵□′)╯︵┻━┻
还是恭喜了
![29959b8086909d9c33932a1bd1324d3] 老哥用你的方法修改0x02装上驱动!运行sample.exe我这里成功显示了(改的6文件夹的程序的0x02)感谢大哥
可恶啊,我还没成功啊 (╯‵□′)╯︵┻━┻
还是恭喜了
我也好了,改USB 设备类标识符,的确有效,感谢 。
我用了6.Test的固件,也终于出来了,不容易啊 Y(^_^)Y
好吧,我提交一个补丁把默认描述符修改一下~
调试过程有其他优化或者简化调试的工具也欢迎提交pr
目前我在mac上还不成功。。。真是奇怪。初步估计,用的libusb的版本不对。
我运行sample 一直 0xc000007b 报错,无法运行。
老兄你这个问题解决了吗? 我安装了各种运行库也无济于事
我运行sample 一直 0xc000007b 报错,无法运行。
老兄你这个问题解决了吗? 我安装了各种运行库也无济于事
我也没有解决,缺失的dll都装了,用工具扫了一下发现有两个dll不对,目前还没有搞好 Dependencies.zip 你们可以也用这工具扫一下看看,打开之后把sample.exe拖进去就行,另外这工具不支持WinXP
我运行sample 一直 0xc000007b 报错,无法运行。
老兄你这个问题解决了吗? 我安装了各种运行库也无济于事
我也没有解决,缺失的dll都装了,用工具扫了一下发现有两个dll不对,目前还没有搞好 Dependencies.zip 你们可以也用这工具扫一下看看,打开之后把sample.exe拖进去就行,另外这工具不支持WinXP
伙计 我搞定了 我本来在win7下 安装了各种运行库 都要崩溃了 你这个工具我也试过了。PE文件结构都快被拆了,我也看了PE导入表信息,然后我直接装了VS2022 就不报错了 然后出现提示 读娶不到happy. 我换了台win10 一样安装了VS2022 正常了。具体原因不祥
我运行sample 一直 0xc000007b 报错,无法运行。
老兄你这个问题解决了吗? 我安装了各种运行库也无济于事
我也没有解决,缺失的dll都装了,用工具扫了一下发现有两个dll不对,目前还没有搞好 Dependencies.zip 你们可以也用这工具扫一下看看,打开之后把sample.exe拖进去就行,另外这工具不支持WinXP
伙计 我搞定了 我本来在win7下 安装了各种运行库 都要崩溃了 你这个工具我也试过了。PE文件结构都快被拆了,我也看了PE导入表信息,然后我直接装了VS2022 就不报错了 然后出现提示 读娶不到happy. 我换了台win10 一样安装了VS2022 正常了。具体原因不祥
可能是因为咱们自己安装的dll版本问题,然后vs2022用正确的dll给覆盖了,等我装个vs试试
程序测试的时候发现屏幕初始化后花屏,而且程序卡在45行,electron.SendUsbPacket函数,返回值一直USBD_BUSY。感觉是硬件问题,但是USB3300我换过,屏幕也换过!问题一样! 显示效果如下:
硬件测试了,没有测试出问题啊!,这个情况一般是什么问题导致?