Добрый день !
Вот есть вопрос в докуменьте написано что чтобы сделать загрузку через уарт1 надо:
1 - boot0 и eedat в высокий уровень а boot1 в низкий
2 - COM настоноить 9600:8:1
3- подать питание и получить на экране терминала символ "<"
Все выше описаное делалось и получалось
4- подать на уарт1 4 ASCII символа либо "CRUS" или "SRUC"
5- подать на уарт1 данные 2048 байт (можно ли меньше ? в каком формате ? как отправить их через терминал? как получить его в IAR фиксированой длинны 2048?)
6- Получить на терминале символ ">" сигнализирующий окончание приема!
После чего процессор переходит на физический адресс 0x80014000 и начинает исполнять полученный код в ARM режиме!
Все верно ?
Пока не получается кто знает возможные варианты ?
Вот щас чтото произошло и теперь на входе RSTON как будто включается транзистор и подтягивает внешний резистор к земле как будто работает как выход с открытым коллектором ! что такое не пойму толь вход умер ! частота подтягивания гдето 2Гц ! такого не должно быть это точно или как ?
Цитата(asen @ Mar 1 2007, 10:08)

Вот щас чтото произошло и теперь на входе RSTON как будто включается транзистор и подтягивает внешний резистор к земле как будто работает как выход с открытым коллектором !
Ну так это задокументировано:
RSTOn Syscon 4ma User Reset in out - open drain
А вот про частоту подтягивания я что-то не понял... Это после подачи PORn через 0.5 сек реагирует RSTOn или как?
Ну прикрутил я просто к входу RSTOn резистор чтоб тот поттягивал к 3,3в и смотрю осцилом а там прямоугольник с частотой 2Гц это нормально нет ?
Цитата(asen @ Mar 1 2007, 11:29)

Ну прикрутил я просто к входу RSTOn резистор чтоб тот поттягивал к 3,3в и смотрю осцилом а там прямоугольник с частотой 2Гц это нормально нет ?
нет, это не нормально!
А может это влияние схем из аппноутов? посмотрите что на ноге PORn творится...
У вас распаян аппаратный вотчдог (и буфер под 32768) ? как подсмотрел по картинке ревизия кристалла E1 так что он с обоими багами ..
У меня стаит АТmega48 она генерит 32768 кГц и делает сбросы т.е подает низкий уровень на PORn и RSTOn во время включения питания. Т.е алгоритм ее работы такой ждем поевления высокого уровня RDLED после чего выжидаем еще 1 сек и опускаем линии PORn и RSTOn в низкий уровень на 0,2сек. также к ATmega прикручены 2 кнопки по которым при нажатии атмега выдает импульс на нужны вход сброса
К стати PORn все нармально !
Еще идеи есть кроме как сменить проц ?
Цитата(asen @ Mar 1 2007, 12:10)

У меня стаит АТmega48 она генерит 32768 кГц и делает сбросы т.е подает низкий уровень на PORn и RSTOn во время включения питания. Т.е алгоритм ее работы такой ждем поевления высокого уровня RDLED после чего выжидаем еще 1 сек и опускаем линии PORn и RSTOn в низкий уровень на 0,2сек. также к ATmega прикручены 2 кнопки по которым при нажатии атмега выдает импульс на нужны вход сброса
К стати PORn все нармально !
Еще идеи есть кроме как сменить проц ?
Вручную трогать RSTOn не обязательно, хоть она и помечена, как IO .. В референс дизайне у цирруса дергается только PORn.
Так что для чистоты эксперимента можно на меге ногу, идущую к цирюку RSTOn, вообще в 3 состояние...
Вообщем так выставил на ноге меги отвечающей за RSTOn третие состояние но она по прежнему притянута к 3,3 через резистор 2,2к
Сейчас действия разворачиваются так включаем питание если долго плата лежала без питания и загрузка выставлена с уарт1 то прив включении питания красны светодиод сначало не горит примерно 1 сек потом подается на PORn импульс длятельностью 0,2с и он загарается и однаврименно на входе RSTOn опять появляется меандр частотой 2Гц да еще в терминал приходит символ < что толлько мне пока от этого не тепло не жарка какие эксперементы еще поставим
Andrei....
Mar 1 2007, 18:11
Цитата(asen @ Mar 1 2007, 13:43)

