📄 tds6713evm.c
字号:
#include <csl.h>
#include <csl_mcasp.h>
#include <csl_i2c.h>
#include <csl_emif.h>
#include <csl_pll.h>
#include <TDS6713EVM.h>
//Local software delay function
static void PLLDelay(int Count)
{
volatile int i = Count;
while(i--);
}
// Initialize TDS6713EVME board
void TDS6713EVM_init()
{
// Initialize PLL Registers
PLL_bypass(); // Set PLL in bypass
PLLDelay(20);
//Reset PLL
PLL_reset();
PLLDelay(20);
//Set main multiplier/divisor
PLL_RSET(PLLM, 18); // 25MHz x 18 = 450MHz
PLL_RSET(PLLDIV0, PLL_PLLDIV0_RMK(1, 0)); // 450MHz / 1 = 450MHz
PLL_RSET(OSCDIV1, PLL_OSCDIV1_RMK(1, 4)); // 25MHz / 5 = 5Mhz
//Set DSP clock
PLL_RSET(PLLDIV1, PLL_PLLDIV1_RMK(1, 1)); // 450MHz / 2 = 225MHz
PLLDelay(20);
//Set peripheral clock
PLL_RSET(PLLDIV2, PLL_PLLDIV2_RMK(1, 2)); // 450MHz / 3 = 150MHz
PLLDelay(20);
//Set EMIF clock
PLL_RSET(PLLDIV3, PLL_PLLDIV3_RMK(1, 4)); // 450MHz / 5 = 90MHz
PLLDelay(20);
//Take PLL out of reset
PLL_deassert();
PLLDelay(1500);
//Enalbe PLL
PLL_enable();
PLLDelay(20);
}
//Spin in a delay loop for delay iterations
void TDS6713EVM_wait(Uint32 delay)
{
volatile Uint32 i, n;
n = 0;
for (i = 0; i < delay; i++)
{
n = n + 1;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -