打印
[AVR单片机]

x5045的EEPROM写不进去,但是能读出来??

[复制链接]
1198|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
qazplm3218|  楼主 | 2015-9-10 21:01 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

void wren_cmd(void)
{
    x5045_SCK_Clr;
    delay_us(5);
    x5045_CS_Clr;
    write_x5045(0x06);
    x5045_SCK_Clr;
    delay_us(5);
    x5045_CS_Set;   
}

void wrdi_cmd(void)
{
    x5045_SCK_Clr;
    delay_us(5);
    x5045_CS_Clr;
    write_x5045(0x04);
    x5045_SCK_Clr;
    delay_us(5);
    x5045_CS_Set;   
}

void write_x5045(unsigned char data)
{
     unsigned char x,y;
     x5045_SCK_Clr;
     for(x=0;x<8;x++)
     {
                 
         if((data&0x80)==0x80)
         {
             x5045_SI_Set;
         }
         else
         {
             x5045_SI_Clr;
         }
         delay_us(5);
         x5045_SCK_Clr;
         delay_us(5);
           
         x5045_SCK_Set;
         delay_us(5);
         data<<=1;         
     }
     x5045_SI_Clr;
}

void x5045_write_data(unsigned char data,unsigned char add)    //给x5045指定地址写入数据
{
   
    x5045_SCK_Clr;
    delay_us(5);
    x5045_CS_Clr;
    wren_cmd();
    x5045_CS_Set;
    delay_us(5);
    x5045_CS_Clr;
    write_x5045(0x02);
    write_x5045(add);
    write_x5045(data);
    x5045_CS_Set;
    delay_us(5);
    x5045_SCK_Clr;   
    wrdi_cmd();
}
请各位帮帮忙,看看是有问题?谢谢!!

相关帖子

沙发
694844985| | 2015-9-11 09:02 | 只看该作者
你怎么确定能写进去,首先确定硬件是不是有问题,然后认真阅读数据手册,看看时序是不是有问题。

使用特权

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

本版积分规则

26

主题

70

帖子

1

粉丝