24c16nvram.h

来自「au1500开发的应用程序」· C头文件 代码 · 共 67 行

H
67
字号
/* 24c16NvRam.h - 24C16 EEPROM NVRAM driver header */

/* Copyright 2002-2004 Founder Communications, Inc. */

/*
modification history
--------------------
01a,11apr05, fhchen  written
*/

/*
DESCRIPTION

This file contain header information for AT24C16 EEPROM non-volatile RAM routines.
*/

#ifndef __INC24c16NvRamh
#define __INC24c16NvRamh

#ifdef __cplusplus
extern "C" {
#endif

/* includes */

#include <vxWorks.h>
#include "drv/mem/memDev.h"                  /* sysNvRam* prototype */
#include "sysGpio.h"

/* constants */

#define AT24C16_I2C_READ          0x1
#define AT24C16_I2C_WRITE         0x0    
#define AT24C16_I2C_ADDRESS       0xA        /* 0b1010 */

#define AT24C16_I2C_SDA           GPIO205
#define AT24C16_I2C_SCL           GPIO206

#define AT24C16_PORT              PORT_SECONDARY
#define AT24C16_PIN_PROTECT       GPIO208
#define AT24C16_LOGIC_UNPROTECT   LOGIC_LOW

#define AT24C16_CLOCK_FREQ        100000     /* 3.3v(100kHz) on CPE */
#define AT24C16_DELAY             1
/* #define AT24C16_DELAY             (1000000 / AT24C16_CLOCK_FREQ) */
               
                                             /* delay in us */ 

#define AT24C16_MAX_SIZE          2048       /* 2KB */
#define AT24C16_Twr               10         /* 10ms */

/* prototype */

extern void   at24c16Init(void);
extern void   at24c16UnProtect(void);
extern STATUS at24c16Erase(char byteVal);
extern STATUS at24c16ReadByte(int address, char *pByte);
extern STATUS at24c16WriteByte(int address, char byteVal);

#ifdef __cplusplus
}
#endif

#endif  /* __INC24c16NvRamh */


⌨️ 快捷键说明

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