⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 i2cint.h

📁 ZLG提供的LM3S8962的硬件I2C程序
💻 H
字号:
/*
---------------------------------------------------------------------------------------------------------
*********************************************************************************************************
** 文件名称 :	I2CINT.h
** 功能说明 :	Luminary硬件I2C中断方式软件包。
** 使用说明 :  主程序要配置好I2C总线接口(I2C引脚功能和I2C中断,并已使能I2C主模式)
*********************************************************************************************************
---------------------------------------------------------------------------------------------------------
*/
#ifndef  __I2CINT_H__
#define  __I2CINT_H__

#ifdef __cplusplus
extern "C"
{
#endif

#ifndef uchar 
#define uchar unsigned char
#endif

#ifndef ulong 
#define ulong unsigned long
#endif

/*
******************************************************************************************
** 函数名称: Delays()
** 函数功能: 延时
** 入口参数: dly
** 出口参数: 无
******************************************************************************************
*/
extern void Delays (ulong dly);

/*
*********************************************************************************************************
** 函数名称:I2CInit()
** 函数功能:I2C接口初始化。
** 入口参数:spd		总线速度100K(参数值为100000)或400K(参数值为4000000)
**           pri		中断优先级0~7
** 出口参数:返回值为false时表示操作出错,为true时表示操作正确。
** 说明:
*********************************************************************************************************
*/
extern int I2CInit(ulong spd, uchar pri); 


/*
*********************************************************************************************************
** 函数名称:ISendByte()
** 函数功能:向无子地址器件发送1字节数据。
** 入口参数:sla		器件地址
**           c			要发送的数据
** 出口参数:返回值为false时表示操作出错,为true时表示操作正确。
** 说明:	使用前要初始化好I2C引脚功能和I2C中断,并已使能I2C主模式
*********************************************************************************************************
*/ 
extern int ISendByte(uchar sla, uchar c);


/*
*********************************************************************************************************
** 函数名称 :ISendStr()
** 函数功能 :向有子地址器件任意地址开始写入N字节数据
** 入口参数 :	sla			器件从地址
**				suba_type	子地址结构	0-8+X结构  1-单字节地址  2-双字节地址  3-三字节地址
**				suba		器件子地址
**				s			数据发送缓冲区指针
**				no			写入的个数
** 出口参数 :	TRUE		操作成功
**				FALSE		操作失败
*********************************************************************************************************
*/ 
extern int ISendStr(uchar sla, ulong suba, uchar sub_type, uchar *s, ulong no);

/*
*********************************************************************************************************
** 函数名称:ISendStrExt()
** 函数功能:向无子地址器件发送多字节数据。
** 入口参数:sla		器件地址
**           s			要发送的数据
**  		 no			发送的字节个数
** 出口参数:返回值为false时表示操作出错,为true时表示操作正确。
** 说明:	 发送数据字节至少2个字节
*********************************************************************************************************
*/
extern int ISendStrExt(uchar sla, uchar *s, uchar no);


/*
*********************************************************************************************************
** 函数名称:IRcvByte()
** 函数功能:向无子地址器件读取1字节数据。
** 入口参数:sla		器件地址
**           c			接收数据的变量指针
** 出口参数:返回值为false时表示操作出错,为true时表示操作正确。
** 说明:	使用前要初始化好I2C引脚功能和I2C中断,并已使能I2C主模式
*********************************************************************************************************
*/
extern int IRcvByte(uchar sla, uchar *c);


/*
*********************************************************************************************************
** 函数名称 :IRcvStr()
** 函数功能 :向有子地址器件读取N字节数据
** 入口参数 :	sla			器件从地址
**				suba_type	子地址结构	0-8+X结构  1-单字节地址  2-双字节地址  3-三字节地址
**			  	suba		器件内部物理地址
**			  	*s			将要读取的数据的指针
**			  	no			将要读取的数据的个数
** 出口参数 :	TRUE		操作成功
**			  	FALSE		操作失败
*********************************************************************************************************
*/
extern int IRcvStr(uchar sla, ulong suba, uchar sub_type, uchar *s, uchar no);


/*
*********************************************************************************************************
** 函数名称:IRvcStrExt()
** 函数功能:向无子地址器件读取N字节数据。
** 入口参数:sla		器件地址
**           s			接收数据的变量指针
**			 no			将要读取的数据的个数
** 出口参数:使用前要初始化好I2C引脚功能和I2C中断,并已使能I2C主模式
** 说明:	至少要读取2个字节
*********************************************************************************************************
*/
extern int IRvcStrExt(uchar sla, uchar *s, uchar no);

#ifdef __cplusplus
}
#endif

#endif    // __I2C_H__



⌨️ 快捷键说明

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