Вообщем так выставил на ноге меги отвечающей за RSTOn третие состояние но она по прежнему притянута к 3,3 через резистор 2,2к
Сейчас действия разворачиваются так включаем питание если долго плата лежала без питания и загрузка выставлена с уарт1 то прив включении питания красны светодиод сначало не горит примерно 1 сек потом подается на PORn импульс длятельностью 0,2с и он загарается и однаврименно на входе RSTOn опять появляется меандр частотой 2Гц да еще в терминал приходит символ < что толлько мне пока от этого не тепло не жарка какие эксперементы еще поставим
как я понимаю - постоянно перегружается процессор! у меня была такое было при нестабильной работе часового кварца (подключённого к процессору), проверьте его запуск (обратите внимание на номиналы емкостей).
А можно по подробней у меня сигнал 32768 Гц подается на сигнал XTAL1 c микроконтроллера АТмега через ограничитель из 2 последовательно включенных диодов т.е. в уровнях 0 и 1,2В какие там могут быть кварцы и конденсаторы? можете сказать как справились с этой проблемой? может уровень синнала еще уменьшить?
Andrei....
Mar 2 2007, 10:15
Цитата(asen @ Mar 2 2007, 06:01)

А можно по подробней у меня сигнал 32768 Гц подается на сигнал XTAL1 c микроконтроллера АТмега через ограничитель из 2 последовательно включенных диодов т.е. в уровнях 0 и 1,2В какие там могут быть кварцы и конденсаторы? можете сказать как справились с этой проблемой? может уровень синнала еще уменьшить?
У меня использовался обычный часовой кварц, были проблемы с запуском. Без кварца, как известно процессор не стартует. Поскольку вы используете внешний генератор, вам должно быть виднее что делать. Но просто обратите внимание на этот момент. Если возможно, то попробуйте в качестве эксперемента часовой кварц.
А при загрузкее с уарта должен вывод зеленого светодиода в 1 переключится или красного ?
Andrei....
Mar 2 2007, 11:35
Цитата(asen @ Mar 2 2007, 10:22)

А при загрузкее с уарта должен вывод зеленого светодиода в 1 переключится или красного ?
во премя ресета горят одновремнно зелёный и красный, потом
при загрузке с UARTа должен загораться зелёный светодиод, красный выключается.
А насчет алгоритма написанного в начале топа все правельно ? или я чтото не так понял ?
Andrei....
Mar 2 2007, 13:00
Цитата(asen @ Mar 2 2007, 11:45)

А насчет алгоритма написанного в начале топа все правельно ? или я чтото не так понял ?
насколько я помню, всё так!
А в каком формате отправлять фаил в bin или hex и как его получить спомощью IARа вы как отправляли по гипер терминалу
Цитата(asen @ Mar 2 2007, 13:14)

