i2c pin access.h

来自「I2C的源程序」· C头文件 代码 · 共 64 行

H
64
字号
#ifndef I2C_PIN_ACCESS
	#define I2C_PIN_ACCESS

//--------------------------------------------------------------------------//
// Header files																//
//--------------------------------------------------------------------------//
#include <cdefBF561.h>

//--------------------------------------------------------------------------//
// Symbolic constants														//
//--------------------------------------------------------------------------//
#define I2C_SCL	0x0001							// PF0 used as I2C clock
#define I2C_SDA	0x0002							// PF1 used as I2C data

//--------------------------------------------------------------------------//
// Inline functions															//
//--------------------------------------------------------------------------//
inline void I2C_Set_High_SDA(void)
{
	*pFIO0_FLAG_S = I2C_SDA;
}

inline void I2C_Set_Low_SDA(void)
{
	*pFIO0_FLAG_C = I2C_SDA;
}

inline void I2C_Set_High_SCL(void)
{
	*pFIO0_FLAG_S = I2C_SCL;
}

inline void I2C_Set_Low_SCL(void)
{
	*pFIO0_FLAG_C = I2C_SCL;
}

inline void I2C_Set_SCL_Output(void)
{
	*pFIO0_DIR = *pFIO0_DIR | I2C_SCL;
}

inline void I2C_Set_SDA_Input(void)
{
	*pFIO0_INEN	= *pFIO0_INEN | I2C_SDA;
	*pFIO0_DIR	= *pFIO0_DIR & ~I2C_SDA;
}

inline void I2C_Set_SDA_Output(void)
{
	*pFIO0_INEN	= *pFIO0_INEN & ~I2C_SDA;
	*pFIO0_DIR	= *pFIO0_DIR | I2C_SDA;
}

inline bool I2C_Read_SDA(void)
{
//	return (*pFIO_FLAG_D & ~I2C_SDA);
//################################################################
return(false);
}

#endif

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?