有没有办法以编程方式更改USB < – >串行适配器的“BM选项延迟定时器”? 需要在embedded式Windows XP上工作。 可以是.net 2.0或本机窗口解决scheme…
我想你正在使用一个FTDI USB串行转换器。 然后你可以使用libftdi
并查阅应用笔记 (特别是AN232B-04),因为它们包含大量有用的信息。
这是司机的具体情况。 你最好的办法是做什么romkyns说,并试图找出司机存储这个设置。 假设您能够了解如何存储并更改设置,您可能需要在更改设置后关闭并重新打开串口。
截至2016年,由于Windows驱动程序基础结构的变化,AN232B-04中的建议可能已经过时。 现在,需要签署驱动程序包中的所有文件,这意味着在不使用库存FTDI驱动程序的情况下编辑inf / cat文件中的值是不可能的,无需重新签名驱动程序。
如果你使用的是libftdi,你可以在运行时配置这个值,就像每个rve的答案一样。 如果您更喜欢使用FTDI自己的驱动程序和Windows的标准COM端口API,并且您需要配置此值,您仍然可以通过编辑注册表来永久并以编程方式更改它。
如果转到此路由,则需要更改HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\FTDIBUS\VID_0403+PID_6001+KBxxxxxxx\0000\Device Parameters
下的DWORD值LatencyTimer
。 这个例子中的KBxxxxxxx
需要用你设备的序列号来代替。 您需要更高的权限才能更改此值,例如通过提高UAC提示。 设备驱动程序可能需要在此时重新启动,才能使更改生效,例如通过拔下和重新插入设备。