当前位置:网站首页 > C++编程 > 正文

下位组件出错 plc(下位组件出错 cp1542)



本文介绍调试其 I2C 固件或驱动程序软件时硬件供应商和驱动程序开发人员可能会遇到的常见问题。

如果主机或设备的 ACPI 源语言(ASL)代码无效,则 I2C 控制器驱动程序加载但设备不会出现在 Windows 设备管理器中的情况。 若要确定问题是否由于无法匹配 INF,请参阅setupapi.dev.log文件。 另一个指示问题是由于不匹配导致的是 Windows 设备管理器中的错误代码 10

若要解决此问题,请确保:

  • _CID值必须 PNP0C50
  • BIOS 中的 I2C 控制器 和设备 特征 必须准确。
  • BIOS 中的 HID 描述符地址(设备)必须准确。
  • GPIO 中断必须正确标识并标记为 独占、级别、ActiveLow

有关更多详细信息,请参阅 HID I2C 协议规范的第 13 部分。

如果主机未能从设备检索正确的报告描述符,请确保:

  • 在检索报表描述符之前,枚举序列必须完成运行。
  • HID 描述符中的字节偏移量 4 和 6 必须有效。 (特别注意长度。

如果从设备检索到正确的报告描述符已验证,但仍存在相关问题,请确保:

  • wReportDescLength 字段准确。
  • HID 报表的格式正确。 (若要验证结果,请测试 USB 等备用总线。

本部分重点介绍硬件供应商和驱动程序开发人员经常提出的问题。

  • Windows 8 收件箱 HIDI2C 驱动程序是否适用于通过 I2C 连接的 HID 设备?
    • 可以,前提是固件符合此 HID I2C 协议规范
  • 设备(如键盘)和 OS 驱动程序之间通信的数据结构是什么?
    • 根据 HID 标准,数据结构采用由报表描述符定义的输入报表的形式。 设备本身而不是 HIDI2C 定义输入报告结构。 按照 HID I2C 规范提供描述符和相应的输入报告,按 USB 键盘报告键盘使用情况
  • 如果同时缓冲多个报表,设备应该怎么办?
    • 如果缓冲了多个报告,设备应保持断言中断,直到读取最后一个报告(已确认)。 只要在给定的读取操作后报告更多数据,设备应使用级别触发器 GPIO 设置保留断言行。
  • 说我们应该获得相同的 DevicePath 进行 USB 和 I2C 连接是否准确?
    • 否,USB 和 I2C 之间的设备路径 不同 。 差异很小,但值得注意。 有关详细信息,请参阅 Windows 驱动程序工具包(WDK)中的“硬件 ID”部分。
  • 若要使 HIDI2C 设备使用 Windows 收件箱 HIDI2C 驱动程序,需要哪些 I2C 传输限制?
    • 所有 I2C 控制器都需要支持高达 4 KB 的传输。 最大 HID 报告描述符长度为 4 KB。
到此这篇下位组件出错 plc(下位组件出错 cp1542)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!

版权声明


相关文章:

  • msvcp140.dll丢失的解决方(msvcp140.dll丢失的解决方法吃鸡)2025-01-25 21:09:09
  • cnn是哪个党派支持的部门(cnn属于哪个党派)2025-01-25 21:09:09
  • consultant英语怎么读(consumption怎么读的)2025-01-25 21:09:09
  • dhcp获取ip地址失败怎么办(dhcp获取不了ip)2025-01-25 21:09:09
  • ddiction怎么读(ddecided怎么读)2025-01-25 21:09:09
  • kubelet的作用(kubelet csi)2025-01-25 21:09:09
  • msvcp120.dll找不到(msvcp120.dll找不到是什么原因)2025-01-25 21:09:09
  • 烟草jc是哪里的码(jc烟草代码)2025-01-25 21:09:09
  • pointnet(pointnet++网络)2025-01-25 21:09:09
  • gitclone到本地(gitclone到本地修改后会影响源仓库吗)2025-01-25 21:09:09
  • 全屏图片