请教,CH341 读写16位数据

我用CH341做了一块板准备是用来做产品上USB-I2C的控制器,目前我用DLL中附带的CH341ReadI2C,H341WriteI2C命令可以通过LABVIEW来控制8位输出的芯片并能得到准确的输入输出,但是对一些输出结果是16位的(需要连续读2个字节),这两个命令就没有办法了。 想请问下对应这类应用我该通过什么样的方式来操作?CH341StreamI2C??? 这个命令上的PVOID iWriteBuffer,,PVOID oReadBuffer,这两个参数怎么理解?另外PVOID需要设为什么类型?字符串?数组? 20116191627577.jpg

BOOL WINAPI CH341StreamI2C( // 处理I2C数据流,2线接口,时钟线为SCL引脚,数据线为SDA引脚(准双向I/O),速度约56K字节 ULONG iIndex, // 指定CH341设备序号 ULONG iWriteLength, // 准备写出的数据字节数 PVOID iWriteBuffer, // 指向一个缓冲区,放置准备写出的数据,首字节通常是I2C设备地址及读写方向位 ULONG iReadLength, // 准备读取的数据字节数 PVOID oReadBuffer ); // 指向一个缓冲区,返回后是读入的数据

iWriteBuffer是发送缓冲区,oReadBuffer是接受缓冲区,在调用之前要初始化iWriteBuffer,里面放准备发送的数据,oReadBuffer是字符数字,用来接受数据;PVOID就是 void *的别名,可以理解成任何类型的指针,一般是字符数组;WINAPI是STDCALL的别名


只有登录才能回复,可以选择微信账号登录