打印
[51单片机]

关于一个AT24C08 的读写问题

[复制链接]
1458|4
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
a1129584094|  楼主 | 2013-11-20 19:08 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
sbit A2 =P2^0;                          //ADDRESS INPUT
sbit SCL=P2^1;                          //SEAIAL CLOCK INPUT
sbit SDA=P2^2;                          //SERIAL DATA
sbit led2=P3^1;


//SCL=1时SDA下降沿表示开始
void eeprom_start(void)
{
        SCL=1;
        ;;
        SDA=0;
        ;;
        SCL=0;
}

//SCL=1时SDA出现上升沿表示停止
void eeprom_stop(void)
{
        SCL=1;
        ;;
        SDA=1;
        ;;
        SCL=0;
}

//AT24C02写一个字节
void eeprom_write(uint8 x)
{
        uint8 a;
        for(a=0;a<8;a++)
        {
                SDA=(bit)(x&0x80);
                SCL=1;
                ;;
                SCL=0;
                ;;
                x<<=1;
        }
}

void respons(void)
{
        SDA=1;
        SCL=1;
        ;;
        while(SDA==1);
        buzzer=~buzzer;
        SCL=0;
        ;;
}

//AT24C08读操作
uint8 eeprom_read()
{
        uint8 a,b;
        SCL=1;
        for(a=0;a<8;a++)
        {
                b<<=1;
                SCL=0;
                ;;
                SCL=1;
                ;;
                b=b|SDA;               
        }
        return b;
}

相关帖子

沙发
craaazyfor| | 2013-11-21 17:09 | 只看该作者
呵呵,啥问题?

使用特权

评论回复
板凳
JasonWangSE| | 2013-11-21 18:01 | 只看该作者
单片机频率是多少的?貌似延时不够

使用特权

评论回复
地板
a1129584094|  楼主 | 2013-11-27 19:49 | 只看该作者
craaazyfor 发表于 2013-11-21 17:09
呵呵,啥问题?

感谢  我自己已经解决了

使用特权

评论回复
5
a1129584094|  楼主 | 2013-11-27 19:51 | 只看该作者
JasonWangSE 发表于 2013-11-21 18:01
单片机频率是多少的?貌似延时不够

11.0592MHZ    按理说应该够了    单片机执行一个操作都需要几微妙  我想这里应该够了    谢谢你   不是这个问题  我自己搞定了

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3

主题

7

帖子

0

粉丝