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

 
 
> Проблемы с STK1000 для AVR32, Программирование AVR32 без Linux
Busel Roman
сообщение Jun 19 2007, 14:18
Сообщение #1


Участник
*

Группа: Новичок
Сообщений: 51
Регистрация: 19-06-07
Из: Республика Беларусь, г.Витебск
Пользователь №: 28 538



Пытаюсь программировать AP7000 в среде AVR32 Studio на языке С, без применения ОС Linux. Планировщик использую встроенный в AVR32 Studio.
Сразу написал программку по переменному переключению двух областей светодиодов LED0...LED7 (по 4 в каждой) через некоторую паузу. Все сразу заработало.
Далее решил ускорить работу микроконтроллера (по умолчанию все такты идут с частотой OSC0=20 MHz). Тут и возникли трудности.

ПРОБЛЕМА 1
Никак не могу заставить работать PLL на частоту 100 MHz (деление на 4 с последующим умножением на 20).
Текст программы следующий (часть кода, только то, что касается PLL):
Код
volatile avr32_pm_t *pm=&AVR32_PM;
pm->PLL0.pllosc=0;
pm->PLL0.pllmul=19;
pm->PLL0.plldiv=3;
pm->PLL0.pllopt=4;
pm->PLL0.pllen=1;
pm->MCCTRL.pllsel=1;

Микроконтроллер при запуске программы на выполнение сразу подвисает, в том числе и в режиме отладки.
После тщетных попыток добиться нормальной работы PLL, попробовал притормозить работу микроконтроллера, поделив тактовую частоту для CPU. Взамен приведенной выше части кода написал новые строки:
Код
pm->CKSEL.cpusel=2;
pm->CKSEL.cpudiv=1;

Единственный раз мне удалось откомпилировать и запустить на выполнение в STK1000. Вроде пауза между переключениями светодиодов увеличилась. Решил еще уменьшить частоту тактирования CPU изменив значение CKSEL.cpusel=5.

Вот тут и возникла
ПРОБЛЕМА 2
Программа компилируется успешно, однако, при попытке ее выполнения на STK1000, AVR32 Studio выдает ошибку:

Exception occurred during launch

Reason:
Connected to JTAGICE mkII version 4.38

Flash chip was not added.

No CFI device detected at address 0x00000000.


Далее любые мои действия по записи/стиранию Flash вызывают данную ошибку. То есть, фактически, я сейчас никак не могу изменить зашитую во Flash-память программу. Кроме того, в режиме Debug Run при пошаговом выполнении программы, строки выполняются не последовательно, а скачет сразу через несколько строк.

Прошу высказать свои мысли.

P.S. Хороший форум по AVR32: 3w avr32 ru
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
SpyBot
сообщение Jun 20 2007, 15:39
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 285
Регистрация: 5-11-05
Пользователь №: 10 491



Возможно надо понизить клок JTAG-а?
Go to the top of the page
 
+Quote Post
Busel Roman
сообщение Jun 21 2007, 06:30
Сообщение #3


Участник
*

Группа: Новичок
Сообщений: 51
Регистрация: 19-06-07
Из: Республика Беларусь, г.Витебск
Пользователь №: 28 538



Цитата(SpyBot @ Jun 20 2007, 18:39) *
Возможно надо понизить клок JTAG-а?

Пробовал и понижать (до 125 кГц), и повышать (до 8 МГц). Не помогает.
Старый ведь Cygwin в состоянии очистить и записать Flash без дополнительных операций по настройке чего-либо!
Цитата
В скриптах/коде которые настраивают внешнюю шину для связи с флеш так же должна быть
настройка режимов тактирования ядра.
Так что ищите такую настройку или внимательно читайте доки, там должно быть все описано.

Наверное, так получается, что в старой версии Cygwin при программировании Flash сначала происходил сброс делителей тактовой частоты, а затем уже следовали команды по инициализации внешней шины, к которой подключена Flash. Получается, что в новой версии Cygwin данную процедуру опустили (по крайней мере по умолчанию).
Go to the top of the page
 
+Quote Post
Master
сообщение Jun 22 2007, 08:43
Сообщение #4


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

Группа: Новичок
Сообщений: 170
Регистрация: 26-05-05
Из: Москва
Пользователь №: 5 405



Цитата(Busel Roman @ Jun 21 2007, 10:30) *
Наверное, так получается, что в старой версии Cygwin при программировании Flash сначала происходил сброс делителей тактовой частоты, а затем уже следовали команды по инициализации внешней шины, к которой подключена Flash. Получается, что в новой версии Cygwin данную процедуру опустили (по крайней мере по умолчанию).

Обратите внимание на комментарий к разделу AVR32 Studio 1.0 final release на бета-сайте Atmel.no - Don't use version 1.0.1!
Большая просьба, отпишите, если разрешите проблему.
В ближайшее время получу STK1000, думаю, столкнусь с аналогичными трудностями.

P.S. Пора бы уже создавать ветку по AVR32...
Go to the top of the page
 
+Quote Post
IgorKossak
сообщение Jun 22 2007, 17:20
Сообщение #5


Шаман
******

Группа: Модераторы
Сообщений: 3 064
Регистрация: 30-06-04
Из: Киев, Украина
Пользователь №: 221



