关于at91sam9263上nor flash的调试~~~

[复制链接]
6094|7
 楼主| zealane 发表于 2010-1-26 17:37 | 显示全部楼层 |阅读模式
我们板子是仿照at91sam9263ek板做的。但是只在 EBI0的CS0上接了一个sst39vf6401B的nor flash,没有接dataflash。
仿真器采用Jtag,软件采用jlink。
现在用jlink无法直接进行flash烧写。
没办法,只能从最底层开始调试。:(
用atmel的工程范例basic-norflash-project-at91sam9263-ek进行板子调试。
但是在到了BOARD_ConfigureNorFlash48MHz(busWidth[i] * 8)时,识别不了该flash。
好像atmel的工程范例里只支持amd,Intel的flash。

void BOARD_ConfigureNorFlash48MHz(unsigned char busWidth)
{
    // Configure SMC
    AT91C_BASE_SMC0->SMC_SETUP0 = 0x00000001;    //  这几个值表示什么?
    AT91C_BASE_SMC0->SMC_PULSE0 = 0x07070703;
    AT91C_BASE_SMC0->SMC_CYCLE0 = 0x00070007;
    AT91C_BASE_SMC0->SMC_CTRL0  = (AT91C_SMC_READMODE
                                  | AT91C_SMC_WRITEMODE
                                  | AT91C_SMC_NWAITM_NWAIT_DISABLE
                                  | ((0x1 << 16) & AT91C_SMC_TDF));
                           
    if (busWidth == 8) {
        AT91C_BASE_SMC0->SMC_CTRL0 |= AT91C_SMC_DBW_WIDTH_EIGTH_BITS;
    }
    else if (busWidth == 16) {

        AT91C_BASE_SMC0->SMC_CTRL0 |= AT91C_SMC_DBW_WIDTH_SIXTEEN_BITS;
    }
    else if (busWidth == 32) {

        AT91C_BASE_SMC0->SMC_CTRL0 |= AT91C_SMC_DBW_WIDTH_THIRTY_TWO_BITS;
    }
}
目前的问题是:
   sst39vf6401B的SMC设置有什么特别的地方?
   哪里能找到sst39vf6401B驱动的,能共享一下吗?特急,谢谢了。
深圳英贝德 发表于 2010-1-26 21:35 | 显示全部楼层
您好:SST29VF6401,你找找有没有HJTAG可以支持AT91SAM9263烧写的,
他们的软件里面应该带的,只要配置一下寄存器就可以了。
 楼主| zealane 发表于 2010-1-27 08:50 | 显示全部楼层
谢谢。
您有hjtag的9263的配置吗
 楼主| zealane 发表于 2010-1-27 19:00 | 显示全部楼层
搞定了。
只需按照9260的配置,将寄存器地址调整一下。
again_gyf 发表于 2010-1-28 12:56 | 显示全部楼层
jflash是支持NORFLASH烧写的!
深圳英贝德 发表于 2010-1-30 08:16 | 显示全部楼层
9260,我们用过BANYAN,不需要配置什么东西,直接就可以使用。
主要是初始化的时序就刚好够用。
深圳英贝德 发表于 2010-1-30 08:17 | 显示全部楼层
你可以最简单的,先跑一个程序,初始化了寄存器,再用BANYAN来烧写,也是一定可以的。
tigerchen 发表于 2010-9-9 13:12 | 显示全部楼层
您需要登录后才可以回帖 登录 | 注册

本版积分规则

31

主题

249

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部