This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

tms570ls3137 emif时序问题

 我现在用tms570ls3137和W5300通过cpu的emif接口连接现在发现写入w5300的数据不对,通过示波器观察发现cpu写存在问题,每写一个数据,emif的cs引脚出现三次使能,对应写信号也是三次,麻烦大家给解释一下,是不是cpu本身存在bug,读数据就不存在这个问题

图为写数据的时序图,黄色为片选信号,蓝色为写使能信号,这是写一次数据的时序

  • w5300就是一个标准的sram接口

  • Hi Meng,

       方便的话,能不能把对EMIF的初始化的程序和读写的工作方式详细说明一下,或是能够把这部分代码贴出来看看呢。

    如果不能复现你出的问题,我们也比较难找出问题。

    谢谢

    ken


  • void emif_ASYNC3Init(void)
    {
    /* USER CODE BEGIN (8) */
    /* USER CODE END */

        emifREG->CE4CFG = 0x00000000U;
        emifREG->CE4CFG = (1U << 31U)|
                          (0U << 30U)|
                          (4U << 26U)|
                          (5U << 20U)|
                          (2U << 17U)|
                          (1U << 13U)|
                          (7U << 7U)|
                          (2U << 4U)|
                          (3U << 2U)|
                          (emif_16_bit_port) ;
                      
        emifREG->AWCC  = (emifREG->AWCC)|
              (emif_pin_high << 29U)|
             (emif_pin_low << 28U)|
             (emif_wait_pin0 << 20U)|
             (0U);
         
        emifREG->PMCR  = (emifREG->PMCR) |
             (0U << 18U)|
             (emif_4_words << 17U)|
             (0U << 16U);
         
    /* USER CODE BEGIN (9) */
    /* USER CODE END */
    }

  • 您好,我现在也遇到了这个问题,请问您时怎么解决的?

  • 请问解决了吗?我也遇到了这样的问题
  • 请问楼主解决了问题吗?我也遇到了这样的问题。