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

 
 
> Atxmega Внешний кварц
KIG
сообщение May 28 2011, 07:55
Сообщение #1


Частый гость
**

Группа: Участник
Сообщений: 115
Регистрация: 25-12-06
Пользователь №: 23 884



Добрый день!

Начал изучать Atxmega192A. Программирую в AVR Studio 4.18. Как я понял, необходимо в программе сначала определить какой будет использоваться кварц (у меня внешний). Для этого написал следующую функцию:

Код
void CLK_init()
{
CCP=0xD8;
CLK.CTRL=3;
CCP=0xD8;
OSC.XOSCCTRL=0x40;
CCP=0xD8;
OSC.CTRL=(1<<3);
}


Оптимизация кода включена O1. При отладке кода в AVR Studio вижу, что в ССP регистр записывается 1 вместо D8. СLK.CTRL вообще не обновляется. А при записи регистра OSC.CTRL в нем остается изначально установленный нулевой байт, разрешающий работу внутреного кварца. Подскажите, пожалуйста, что я делаю не так.

Сообщение отредактировал KIG - May 28 2011, 08:15
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
GarikBaza
сообщение Aug 1 2011, 21:08
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 18
Регистрация: 17-12-07
Из: Brovary
Пользователь №: 33 378



IAR 5.51.0, без оптимизации, все работает.
Внешний кварц на 8.000 Мгц, тактовая 32.000МГц
CODE
void init_clk ( void )
{
CLKSYS_XOSC_Config( OSC_FRQRANGE_2TO9_gc, false, OSC_XOSCSEL_XTAL_16KCLK_gc );
CLKSYS_Enable( OSC_XOSCEN_bm );
do {} while ( CLKSYS_IsReady( OSC_XOSCRDY_bm ) == 0 );
CLKSYS_Main_ClockSource_Select( CLK_SCLKSEL_XOSC_gc );
CLKSYS_Disable( OSC_RC2MEN_bm );
CLKSYS_PLL_Config ( OSC_PLLSRC_XOSC_gc, 4);
CLKSYS_Enable( OSC_PLLEN_bm );
CLKSYS_Prescalers_Config( CLK_PSADIV_1_gc, CLK_PSBCDIV_1_1_gc );
do {} while ( CLKSYS_IsReady( OSC_PLLRDY_bm ) == 0 );
CLKSYS_Main_ClockSource_Select( CLK_SCLKSEL_PLL_gc );
}


Сообщение отредактировал GarikBaza - Aug 1 2011, 21:10
Go to the top of the page
 
+Quote Post
Leonmezon
сообщение Aug 2 2011, 04:34
Сообщение #3


Частый гость
**

Группа: Участник
Сообщений: 191
Регистрация: 11-02-09
Из: Краснодар
Пользователь №: 44 686



Тогда надо смотреть что из себя представляет функция CLKSYS_Main_ClockSource_Select( CLK_SCLKSEL_PLL_gc ); в IAR 5.51.0 (а именно после компиляции) и сравнивать с кодом Atmel (асмеблеровский из даташита)
(Веть IAR писала свои функции на основе информации Atmel и может все эти моменты учла?)


Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- KIG   Atxmega Внешний кварц   May 28 2011, 07:55
- - V_G   Сначала надо разрешить кварцевый генератор, потом ...   May 28 2011, 12:26
- - asm_lock   Использовал ATxmega128A1....Подцепил внешний кваре...   Jun 22 2011, 09:42
- - Fusion   ATxmega32A4 с отключенной перефирией, внутренний г...   Jun 22 2011, 16:29
- - asm_lock   у меня тоже периферия отключена. Подключен внешний...   Jun 22 2011, 18:29
- - rubic   вот так я запускал кварц 7.372800 Код#include ...   Jun 24 2011, 19:56
- - Юрий_СВ   Кварц 4МГц + умножитель на 8 : (у меня работает бе...   Jun 25 2011, 11:38
|- - zumanah   Цитата(Юрий_СВ @ Jun 25 2011, 15:38) . В...   Jul 1 2011, 05:49
|- - Pavel_Bor   Возможно ли на xmege запустить 2 кварца? например ...   Jul 1 2011, 09:48
- - V_G   Там нет внутреннего кварца. А источники тактирован...   Jul 1 2011, 10:35
|- - Pavel_Bor   Цитата(V_G @ Jul 1 2011, 13:35) Там нет в...   Jul 1 2011, 10:45
- - ArtemKAD   Цитатаа internal(RC) это разве не внутренний? Внут...   Jul 1 2011, 11:26
- - zumanah   Цитата(Pavel_Bor @ Jul 1 2011, 14:45) а i...   Jul 3 2011, 08:11
- - V_G   Точность внутренних генераторов в xmege существенн...   Jul 3 2011, 11:10
- - uzig   Не проходит у меня снятие защиты в CCP: Код CCP =...   Aug 1 2011, 17:39
|- - Юрий_СВ   Цитата(uzig @ Aug 1 2011, 20:39) Не прохо...   Aug 1 2011, 18:07
- - uzig   Юрий_СВ не проходит Ваш вариант   Aug 1 2011, 18:18
|- - Leonmezon   Вот мой код: Код// Функция установки тактирования ...   Aug 1 2011, 18:21
|- - uzig   Цитата(Leonmezon @ Aug 1 2011, 22:21) а б...   Aug 1 2011, 18:33
|- - Leonmezon   Цитата(uzig @ Aug 1 2011, 22:33) Но выше ...   Aug 1 2011, 18:54
- - GarikBaza   CODE/*! \brief This function selects the ...   Aug 2 2011, 11:06


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

 


RSS Текстовая версия Сейчас: 29th June 2025 - 05:56
Рейтинг@Mail.ru


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