📄 说明.txt
字号:
//====================================================================================
直接操作I2C总线:
Declare Sub InitLPT Lib "I2C.DLL" (ByVal hinst As Long)
Declare Sub LPT_WriteByte Lib "I2C.DLL" (ByVal address As Long, ByVal data As Byte)
Declare Function LPT_ReadByte Lib "I2C.DLL" (ByVal address As Long) As Byte
Declare Sub LPT_SetBit Lib "I2C.DLL" (ByVal address As Long, ByVal Bit As Byte)
Declare Sub LPT_ClrBit Lib "I2C.DLL" (ByVal address As Long, ByVal Bit As Byte)
Declare Function LPT_GetBit Lib "I2C.DLL" (ByVal address As Long, ByVal Bit As Byte)
Declare Sub LPT_NotBit Lib "I2C.DLL" (ByVal address As Long, ByVal Bit As Byte)
Declare Sub EndLPT Lib "I2C.DLL" (ByVal hinst As Long)
/-------------------------------------------------------------------------------------
Declare Sub Set_SDA_Out Lib "I2C.DLL" (ByVal LPTaddress As Long, ByVal NoBit As Byte, ByVal CPLflag As Byte)
Declare Sub Set_SDA_In Lib "I2C.DLL" (ByVal LPTaddress As Long, ByVal NoBit As Byte, ByVal CPLflag As Byte)
Declare Sub Set_SCL_Out Lib "I2C.DLL" (ByVal LPTaddress As Long, ByVal NoBit As Byte, ByVal CPLflag As Byte)
Declare Sub Set_SCL_In Lib "I2C.DLL" (ByVal LPTaddress As Long, ByVal NoBit As Byte, ByVal CPLflag As Byte)
Declare Function GetI2CStatus Lib "I2C.DLL" () As Byte
Declare Sub SetI2CStatus Lib "I2C.DLL" (ByVal flag As Byte)
Declare Sub SDA_WriteOne Lib "I2C.DLL" ()
Declare Sub SDA_WriteZero Lib "I2C.DLL" ()
Declare Function SDA_Read Lib "I2C.DLL" () As Byte
Declare Sub SCL_WriteOne Lib "I2C.DLL" ()
Declare Sub SCL_WriteZero Lib "I2C.DLL" ()
Declare Function SCL_Read Lib "I2C.DLL" () As Byte
Declare Sub SetSDA Lib "I2C.DLL" ()
Declare Sub SetSCL Lib "I2C.DLL" ()
Declare Sub ClrSDA Lib "I2C.DLL" ()
Declare Sub ClrSCL Lib "I2C.DLL" ()
Declare Sub IicCheckAck Lib "I2C.DLL" ()
Declare Sub IicSendByte Lib "I2C.DLL" (ByVal chr1 As Byte)
Declare Sub IicStart Lib "I2C.DLL" (ByVal SlaveAddress As Byte)
Declare Sub IicStop Lib "I2C.DLL" ()
Declare Function IicReceiveByte Lib "I2C.DLL" () As Byte
Declare Sub IicAckTest Lib "I2C.DLL" (ByVal SlaveAddr As Byte)
//=======================================================================================
I2C总线自动检测
Declare Sub EndI2C Lib "I2C.DLL" (ByVal hinst As Long)
Declare Function InitI2C Lib "I2C.DLL" (ByVal hinst As Long, ByVal address As Byte) As Byte
Declare Sub SDA_WriteOne Lib "I2C.DLL" ()
Declare Sub SDA_WriteZero Lib "I2C.DLL" ()
Declare Function SDA_Read Lib "I2C.DLL" () As Byte
Declare Sub SCL_WriteOne Lib "I2C.DLL" ()
Declare Sub SCL_WriteZero Lib "I2C.DLL" ()
Declare Function SCL_Read Lib "I2C.DLL" () As Byte
Declare Sub SetSDA Lib "I2C.DLL" ()
Declare Sub SetSCL Lib "I2C.DLL" ()
Declare Sub ClrSDA Lib "I2C.DLL" ()
Declare Sub ClrSCL Lib "I2C.DLL" ()
Declare Sub IicCheckAck Lib "I2C.DLL" ()
Declare Sub IicSendByte Lib "I2C.DLL" (ByVal chr1 As Byte)
Declare Sub IicStart Lib "I2C.DLL" (ByVal SlaveAddress As Byte)
Declare Sub IicStop Lib "I2C.DLL" ()
Declare Function IicReceiveByte Lib "I2C.DLL" () As Byte
Declare Sub IicAckTest Lib "I2C.DLL" (ByVal SlaveAddr As Byte)
Declare Sub IicWriteByte Lib "I2C.DLL" (ByVal SlaveAddr As Byte, ByVal RegAddr As Byte, ByVal RegData As Byte)
Declare Function IicReadByte Lib "I2C.DLL" (ByVal SlaveAddr As Byte, ByVal RegAddr As Byte) As Byte
//============================================================================================
使用说明:
1.如果未用自动检测功能必须先初始化并口
Declare Sub InitLPT Lib "I2C.DLL" (ByVal hinst As Long)
2.接着设置I2C总线
Declare Sub Set_SDA_Out Lib "I2C.DLL" (ByVal LPTaddress As Long, ByVal NoBit As Byte, ByVal CPLflag As Byte)
Declare Sub Set_SDA_In Lib "I2C.DLL" (ByVal LPTaddress As Long, ByVal NoBit As Byte, ByVal CPLflag As Byte)
Declare Sub Set_SCL_Out Lib "I2C.DLL" (ByVal LPTaddress As Long, ByVal NoBit As Byte, ByVal CPLflag As Byte)
Declare Sub Set_SCL_In Lib "I2C.DLL" (ByVal LPTaddress As Long, ByVal NoBit As Byte, ByVal CPLflag As Byte)
3.然后才能进行I2C总线的相关操作
4.程序退出时必需关闭并口
Declare Sub EndLPT Lib "I2C.DLL" (ByVal hinst As Long)
//-----------------------------------------------------------------------------------
使用自动检测功能
1.必需先检测I2C总线,使用I2C总线初始化函数
Declare Function InitI2C Lib "I2C.DLL" (ByVal hinst As Long, ByVal address As Byte) As Byte
2.然后进行I2C总线的相关操作,包括读写
3.程序退出时必需结束I2C总线
Declare Sub EndI2C Lib "I2C.DLL" (ByVal hinst As Long)
//--------------------------------------------------------------------------------------
Declare Function GetI2CStatus Lib "I2C.DLL" () As Byte
用于判断I2C总线操作是否出错
其返回值为0时表示I2C总线操作结果正常,若返回值为1时表示I2C总线操作结果异常。
//---------------------------------------------------------------------------------------
Declare Sub SetI2CStatus Lib "I2C.DLL" (ByVal flag As Byte)
用于设置I2C总线状态
//----------------------------------------------------------------------------------------
注意:要将I2C.DLL文件拷贝到系统的目录下,即system32
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -