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.

RE: 关于delay us

那这个CPU clock speed是什么意思?

  • // DO NOT MODIFY THIS LINE.

    #define DELAY_US(A)  DSP28x_usDelay(((((long double) A * 1000.0L) / (long double)CPU_RATE) - 9.0L) / 5.0L)

    A对应需要延迟的时间,单位是us,L代表ns

    CPU clock speed 代表主频即SYSCLKOUT

    而 CPU_RATE是CPU clock speed的倒数

          Specify the clock rate of the CPU (SYSCLKOUT) in nS. 
     
          Take into account the input clock frequency and the PLL multiplier 
          selected in step 1. 
     
          Use one of the values provided, or define your own. 
          The trailing L is required tells the compiler to treat 
          the number as a 64-bit value. 
     
          Only one statement should be uncommented. 
     
          Example 1:150 MHz devices: 
                    CLKIN is a 30MHz crystal. 
     
                    In step 1 the user specified PLLCR = 0xA for a 
                    150Mhz CPU clock (SYSCLKOUT = 150MHz). 
     
                    In this case, the CPU_RATE will be 6.667L 
                    Uncomment the line:  #define CPU_RATE  6.667L 
     
          Example 2:  100 MHz devices: 
                      CLKIN is a 20MHz crystal. 
     
    	              In step 1 the user specified PLLCR = 0xA for a 
    	              100Mhz CPU clock (SYSCLKOUT = 100MHz). 
     
    	              In this case, the CPU_RATE will be 10.000L 
                      Uncomment the line:  #define CPU_RATE  10.000L 
    -----------------------------------------------------------------------------*/ 
    #define CPU_RATE    6.667L   // for a 150MHz CPU clock speed (SYSCLKOUT) 
    //#define CPU_RATE    7.143L   // for a 140MHz CPU clock speed (SYSCLKOUT) 
    //#define CPU_RATE    8.333L   // for a 120MHz CPU clock speed (SYSCLKOUT) 
    //#define CPU_RATE   10.000L   // for a 100MHz CPU clock speed (SYSCLKOUT) 
    //#define CPU_RATE   13.330L   // for a 75MHz CPU clock speed (SYSCLKOUT) 
    //#define CPU_RATE   20.000L   // for a 50MHz CPU clock speed  (SYSCLKOUT) 
    //#define CPU_RATE   33.333L   // for a 30MHz CPU clock speed  (SYSCLKOUT) 
    //#define CPU_RATE   41.667L   // for a 24MHz CPU clock speed  (SYSCLKOUT) 
    //#define CPU_RATE   50.000L   // for a 20MHz CPU clock speed  (SYSCLKOUT) 
    //#define CPU_RATE   66.667L   // for a 15MHz CPU clock speed  (SYSCLKOUT) 
    //#define CPU_RATE  100.000L   // for a 10MHz CPU clock speed  (SYSCLKOUT)

  • 你这个讲解非常详细 学习&感谢
  • 希望能帮到大家