реклама на сайте
подробности

 
 
> Вопрос по инециализации PLL1 и PLL2 и EP9302, Пару вопросов
asen
сообщение Dec 27 2007, 06:38
Сообщение #1


Знающий
****

Группа: Свой
Сообщений: 513
Регистрация: 5-09-05
Из: Барнаул
Пользователь №: 8 220



Разработал платку с данным процессором сейчас осваиваю вот вопрос такой встал почемуто не получаеться иницеализироать PLL что бы поднять часитоту ядра ! Это первое что я пытаюсь сделать программа по миганию светадиодам. Работаю с процессором по средствам MT-Link. Вообще я чтото поискал примеры инициализации переферии и не нашел может кто сможет дать свои? Буду очень презнателен!
Код инициализации PLL у меня следующий следующий :

Кварц 14,745600 МГц

void __delay_cycles (long int ckl)
{
for (;ckl>0;ckl--){}
}
int main()
{
int i;
PEDDR |=0xff;

while (1)
{
for (i=0;i<2;i++)
{

__delay_cycles(100000);
PEDR |=0x01;
__delay_cycles(100000);
PEDR &=0x00;
__delay_cycles(100000);
PEDR |=0x02;
__delay_cycles(100000);
PEDR &=0x00;
__delay_cycles(100000);
PEDR |=0x03;
__delay_cycles(100000);
PEDR &=0x00;

}
ClkSet1_bit.PLL1X1FBD1=30;
ClkSet1_bit.PLL1X2FBD2=34;
ClkSet1_bit.PLL1X2IPD=9;
ClkSet1_bit.PLL1_PS=3;
__no_operation();
__no_operation();
__no_operation();
__no_operation();
__no_operation();
__no_operation();
__no_operation();
__no_operation();
__no_operation();
__no_operation();

for (i=0;i<100;i++)
{

__delay_cycles(100000);
PEDR |=0x01;
__delay_cycles(100000);
PEDR &=0x00;
__delay_cycles(100000);
PEDR |=0x02;
__delay_cycles(100000);
PEDR &=0x00;
__delay_cycles(100000);
PEDR |=0x03;
__delay_cycles(100000);
PEDR &=0x00;

}
}
return 0;
}

07.gif
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов (1 - 1)
aaarrr
сообщение Dec 27 2007, 11:27
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Из приведенного выше кода совершенно невозможно понять, как определен ClkSet1_bit.

Вот мой код для запуска PLL:
Код
; ***************************************************************************
; * Clock and Power Configuration

; 1. PLL1

ClkSet1_Value    EQU    0x02a4b907; FCLK = 199.0575MHz
                            ; HCLK = FCLK / 2, PCLK = HCLK / 2

        ldr        r0, =ClkSet1_Value
        ldr        r1, =ClkSet1
        str        r0, [r1]
        nop
        nop
        nop
        nop
        nop

; 2. PLL2

ClkSet2_Value    EQU    0x000fc317; USB Clk = 48MHz

        ldr        r0, =ClkSet2_Value
        ldr        r1, =ClkSet2
        str        r0, [r1]

; 3. Poll PLL1_LOCK_REG and PLL2_LOCK_REG    (Wait 1ms ???)

        ldr        r1, =PwrSts
1
        ldr        r0, [r1]
        and        r0, r0, #0x00000280
        cmp        r0, #0x00000280
        bne        %B1

; 4. Set PwrCnt

        ldr        r0, =0x00000000; UART_BAUD = 7.372MHz, USB & DMAs disable
        ldr        r1, =PwrCnt
        str        r0, [r1]

Кроме того, после запуска PLL нужно перевести ядро из режима FastBus в асинхронный или синхронный режим тактирования.
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 21st July 2025 - 07:45
Рейтинг@Mail.ru


Страница сгенерированна за 0.01312 секунд с 7
ELECTRONIX ©2004-2016