at24c02.c
来自「我写的针对lpc2141的ucos源码」· C语言 代码 · 共 53 行
C
53 行
#include <LPC214X.h>
#include "type.h"
#include "i2c.h"
#include "at24c02.h"
#include "delay.h"
#define WRITE_ADDR 0XA0
#define READ_ADDR 0XA1
void e2prom_byte_write(uint8 address,uint8 data)
{
uint8 buf[2];
I2C_WR_UNIT i2c_op[1];
delay(5*1000);
buf[0]=address;
buf[1]=data;
i2c_op[0].device_addr=WRITE_ADDR;
i2c_op[0].length=2;
i2c_op[0].buffer=buf;
i2c_op[0].counter=0;
i2c0_operation(i2c_op,1);
}
uint8 e2prom_random_read(uint8 address)
{
uint8 subaddr[1];
uint8 read_buf[1];
I2C_WR_UNIT i2c_op[2];
delay(5*1000);
subaddr[0]=address;
i2c_op[0].device_addr=WRITE_ADDR;
i2c_op[0].length=1;
i2c_op[0].buffer=subaddr;
i2c_op[0].counter=0;
i2c_op[1].device_addr=READ_ADDR;
i2c_op[1].length=1;
i2c_op[1].buffer=read_buf;
i2c_op[1].counter=0;
i2c0_operation(i2c_op,2);
return read_buf[0];
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?