Arduino驱动错误的一般解决方法

Author Avatar
$H_P? Jan 27, 2018
  • Read this article on other devices

Arduino系列和衍生版种类特别多,每个人的电脑配置也不一样。结果是经常板子到家之后,插上电脑发现无法识别。鉴于开发板的性质,退换申诉困难,客服又一般采取不理不睬的态度没有技术支持。

又能怎么办?只能靠自己呗。

先排除其他原因

板子连接电脑没反应,首先打开设备管理器大概是下面这个样子,出现Unknown Device

Fig 1

这时候一般操作是:

  1. 排除特殊芯片,例如CH340,CP210等芯片,看一下板子是否装了这种芯片,百度搜索下载各自的驱动即可。
  2. Arduino IDE里面可能需要安装相应的库,例如Arduino101,nodemcu就需要专用的库才能识别操作,IDE里面搜索下载即可。
  3. 还不行有个碰运气的做法:可以先右键删除设备管理器里面的Unknown Device,拔下设备重插,windows会自动寻找重装驱动。
    这个做法有一定成功几率,也可以解决问题。也可以尝试一下删除重装Arduino IDE,不是绿色版的那个,exe安装版的IDE才稳妥。
  4. 可以尝试手动选择驱动安装的inf文件。Unknown Device右键选择update driver,出来的界面选择Browse my computer for driver software,下一步的页面点击let me pick from a list of available drivers on my computer,下一步的页面双击选择Ports,然后出现的页面点击右下角的硬盘,去到arduino/drivers文件夹里面选择arduino.inf文件,再选择板子的型号,接下来全部下一步即可。

强行追加驱动

上面的第4步还是出错(一般是code28)的话,有可能是系统确实缺了某些预设的驱动文件。
这个时候打开C:\Windows\INF里面的setupapi.dev.log,拖到最下面,找一下前面带!!!符号的几行字

Fig 2

例如上图的情况,DFROBOT的CurieNano (Arduino 101)的驱动出错情况

!!!  flq:                     Source Media: SPFQOPERATION_ABORT (C:\WINDOWS\System32\DriverStore\FileRepository\usbser.inf_amd64_827db80716f312be\usbser.sys).  
!!!  flq:                     Error 2: The system cannot find the file specified.

意思就是C:\WINDOWS\System32\DriverStore\FileRepository\usbser.inf_amd64_827db80716f312be\usbser.sys这个文件找不到,所以出错了。
解决办法就是新建文件夹C:\WINDOWS\System32\DriverStore\FileRepository\usbser.inf_amd64_827db80716f312be,再从其他地方找到usbser.sys复制到这个文件夹,问题解决!QEF!

每个电脑情况不太一样,具体看setupapi.dev的记录操作即可。

վ HᴗP ի

This blog is under a CC BY-NC-SA 3.0 Unported License
Link to this article: https://hanspond.github.io/2018/01/27/Arduino驱动错误的一般解决方法/