使用 Leaf 编程 AI/开发/为微控制器安装驱动程序
简介
机器人 PC 或笔记本电脑与微控制器板之间的 USB 接口有时难以正常工作。最近,FTDI(ftdichip.com)是安装在微控制器板上的 USB 模块上的 USB 芯片制造商,发布了一种新的驱动程序安装方法,使用简单的 setup.exe 程序。
我在 Windows XP、Vista 和 Windows 7(32 位和 64 位版本)上尝试过这个程序,并且取得了成功,因此我将在下面使用该方法。如果它无法正确安装,请告诉我,我们将尝试使用老式的有问题的方法。
先决条件
唯一需要的硬件是安装在微控制器板上的 DLP-USB245M 模块、USB 电缆以及带 USB 端口(1.0 或 2.0)的 PC 或笔记本电脑。
我们使用的是芯片制造商提供的最新版本的驱动程序。请参阅 ftdichip.com/FTDrivers.htm 注意,有两种类型的驱动程序接口可用。虚拟串行端口 (VCP) 在 PC 软件中看起来完全像一个串行端口,但没有波特率限制。直接驱动程序 (D2XX) 通过 DLL 与 PC 接口。Leaf PC 中的 NavAndControl.exe 软件使用 D2XX 接口。
因此,第一步是获取最新的驱动程序。您将在页面 ftdichip.com/Drivers/D2XX.htm 上发现他们只有一个驱动程序,称为“组合驱动程序模型”,它同时支持 VCP 接口和 DLL。此驱动程序的当前版本(截至 2010 年 8 月 28 日)是 2.08.02,可以作为 zip 文件或 setup exe 获取。我们将使用 setup.exe。
此驱动程序安装支持 Windows XP、Vista 和 Windows 7 的 32 位和 64 位版本。据我所知,此驱动程序(或以前的版本)已安装在 Windows XP 和 Vista 32 位版本中,以及 Windows 7 的 32 位和 64 位版本中。安装在不同的 Windows 版本之间略有不同,因此下面提供了每个版本的说明。
Windows XP 或 Vista
以下测试是在新安装的 XP 版本(32 位)上进行的,并安装了 SP3,以及在运行 Vista 并安装了 SP2 的机器上进行的。我没有找到使用此设置的说明,因此我按照以下步骤进行。
现在不要插入 USB 电缆(以避免潜在的自动安装不正确的驱动程序)。
从 http://ftdichip.com/Drivers/D2XX.htm 下载上面提到的 Setup.exe 我总是选择保存而不是运行,这样我就可以保存副本以备后用。将其保存到您想要保存的任何位置。注意,它会下载为“CDM20802_Setup.exe”。
双击该文件运行它。一个控制台窗口弹出,显示“检测到 32 位操作系统”,并自动安装并关闭。这通常只需要几秒钟。(有一次它在安装阶段卡住了。我关闭了窗口并重新启动了程序,然后它正常完成了。)
插入 USB 电缆(微控制器板不需要通电,因为 DLP-USB 模块通过 USB 电缆供电。但是,模块必须插入微控制器板,因为必须进行一些连接。)
弹出“发现新硬件”窗口。大约一分钟后,它变成了“您的新硬件已安装并可以使用”(或“您的新设备……”)。
如果它没有显示您的新硬件已安装并可以使用,请转到下面的“故障排除驱动程序”。
否则,请继续到下面的“测试接口”。
Windows 7(32 位和 64 位版本)
第一次将微控制器板连接到 Windows 7 机器时,弹出“安装设备驱动程序软件”窗口,紧随其后的是“设备驱动程序软件安装成功”。
驱动程序在设备管理器中显示为端口中的 USB 串行端口,以及通用串行总线控制器中的 USB 串行转换器。
驱动程序为:FTDI 版本 2.8.2.0,截至 2010 年 8 月 28 日为最新版本。
我不能确定驱动程序是否已预先安装在 Windows 7 中,或者它们是从互联网上自动下载的。
如果以上方法在您的机器上不起作用,我认为您可以下载此驱动程序的 setup.exe 版本并按照上面针对 XP 的说明进行安装。如果您没有互联网访问权限,可以在任何有访问权限的计算机上下载 setup.exe,然后将其复制到您的机器人计算机上。
如果它没有显示您的新硬件已安装并可以使用,请转到下面的“故障排除驱动程序”。
否则,请继续到下面的“测试接口”。
嗯,在尝试使用 NavAndControl 进行以下测试之前,请注意,我刚刚尝试在我的 Windows 7 机器上运行 NavAndControl,但它无法启动。我确信它以前是可用的。但是,上面提到的 LeafUSBtest.exe 程序在 32 位和 64 位机器上都成功运行,因此 USB 接口正在工作。
测试接口
此时,驱动程序已安装,您应该能够通过将 Leaf 运行时版本的代码安装到微控制器(如果尚未安装)并从 Leaf 文件夹中运行 NavAndControl.exe 来测试接口,如软件安装说明中所述。
确保微控制器 Run/Prog 开关处于 Run 位置,并且微控制器板已通电。按下微控制器 Adapt 板上的复位按钮。
您最初将在 NavAndControl 窗口的左上角看到一个红色指示灯窗口,显示“Micro Inactive”。如果一切正常,该窗口将在几秒钟内变为琥珀色,并显示“Micro Active”。否则它将保持红色。如果为红色,请继续下面的故障排除提示。有可能(但不一定)指示灯会在一段时间后变为绿色,并显示“Micro Ready”。这意味着偏航速率陀螺仪已全部设置并校准。对于所有基本操作, “Micro active”状态就足够了。
因此,如果您看到 Micro Active 或 Ready,则表示您已成功安装驱动程序。如果没有,请继续下面的故障排除接口。
故障排除驱动程序
尝试另一条 USB 电缆。
您可以在 http://ftdichip.com/Support/Documents/InstallGuides.htm 中找到驱动程序安装说明,以防我的说明不起作用。这些指南包含安装说明和故障排除说明。
如果您对这些方法没有运气,请在邮件列表中寻求帮助。
您可以通过以下方法进一步验证驱动程序是否正确。
您可以通过转到设备管理器并检查 USB 串行端口 COM4 是否在 PORTS 中列出,以及 USB 串行转换器是否在通用串行总线控制器中列出,来验证 VCP 和 D2XX 接口是否已安装。
如果您想确定上面的两个引用是您的微控制器模块(而不是您安装的其他看起来类似的东西),您可以断开电缆并查看这两个引用是否消失;或者您可以双击设备管理器中的每个引用,查看“详细信息”选项卡并查看设备的 VID 为 0403,PID 为 6001,这是此特定模块芯片的识别码。
您可以进行的另一个检查是,笔记本电脑是否与 USB 模块正常通信,方法是从 http://ftdichip.com/Support/Utilities.htm 下载一个名为“Microsoft usbview.exe”的小型实用程序程序。
运行此程序,您应该会看到一个名为“USB 串行转换器”的条目。双击此条目,您将看到此设备的参数列表,其中应包括它是一个 DLP-USB245M。
故障排除接口
如果接口似乎无法与 NavAndControl 协同工作,您可以运行一个更简单的测试,只是为了验证 usb 接口。网站上有软件实用程序和/或邮件列表文件部分中有一个名为“LeafUSBtest.exe”的测试程序。您只需将 USB 电缆从 PC 连接到微控制器,并为微控制器供电。我假设通常的运行时软件已安装在微控制器上,并且微控制器设置为在通电时运行。然后从任何位置运行该程序。它弹出一个简单的控制台窗口,执行两项操作。它列出您的 PC 上由 FTDI(ftdichip.com)制造的接口芯片的 USB 设备。这应该包括您插入微控制器板的 USB 模块上的芯片,以及其他任何芯片,例如,您可能在一些常见的 USB 串行转换器电缆中拥有此类芯片。因此,它会提供找到的此类芯片的数量,以及这些芯片的描述。它正在寻找一个描述为“DLP-USB245M”(大多数人拥有)或“D2XX Recover PID for XP”(这是一个旧版本,但有些人可能仍然拥有)的芯片。找到正确的芯片后,它将初始化芯片并返回错误代码 0(打印在屏幕上)。如果成功,它会将从 1 到 256 的所有数字传输到微控制器,然后将这些数字回显到屏幕上。这证明了微控制器的 8 位并行接口在两个方向上都能正常工作。它将报告成功或失败。
微控制器板上需要连接几根引脚。为了检查USB模块与微控制器板的连接,请验证USB模块的3、10、11和12号引脚是否有5伏直流电。此测试必须在安装USB线缆且笔记本电脑通电的情况下进行。如果没有,请检查微控制器板上这些引脚的焊接情况,或使用欧姆表检查所有这些引脚之间的连续性。这些引脚足以安装驱动程序,但传输数据还需要其他引脚,可以使用LeafUSBtest.exe程序进行验证。即使无法双向发送微控制器数据,这些引脚也应该能让LeafUSBtest程序与USB模块通信。
如果使用Setup.exe安装,它将自动将FTD2xx.dll移动到Windows/system32文件夹。请验证它是否在那里。其日期应与setup.exe文件相同(2.08.02版本为2010年7月12日)
备注
微控制器板上的USB模块是DLP-USB245M,可在digikey.com网站上以零件号813-1019-ND购买。
线缆是标准USB线缆,一端为A型连接器,另一端为B型连接器。
任何PC USB端口都可以使用。(但如果一个端口无法使用,尝试其他端口总不会错)