您好!今天是星期五
2010年9月10日
首 页了解我们产品中心资讯与技术工程案例合作开发下载中心
  首 页 > 论 坛 > 完整实例 用户登陆 注册 忘记密码  
发表一些自己或是别人的资料,有的资料来源于网上,如果您是原作者,请联系我们。我们会及时处理好的。
快速搜索:
主题:PIC CCS 外部EEPROM读写函数您是本帖的第 1189 个阅读者
huayiadt

管理员
发帖:18
主页:http://www.029huayi.com  EMAIL:029huayi@163.com  QQ号码:  IP地址:未知  来自地区:未知楼 主
 PIC CCS 外部EEPROM读写函数

/*CCS 外部EEPROM 读写函数 for pic 单片机 */

/***************************************************
* Description - 24c02函数                         *
* Author -      www.029huayi.com 西安化易测控     *
* Date -        2007-12-06 21:07:23               *
* *************************************************/


#ifndef EEPROM_SDA

#define EEPROM_SDA  PIN_B1
#define EEPROM_SCL  PIN_B0

#endif

#define EPROM_SIZE    256

#define CMD_RD  0xA0
#define CMD_WR  0xA1

#use i2c(master,sda=EEPROM_SDA, scl=EEPROM_SCL)

/* 
 * ===  FUNCTION  ======================================================================
 *         Name:  InitEep
 *  Description:  初始化EEPROM
 * =====================================================================================
 */
void IintEep(void)
{
    output_low(eeprom_scl);
    output_high(eeprom_sda);
}

/* 
 * ===  FUNCTION  ======================================================================
 *         Name:  WriteEep
 *  Description:  写EEPORM
 * =====================================================================================
 */
void WriteEep(
                int8 address,             /* 写入地址 */
                int8 data                 /* 写入数据 */
             )
{

    i2c_start();
    i2c_write(CMD_RD);
    i2c_write(address);
    i2c_write(data);
    i2c_stop();
    delay_ms(11);
}

/* 
 * ===  FUNCTION  ======================================================================
 *         Name:  ReadEep
 *  Description:  读出数据
 *        Input:  address 读出数据
 *       Return:  读出数据
 * =====================================================================================
 */
int8 ReadEep(int8 address)
{
    int8 data;

    i2c_start();
    i2c_write(CMD_RD);                          /* 发送地址 */
    i2c_write(address);

    i2c_start();
    i2c_write(CMD_WR);                          /* 读出数据 */
    data = i2c_read(0);
    i2c_stop();

    return (data);
}

//代码的编辑与HTML的由GVIM生成

西安化易
www.029huayi.com
2007-12-06 21:55编辑 | 回复 | 固顶 | 屏蔽 | 删除
页次:1/1页 每页10 共1分页:9 1 :
公司地址:西安市桃园路118号空军宾馆西办公楼   邮政编码:710077  Email:029huayi@163.com

 联系电话:029-84237745                                              传真号码:029-8424 7500
  版权所有.2007.西安博贯测控技术有限公司   陕ICP备07501239