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

📄 i2c.h

📁 单片机开发列程
💻 H
字号:
#ifndef __I2C_H__
#define __I2C_H__

//存储器类芯片从机地址高四位为1010
/*
#define SLA24CL04HP 0xA6    //1010,0(A2)1(A1)1(高半叶)0  高256字节
#define SLA24CL04LP 0xA4    //1010,0(A2)1(A1)0(高半叶)0  低256字节
*/
#define SLA24CL04  0xA4    //1010,0(A2)1(A1)0(高半叶)0  低256字节

#define SLA3104Mem 0xA0     //1010,*(无关位)0(A1)0(A0)0
#define SLA3104RTC 0xD0     //1101,*(无关位)0(A1)0(A0)0

//****************************************************************************
//初始化I2C模块
//****************************************************************************
extern void I2CMasterInit(void);
/*****************************************************************************
*I2C总线向有子地址器件读取多字节数据函数
*返回0表示操作失败,返回1表示操作成功
*Sla      从机地址;  uchar a
*SubAddr  丛机子地址;
*pRecvBuf 待发送的数据缓冲头指针,若是发送单字节则直接取变量地址即可;
*Num      待发送数据的字节数
*****************************************************************************/
extern unsigned char I2CNByteRecv(unsigned char Sla, unsigned int SubAddr, unsigned char *pRecvBuf, unsigned int Num);
/*****************************************************************************
*I2C 总线向有子地址器件发送多字节数据函数
*返回0表示操作失败,返回1表示操作成功
*Sla      从机地址;  uchar a
*SubAddr  丛机子地址;
*pStr     待发送的数据缓冲头指针,若是发送单字节则直接取变量地址即可;
*Num      待发送数据的字节数
*****************************************************************************/
extern unsigned char I2CNByteSend(unsigned char Sla, unsigned int SubAddr, unsigned char *pSendBuf, unsigned int Num);



/******************************************************************************************
//24CL04的读写有一些特殊故单写出来
/******************************************************************************************

/******************************************************************************
*I2C总线向有子地址器件读取多字节数据函数
*返回0表示操作失败,返回1表示操作成功
*Sla      从机地址;  uchar a
*SubAddr  丛机子地址;
*pRecvBuf 待发送的数据缓冲头指针,若是发送单字节则直接取变量地址即可;
*Num      待发送数据的字节数
******************************************************************************/
extern unsigned char FM24CL04NByteRecv(unsigned char Sla, unsigned int SubAddr, unsigned char *pRecvBuf, unsigned int Num);
/******************************************************************************
*I2C 总线向有子地址器件发送多字节数据函数
*返回0表示操作失败,返回1表示操作成功
*Sla      从机地址;  uchar a
*SubAddr  丛机子地址;
*pStr     待发送的数据缓冲头指针,若是发送单字节则直接取变量地址即可;
*Num      待发送数据的字节数
*******************************************************************************/
extern unsigned char FM24CL04NByteSend(unsigned char Sla, unsigned int SubAddr, unsigned char *pSendBuf, unsigned int Num);

extern void FM24CL04Test(void);
extern void FM3104MemTest(void);


#endif

⌨️ 快捷键说明

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