А в каком формате отправлять фаил в bin или hex и как его получить спомощью IARа вы как отправляли по гипер терминалу
В секции 4.1.2.2 (так она для 9315 называет подробно описано что когда передается и когда диод выключается)
Ну как написано в доке она эти первые 2048 байт внутренняя ROM помещает в eth буфер, расположенный в 0x80014000 и стартует в режиме арм супервизора.
Я вот для записи во flash пользуюсь утилитой download (как я понял, она сначало по указанной схеме отправляет так называемы primary boot code, потом этот код уже сам загружает по UART основной прошивщик secondary boot code, который уже и вытягивает весь образ флеши (с 0 байта).
И как отправить по гипертерминалу я вообще не представляю..
Чем вам download не устраивает? (download также поддерживает запись в SPI flash)
Andrei....
Mar 2 2007, 15:02
Цитата(asen @ Mar 2 2007, 13:14)

А в каком формате отправлять фаил в bin или hex и как его получить спомощью IARа вы как отправляли по гипер терминалу
отправлять бинарный файл, видимо это bin (я c IARом не работал)
Вообщем с загрузкой с SPI EEPROM разобрался все работает нармально светодиоды мигают а вот с загрузкой через уарт пока глухо !
Описываю что произходит включаю поддтяжку как написано в документе как написано для загрузки с уарта включаю питание сначало загараются все светодиоды потом красный гаснет и горит только зеленый в этот же момент на терминал выводится символ < далее пишу в терминале символы CRUS гаснет и зеленый светодиод далее посылаю в порт файл формата бин длинной 2048 байт с следующим содержанием
#include <ioep9302.h>
void Delay (unsigned long a) {
while (--a!=0);
}
int main()
{
int addr,data,status_reg;
PEDDR=3;
for (;;)
{
PEDR |=3;
Delay (500000);
PEDR=0;
Delay (500000);
}
return 0;
}
и все глухо встает намертво не мигает светодиод никак хоть ты лопни в чем ошибка не знаю !!!
Поможите кто знает или какие идеи есть на этот счет !
Andrei....
Mar 15 2007, 09:53
а этот же файл из eeprom нормально работает?
Andrei....
Mar 15 2007, 16:09
Цитата(asen @ Mar 15 2007, 14:08)

Да работает нармально !
честно говоря с eeprom'не пробовал загрузку, но судя по описанию ситуациция аналогична UART'у.
сейчас снова проверил загрузку через UART - у меня всё работает (как вариант проверки можете загрузить мой бинарник). Однако следует учесть что:
1) полный размер загружаемого файла должен составлять 2048 байт, с учётом записи CRUS, причём весь файл грузится с 0x80014000, а потому управление передаётся на точку 0x80014004 (надо учесть этот момент при компиляции!!!)
2) при попытке загрузить больший файл почему то у меня запуска не происходило, так и не понял почему, но это уже видимо другие глюки.
Огромное спасибо у меня какраз фаил был 2048 без учета CRUS и распрологался не по адрессу 80014004 а по адресу 80014000 вот вечером посмотрю наверное в этом и косяк если что выложу бинарник Спасибо !!!
Andrei....
Mar 16 2007, 09:57
Цитата(asen @ Mar 16 2007, 05:22)

Огромное спасибо у меня какраз фаил был 2048 без учета CRUS и распрологался не по адрессу 80014004 а по адресу 80014000 вот вечером посмотрю наверное в этом и косяк если что выложу бинарник Спасибо !!!
Проверил загрузку из eeprom'а - один и тот же файл у меня загружается как с eeprom'а так и через UART (что вполне логично).
Viktor26
Apr 18 2008, 07:07
Товарищи, выложите пожалуйста проэкт в ИАРе мигания ледами загружаемый по UART1, а то толи я не туда в линкере данные бросаю:
-DROMSTART=80014004
-DROMEND=800147B1
-Z(CODE)INTVEC=800147C1-80014800
Толи другие проблеммы типа стартапа неправильного. Буду премного благодарен.
ПС: redboot_EP9302 грузится без проблемм, так что все ждамперы стоят правильно
aaarrr
Apr 18 2008, 07:28
Странный у Вас скрипт для линкера:
Цитата(Viktor26 @ Apr 18 2008, 11:07)

-DROMSTART=80014004
-DROMEND=800147B1
-Z(CODE)INTVEC=800147C1-80014800
Цитата(Viktor26 @ Apr 18 2008, 11:07)

Толи другие проблеммы типа стартапа неправильного. Буду премного благодарен.
Стартапа там как раз не требуется, только SP установить. Стандартный стартап и библиотеки лучше отключить.
Примером могу поделиться только под ADS.
Viktor26
Apr 18 2008, 08:09
Цитата(aaarrr @ Apr 18 2008, 10:28)

Примером могу поделиться только под ADS.
Буду оч признателен. Мне побольшому счёту неважено наполнение, главное чтобы при загрузке по сериалу я почувствовал что что-то дышит, а там я уже внутренность переделаю.
aaarrr
Apr 18 2008, 08:47
Вот очень простой проект:
Нажмите для просмотра прикрепленного файлаГрузить надо load_me.bin
Если захотите разобраться, что-то изменить и т.п., то придется поставить ADS 1.2
Для просмотра полной версии этой страницы, пожалуйста,
пройдите по ссылке.