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

📄 iic.h

📁 ARM嵌入式常用模块的原理图和源码
💻 H
字号:
// IIC 有关宏定义。 参考CAT24WCxxx.pdf或者类似文档

////////////////
// 说明
// 时间单位是us,如果值是小数时取整加一

///////////////
// IIC工作电压
// 不同的工作电压,时序要求不同
// 0: 1.8V -- 6.0V 
// 1: 2.5V -- 6.0V
// 2: 3.0V -- 5.5V
#define IIC_V_18_to_60	0
#define IIC_V_25_to_60	1
#define IIC_V_30_to_55	2
#define IIC_V	IIC_V_30_to_55	// 在这里选择不同的电压

///////////////
// 上电时序
#define IIC_TPUR 1000	// 上电到读操作

////////////////
// 读写周期范围
#if	IIC_V == IIC_V_18_to_60
	#define IIC_FSCL	100	//kHz
	#define IIC_TAA		4
	#define IIC_TBUF	5
	#define IIC_THD_STA	4          
	#define IIC_TLOW	5
	#define IIC_THIGH	4
	#define IIC_TSU_STA	4
	#define IIC_THD_DAT	0
	#define IIC_TSU_DAT	1
	#define IIC_TR		1
	#define IIC_TF		1
	#define IIC_TSU_STO	5
	#define IIC_TDH		1
	#define IIC_TWR		10000
#else 
	#if	IIC_V == IIC_V_25_to_60
		#define IIC_FSCL	400             
		#define IIC_TAA		1
		#define IIC_TBUF	2
		#define IIC_THD_STA	1
		#define IIC_TLOW	2
		#define IIC_THIGH	1
		#define IIC_TSU_STA	1
		#define IIC_THD_DAT	0
		#define IIC_TSU_DAT	1
		#define IIC_TR		1
		#define IIC_TF		1
		#define IIC_TSU_STO	1
		#define IIC_TDH		1
		#define IIC_TWR		10000
	#else
		#define IIC_FSCL	1000             
		#define IIC_TAA		1
		#define IIC_TBUF	1
		#define IIC_THD_STA	1
		#define IIC_TLOW	1
		#define IIC_THIGH	1
		#define IIC_TSU_STA	1
		#define IIC_THD_DAT	0
		#define IIC_TSU_DAT	1
		#define IIC_TR		1
		#define IIC_TF		1
		#define IIC_TSU_STO	1
		#define IIC_TDH		1
		#define IIC_TWR		10000
	#endif
#endif

///////////////
// 器件寻址控制字
#define IIC_CTL_BYTE_H5 0xA0	// 器件寻址控制字的高5位
#define IIC_CTL_BYTE_W	0	
#define IIC_CTL_BYTE_R	1

#define IIC_PAGE_SIZE	64	// 写的时候,一页的大小
#define IIC_MAX_ERROR	10	// 最多允许出错次数

⌨️ 快捷键说明

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