i2c.h

来自「JPEG压缩编码在TMS320VC5509的实现代码。使用编译器为ccs2.2」· C头文件 代码 · 共 62 行

H
62
字号
//i2c.h
#define I2COAR_ADDR  0x3C00             
#define I2COAR          (*(ioport volatile unsigned int *)I2COAR_ADDR)
#define I2CIMR_ADDR  0x3C01             
#define I2CIMR          (*(ioport volatile unsigned int *)I2CIMR_ADDR)
#define I2CSTR_ADDR  0x3C02             
#define I2CSTR          (*(ioport volatile unsigned int *)I2CSTR_ADDR)
#define I2CCLKL_ADDR  0x3C03             
#define I2CCLKL          (*(ioport volatile unsigned int *)I2CCLKL_ADDR)
#define I2CCLKH_ADDR  0x3C04             
#define I2CCLKH          (*(ioport volatile unsigned int *)I2CCLKH_ADDR)
#define I2CCNT_ADDR  0x3C05             
#define I2CCNT          (*(ioport volatile unsigned int *)I2CCNT_ADDR)
#define I2CDRR_ADDR  0x3C06             
#define I2CDRR          (*(ioport volatile unsigned int *)I2CDRR_ADDR)
#define I2CSAR_ADDR  0x3C07             
#define I2CSAR          (*(ioport volatile unsigned int *)I2CSAR_ADDR)
#define I2CDXR_ADDR  0x3C08             
#define I2CDXR          (*(ioport volatile unsigned int *)I2CDXR_ADDR)
#define I2CMDR1_ADDR  0x3C09             
#define I2CMDR1          (*(ioport volatile unsigned int *)I2CMDR1_ADDR)
#define I2CIVR_ADDR  0x3C0A             
#define I2CIVR          (*(ioport volatile unsigned int *)I2CIVR_ADDR)
#define I2CPSC_ADDR  0x3C0C             
#define I2CPSC          (*(ioport volatile unsigned int *)I2CPSC_ADDR)
#define I2CMDR2_ADDR  0x3C0F             
#define I2CMDR2          (*(ioport volatile unsigned int *)I2CMDR2_ADDR)


void I2cInitForAic23(void);
int I2cWriteAic23(unsigned int *data);
void I2cInitForEEPROM(void);
UINT SequentialRead(FILE* fp,UINT FileSize);
UINT AT24SetAddress(UINT DataAddr);
UINT AT24PageWrite(BYTE* InputBuf,UINT addr);
void CheckProgStatus(void);

#define generate_start_condition I2CMDR1 = I2CMDR1 | 0x2000

#define generate_stop_condition  I2CMDR1 = I2CMDR1 | 0x0800

#define K_TIME_OUT 60000

#define K_AT24C512 128//每一页的大小

#define K_AT24C256 64

#define K_AT24C128 64

#define K_CURRENT_PAGE_SIZE K_AT24C256//需要修改

#define K_AT24C512_SIZE 0x10000//存储器容量

#define K_AT24C256_SIZE 0x8000

#define K_AT24C128_SIZE 0x4000

#define K_DEVICE_PAGE_ALL K_AT24C256_SIZE/K_CURRENT_PAGE_SIZE



⌨️ 快捷键说明

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