AVR模拟I2C读写24C02的相关函数(已测)
(2011-02-19 20:27:13)
标签:
i2c模拟avr24c02协议it |
分类: AVR_ARM |
//文件名:I2C.h
//描述:AVR模拟I2C读写24C02的相关函数
#include<iom16v.h>
#include<macros.h>
#include"I2C.h"
//外部上拉电阻,PORTC.0--SCL,PORTC.1--SDA,模拟I2C协议
//当DDRC.0和DDRC.1置为输出时,拉低SDA;置为输入时,外部上拉拉高SDA
#define SCL_0 DDRC|=BIT(0)
#define SCL_1 DDRC&=~BIT(0)
#define SDA_0 DDRC|=BIT(1)
#define SDA_1 DDRC&=~BIT(1)
#define SDA_in (PINC&0X02)
#define Page_size 8
//函数名;I2C_inti
//输入:无
//输出:无
//描述:初始化SDA和SCL
void I2C_inti(void)
{
}
//函数名;Delay
//输入:无
//输出:无
//描述:延时1us
void Delay(void)
{
}
//函数名;delay_ms
//输入:无
//输出:无
//描述:延时1ms
void delay_ms(uint ms)
{
}
//函数名;I2C_Start
//输入:无
//输出:无
//描述:I2C起始条件
uchar I2C_Start(void)
{
}
//函数名;I2C_Stop
//输入:无
//输出:无
//描述:I2C结束条件
void I2C_Stop(void)
{
}
//函数名;Write_I2C
//输入:待写的一字节数据data
//输出:有无应答,有应答--1;无应答--0
//描述:发送一字节,返回有无应答
uchar Write_I2C(uchar data)
{
}
//函数名;Read_I2C
//输入:是否应答ack,0--不应答,1--应答
//输出:接受的一字节数据
//描述:接收一字节数据
uchar Read_I2C(uchar ack)
{