Цитата(Master @ Jun 22 2007, 11:43) *
P.S. Пора бы уже создавать ветку по AVR32...

Такое же мнение было и по поводу ветки для MIPS. Ну и насколько она популярна?
Основание должно быть именно такое, а не просто желание что-то выделить и ещё более раздуть структуру форума.
Подождём пока.
Go to the top of the page
 
+Quote Post
singlskv
сообщение Jun 22 2007, 18:44
Сообщение #6


дятел
*****

Группа: Свой
Сообщений: 1 681
Регистрация: 13-05-06
Из: Питер
Пользователь №: 17 065



Цитата(IgorKossak @ Jun 22 2007, 21:20) *
Такое же мнение было и по поводу ветки для MIPS. Ну и насколько она популярна?
Основание должно быть именно такое, а не просто желание что-то выделить и ещё более раздуть структуру форума.
Подождём пока.

IgorKossak
Думаю что AVR32 таки придется выделять в отдельную ветку, правда спешить с этим точно
нет смысла.
Наверное имело бы смысл попросить авторов топиков про avr32 начинать свои
топики типа так:
AVR32: описание теммы...
что бы потом было легко это выделить в отдельную ветку.

P.S. Эээ... ну мне просто сказали сегодня что через пару недель у меня тоже
будет кит NWG100 для разбирательства с avr32...
Go to the top of the page
 
+Quote Post
IgorKossak
сообщение Jun 23 2007, 09:15
Сообщение #7


Шаман
******

Группа: Модераторы
Сообщений: 3 064
Регистрация: 30-06-04
Из: Киев, Украина
Пользователь №: 221



Цитата(singlskv @ Jun 22 2007, 21:44) *
IgorKossak
Думаю что AVR32 таки придется выделять в отдельную ветку, правда спешить с этим точно
нет смысла.
Наверное имело бы смысл попросить авторов топиков про avr32 начинать свои
топики типа так:
AVR32: описание теммы...
что бы потом было легко это выделить в отдельную ветку.

Я над этим бьюсь уже давно, да всё попусту. Пользователей не переделать. Особенно начинающих и неопытных.
Потому то и пестрит форум сообщениями типа: "Тупой вопрос", "Помогите", "Как решить проблему?" и т. д.
Надеюсь, что в случе с AVR32 ситуация хоть как-то улучшится. Камень то далеко не любительский и народ, подступающийся к нему, далеко не дилетанты.
А что касается наполнения новой ветки существующими сообщениями, то за этим дело не станет.
Go to the top of the page
 
+Quote Post
Busel Roman
сообщение Jun 25 2007, 07:19
Сообщение #8


Участник
*

Группа: Новичок
Сообщений: 51
Регистрация: 19-06-07
Из: Республика Беларусь, г.Витебск
Пользователь №: 28 538



Товарищи участники форума, убедительная просьба посылать сообщения поближе к сути вопроса (проблемы с STK1000 для AVR32), а то получается общение на вольные темы...
Если так наболел вопрос "быть или не быть ветке AVR32", ну возьмите и откройте новую тему с опросом - пусть заинтересованные участники выскажут все за и против создания новой ветки.

Что касается умножения главной тактовой частоты микроконтроллера AP7000, то опытным путем я установил, что тактовая частота может принимать любые значения в диапазоне (10...70) MГц. Причем не важно какие именно значения имеют поля PLL0.plldiv и PLL0.pllmul. Как только пытаюсь получить такты с частотой вне этого диапазона, программа отказывается работать. По идее, элементы фильтра PLL должны с большой точностью задавать частоту главных тактов.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Busel Roman   Проблемы с STK1000 для AVR32   Jun 19 2007, 14:18
- - singlskv   Цитата(Busel Roman @ Jun 19 2007, 18:18) ...   Jun 19 2007, 16:48
|- - Busel Roman   Цитата(singlskv @ Jun 19 2007, 19:48) А ч...   Jun 20 2007, 09:41
|- - singlskv   Цитата(Busel Roman @ Jun 20 2007, 13:41) ...   Jun 20 2007, 10:40
|- - Busel Roman   Цитата(singlskv @ Jun 20 2007, 13:40) Вро...   Jun 20 2007, 12:17
|- - singlskv   Цитата(Busel Roman @ Jun 20 2007, 16:17) ...   Jun 20 2007, 12:43
- - GDI   Может стоит Еррату почитать? AP7000 ещё вроде даже...   Jun 20 2007, 06:34
- - SpiritDance   По-моему несовместимость разных версий - это станд...   Jun 20 2007, 10:08
- - Busel Roman   Цитата(Master @ Jun 22 2007, 11:43) ... D...   Jun 22 2007, 11:53
|- - Busel Roman   Наконец, нашел причину возникновения ПРОБЛЕМЫ 2 (б...   Jun 22 2007, 13:01
- - bzx   Цитата(singlskv @ Jun 22 2007, 22:44) P.S...   Jun 23 2007, 07:02
- - Busel Roman   Наконец получилось повысить частоту микроконтролле...   Jun 26 2007, 11:34
- - Busel Roman   Есть два способа перепрограммировать Flash в том с...   Oct 1 2007, 13:18


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

 


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


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