完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
查看库头文件CH341DLL.H中有如下定义
#define mCH341A_CMD_I2C_STM_STA 0x74 // I2C接口的命令流:产生起始位 #define mCH341A_CMD_I2C_STM_STO 0x75 // I2C接口的命令流:产生停止位 #define mCH341A_CMD_I2C_STM_OUT 0x80 // I2C接口的命令流:输出数据,位5-位0为长度,后续字节为数据,0长度则只发送一个字节并返回应答 #define mCH341A_CMD_I2C_STM_IN 0xC0 // I2C接口的命令流:输入数据,位5-位0为长度,0长度则只接收一个字节并发送无应答 #define mCH341A_CMD_I2C_STM_MAX ( min( 0x3F, mCH341_PACKET_LENGTH ) ) // I2C接口的命令流单个命令输入输出数据的最大长度 #define mCH341A_CMD_I2C_STM_SET 0x60 // I2C接口的命令流:设置参数,位2=SPI的I/O数(0=单入单出,1=双入双出),位1位0=I2C速度(00=低速,01=标准,10=快速,11=高速) #define mCH341A_CMD_I2C_STM_US 0x40 // I2C接口的命令流:以微秒为单位延时,位3-位0为延时值 #define mCH341A_CMD_I2C_STM_MS 0x50 // I2C接口的命令流:以亳秒为单位延时,位3-位0为延时值 #define mCH341A_CMD_I2C_STM_DLY 0x0F // I2C接口的命令流单个命令延时的最大值 #define mCH341A_CMD_I2C_STM_END 0x00 // I2C接口的命令流:命令包提前结束 以及I2C相关函数 BOOL WINAPI CH341ReadI2C( // 从I2C接口读取一个字节数据 ULONG iIndex, // 指定CH341设备序号 UCHAR iDevice, // 低7位指定I2C设备地址 UCHAR iAddr, // 指定数据单元的地址 PUCHAR oByte ); // 指向一个字节单元,用于保存读取的字节数据 BOOL WINAPI CH341WriteI2C( // 向I2C接口写入一个字节数据 ULONG iIndex, // 指定CH341设备序号 UCHAR iDevice, // 低7位指定I2C设备地址 UCHAR iAddr, // 指定数据单元的地址 UCHAR iByte ); // 待写入的字节数据 不知如何使用,求解! 在下想自己写一个利用 CH341调试单片机I2C从机的 上位机程序!需要使用I2C中的具体功能指令如 起始命令,停止命令,应答等等。等待高手指点, |
|
相关推荐
1个回答
|
|
您好,CH341DLL中所提供的I2C读写功能,在相关API执行时,会自动产生I2C总线所需要的起始、停止等信号。具体您可以通过示波器或逻辑分析仪查看时序过程。资料包可从如下链接下载:http://www.wch.cn/downloads/CH341EVT_ZIP.html
|
|
|
|
只有小组成员才能发言,加入小组>>
523 浏览 1 评论
CH579M+RT-Thread,RTC从Sleep模式唤醒失败是什么原因?
2904 浏览 2 评论
2400 浏览 1 评论
870浏览 2评论
689浏览 1评论
riscv-none-embed-objcopy: \'PWM_Output.elf\': No such file这个咋解决,
418浏览 1评论
531浏览 1评论
请教一下,Mounriver 编译不成功:找不到库文件,怎么整
814浏览 1评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-25 04:49 , Processed in 0.844469 second(s), Total 42, Slave 37 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号