我用CH341做了一块板准备是用来做产品上USB-I2C的控制器,目前我用DLL中附带的CH341ReadI2C,H341WriteI2C命令可以通过LABVIEW来控制8位输出的芯片并能得到准确的输入输出,但是对一些输出结果是16位的(需要连续读2个字节),这两个命令就没有办法了。 想请问下对应这类应用我该通过什么样的方式来操作?CH341StreamI2C??? 这个命令上的PVOID iWriteBuffer,,PVOID oReadBuffer,这两个参数怎么理解?另外PVOID需要设为什么类型?字符串?数组?
查看: 3536
回复: 1
请教,CH341 读写16位数据
热门产品 :
CH32X035: 32位USB+USB PD单片机
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的别名
请勿发布广告和违法内容, 代码可以选择编辑器代码语言格式, 更易他人阅读帮助您, 或者留下联系方式,以便更好更快服务您
只有登录才能回复,可以选择微信账号登录