📄 iic.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 + -