这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 综合技术 » 基础知识 » 44B0,FLASH 有关44B0程序写入FLASH不能运行的问题!

共2条 1/1 1 跳转至

44B0,FLASH 有关44B0程序写入FLASH不能运行的问题!

院士
2006-09-17 18:14:16     打赏
44B0,FLASH 有关44B0程序写入FLASH不能运行的问题!



关键词: FLASH     有关     程序     写入     不能     行的     问题    

院士
2006-12-22 22:43:00     打赏
2楼
问 下面是S3C44B0初始化阶段的代码,在调试的时候,但是写到FLASH里程序就死在了对内存初始化的地方了!!硬件是没有问题的,我用其它的程序可以的,就是这个程序不行!请高手指点一下!
    mrs    r0, cpsr      ;enter svc mode and disable irq,fiq
    bic    r0, r0, #MODEMASK
    orr    r0, r0, #(SVC32Mode :OR: IRQ_BIT :OR: FIQ_BIT)
    msr    cpsr_c, r0

    ldr     r0,=0x01d20028
    ldr     r1,=0x00000001
    str     r1,[r0]

    ldr     r0,=0x01d2002c
    ldr     r1,=0x00000001
    str     r1,[r0]
    
    ldr        r0,=WTCON        ;watch dog disable
    ldr        r1,=0x0         
    str        r1,[r0]

    ldr        r0,=INTMSK
    ldr        r1,=0x07ffffff  ;all interrupt disable
    str        r1,[r0]
      

    ;****************************************************
    ;*    Set clock control registers                        *
    ;****************************************************
    ldr    r0,=LOCKTIME
    ldr    r1,=0xfff
    str    r1,[r0]

    [ PLLONSTART
    ldr    r0,=PLLCON            ;temporary setting of PLL
    ldr    r1,=((M_DIV<<12)+(P_DIV<<4)+S_DIV)    ;Fin=10MHz,Fout=40MHz
    str    r1,][r0]
    ]

    ldr        r0,=CLKCON         
    ldr        r1,=0x7ff8        ;All unit block CLK enable    
    str        r1,[r0]

    ;****************************************
    ;*  change BDMACON reset value for BDMA *   
    ;****************************************
    ldr     r0,=BDIDES0       
    ldr     r1,=0x40000000   ;BDIDESn reset value should be 0x40000000     
    str     r1,[r0]

    ldr     r0,=BDIDES1      
    ldr     r1,=0x40000000   ;BDIDESn reset value should be 0x40000000     
    str     r1,[r0]

    ;****************************************************
    ;*    Set memory control registers                    *     
    ;****************************************************
    
    ldr     r0,=0x01d2002c
    ldr     r1,=0x00000000          ;点灯
    str     r1,[r0]
    
    ;程序死在这里面了,不知道怎么回事
    ldr        r1,=SMRDATA
    ldmia   r0,{r1-r13}
    ldr        r0,=0x01c80000  ;BWSCON Address
    stmia   r0,{r1-r13}

    ldr     r0,=0x01d2002c
    ldr     r1,=0x00000001
    str     r1,[r0]
   
大家帮忙看看是怎么回事! 1: 下面的程序!后面接着的一段程序是存储器控制器的参数配置,你的bank1时序是否修改?能否正常工作,周期改小一点试试看。 2: 我将BANK0的所有参数改成最大了还是不行!我将BANK0的所有参数改成最大了还是不行!
真不知道是什么鬼问题? 3: ...    ;程序死在这里面了,不知道怎么回事
    ldr        r1,=SMRDATA
    ldmia   r0,{r1-r13}
    ldr        r0,=0x01c80000  ;BWSCON Address
    stmia   r0,{r1-r13}

第一句应该是ldr   r0,=SMRDATA,你的是R1 4: 抱歉,这是我的手误!!

共2条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]