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

 
 
> ADUC7020 не запускается
Eugeny25
сообщение Jun 17 2009, 21:36
Сообщение #1





Группа: Новичок
Сообщений: 5
Регистрация: 17-03-09
Пользователь №: 46 212



Разжился я маленькой макетной платой от AD,
на ней стоит только ADUC7020 стабилизатор на 3,3В, две кнопки, два светодиода и еще несколько конденсаторов.
Схема тут:
http://www.analog.com/static/imported-file...7020_adap_a.pdf

Чтобы начать, слепил маленькую програмку, – она должна была мигать светодиодом, подключенным к порту P4.2.
Текст на СИ вот такой:

#include <aduc7020.h>

int main (void)
{
unsigned long i; // Delay var

GP4DAT = 0x04000000; // P4.2 defined as Output
while (1) //Loop forever
{
GP4DAT ^= 0x00040000; // Toggle P4.2 LED
for (i = 0; i < 100000; i++);
}
}

Оттранслировал все это Кейл-ом, и загрузил ARMWSD.
Загрузка проходит, но светодиод не мигает :-[,
такое впечатление, что до исполнения сишного кода дело не доходит.
В качестве пролога я использовал стандартный файл ADuC702x.s, поставляемый вместе с кейлом.

Вопрос собственно в следующем:
1) Может ли быть так, что какое-нибудь прерывание или исключительная ситуация
мешает процессору дойти до исполнения кода, написанного на Си
(например нужно какую-нибудь ногу подтянуть к питанию (предположим TMS или TDI, чего на плате не сделано) или еще что-нибудь в этом же роде)
2) Может у кого-нибудь есть HEX файл, который заведомо мигает этим светодиодом на ADuC7020, а я что-нибудь неправильно странслировал?
3) Или все-таки мне достался битый процессор, хотя он явно загружается, и после нажатия кнопки RUN в ARMWSD,
тот пишет running. Кроме того MRST, ведет себя адекватно и после появления питания или отпускания Reset-a переходит c правильной задержкой в 1.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Сергей Борщ
сообщение Jun 18 2009, 11:13
Сообщение #2


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



1)Надо смотреть листинг.
2)Такой цикл компилятор скорее всего выбросит - с его точки зрения он ничего полезного не делает. Чтобы обойти это, объявите i с квалификатором volatile.
3)Насколько я помню, никаких дополнительных сигналов кроме сброса подавать не надо (работал с 7021).


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 28th July 2025 - 20:14
Рейтинг@Mail.ru


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