导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→AT29C512FLASH编程求救!!!

* 21430: AT29C512FLASH编程求救!!!

   billy 
billy发表的帖子 

 AT29C512FLASH编程求救!!!
我现在在做一个项目,里面要用到AT29C512做数据保存,我的硬件是AT29512的WR接单片机的WR,其OE接单片机的RD,地址低8位用HC373锁存,CE接“0”,看资料512的数据是按页存储的,512个页,每个页128个字节,必须一次写完128字节,但我按资料上的方法怎么也打不开数据写保护,始终写不进数据,是不是方法不对?下面是测试用的,在其中的一个页中写入00H,01H,02H,...7FH,80H,然后再读入存进去的首32个数据放入30H....4FH,以便查看操作的正确性。
........
        mov     a,      #0aah
        mov     dptr,   #5555h
        movx    @dptr,  a
        lcall   delay           ;延时10ms
        mov     a,      #55h
        mov     dptr,   #2aaah
        movx    @dptr,  a
        lcall   delay           ;延时10ms
        mov     a,      #80h
        mov     dptr,   #5555h
        movx    @dptr,  a
        lcall   delay           ;延时10ms
        mov     a,      #0aah
        mov     dptr,   #5555h
        movx    @dptr,  a
        lcall   delay           ;延时10ms
        mov     a,      #55h
        mov     dptr,   #2aaah
        movx    @dptr,  a
        lcall   delay           ;延时10ms
        ;打开数据写保护状态;

        mov     dptr,   #0080h  ;写第二页
        mov     a,      #00h
        mov     r7,     #80h    ;128字节计数器

here:
        movx    @dptr,  a
        lcall   delay           ;延时10ms
        inc     a
        inc     dptr
        djnz    r7,     here

        mov     a,      #0aah
        mov     dptr,   #5555h
        movx    @dptr,  a
        lcall   delay           ;延时10ms
        mov     a,      #55h
        mov     dptr,   #2aaah
        movx    @dptr,  a
        lcall   delay           ;延时10ms
        mov     a,      #0a0h
        mov     dptr,   #5555h
        movx    @dptr,  a
        lcall   delay           ;延时10ms
        ;数据写保护
        mov     r7,     #20h    ;读入32字节
        mov     r1,     #30h    ;内存指针,从30h开始存储
        mov     dptr,   #0080h  ;外部指针,指向512的第二页
there:
        movx    a,      @dptr
        mov     @r1,    a
        inc     dptr
        inc     r1
        djnz    r7,     there
........
但运行后内存中的32个字节全部是FFH,不知道什么地方出错了,请用过AT29C512的朋友务必帮个忙,不胜感激!指出其中的不对,最好能给出一个简单的: 打开写保护状态->  写入数据->  设置写保护 的简单程序示例,或直接在我给出的程序上改,请大家务必帮帮忙!这儿先谢谢了!

发表时间:2003年3月22日21:05:54

  
回复该帖

本主题共有 3 帖,分页:>>>>>该主题的所有内容[3]条

 *树形目录 只列出部分跟帖的标题以及简单的摘要信息 该主题的部分跟帖如下:

  21463.[详细]没人用过AT29C512吗?怎么没人回答?
摘要:......(无内容)
- [billy][1340次] 2003年3月23日

  44134.[详细]你好,朋友,你的问题解决了没有?我想和你交流一下可以么?
摘要:......(无内容)
- [fjddxx][924次] 2003年11月1日

[上一篇帖子]:请问我的AT90S8515不小心让我给弄坏了,可是我买了一个上上怎么还是不好用啊?我也照你们写的已经
[下一篇帖子]:请帮忙!    温度采集器我用AD7714和AT89C52做