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

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> crossworks&mt-link, таки нехотит работать
SpiritDance
сообщение Nov 30 2006, 11:28
Сообщение #1


Дух погибшего транзистора
****

Группа: Свой
Сообщений: 877
Регистрация: 6-09-05
Из: Москва
Пользователь №: 8 288



Вобщем не заработал в версии 1.5. Решил может из-за того что поломано неудачно и скОчал версию 1.6 3. Результат то же -плачевный. то есть коннект происходит, а вот таргет прошиваться отказывается (at91sam7s256), при этим кроссворкс выводит подобную ругань:
Цитата
write memory error @ adress 0xFFFFFD00, word access: Memory timeout

при этом тут же j-flash работает как хочешь и без проблем. Скорость одинаковая везде - 4000 kHz, timeout -1000. При этом в настройках проекта j-flash вижу некую процедуру инициализации и понимаю что по адресу 0xFFFFFD00 j-flash вобщем ничего не пишет, то есть возможно в кроссворксе задан неправильный скрипт для инициализации. Как ето дело поправить/настроить я не понял, в мануал смотрел - нашел только фигу.

Люди добрые у кого кроссворкс пашет с jlink помогите настроить, не виглер же пользовать. help.gif


--------------------
Yes, there are two paths you can go by But in the long run Theres still time to change the road youre on.
Go to the top of the page
 
+Quote Post
SpiritDance
сообщение Nov 30 2006, 11:53
Сообщение #2


Дух погибшего транзистора
****

Группа: Свой
Сообщений: 877
Регистрация: 6-09-05
Из: Москва
Пользователь №: 8 288



Блин, аддон, таки пишет j-link по адресу fd00 - это reset controller control regidter. Тогда я вобще ничего не понимаю.


--------------------
Yes, there are two paths you can go by But in the long run Theres still time to change the road youre on.
Go to the top of the page
 
+Quote Post
etoja
сообщение Nov 30 2006, 12:35
Сообщение #3


Профессионал
*****

Группа: Свой
Сообщений: 1 121
Регистрация: 14-01-05
Из: Москва
Пользователь №: 1 952



J-Flash ARM v3.46 - программа с глюками. Ругается на файлы из Кейла (ошибка контрольной суммы)
и сама правит их на какие-то левые контрольные суммы.
Go to the top of the page
 
+Quote Post
SpiritDance
сообщение Nov 30 2006, 12:49
Сообщение #4


Дух погибшего транзистора
****

Группа: Свой
Сообщений: 877
Регистрация: 6-09-05
Из: Москва
Пользователь №: 8 288



smile.gif))) Сами Вы с глюками. Наверное ей филипсы прошивать хотите? Так правильно, она добавляет контрольную сумму для загрузчика. А версия у меня 3.52.


--------------------
Yes, there are two paths you can go by But in the long run Theres still time to change the road youre on.
Go to the top of the page
 
+Quote Post
Alex03
сообщение Nov 30 2006, 13:32
Сообщение #5


Местный
***

Группа: Свой
Сообщений: 359
Регистрация: 9-12-05
Пользователь №: 12 034



Цитата(SpiritDance @ Nov 30 2006, 13:28) *
Вобщем не заработал в версии 1.5. Решил может из-за того что поломано неудачно и скОчал версию 1.6 3. Результат то же -плачевный. то есть коннект происходит, а вот таргет прошиваться отказывается (at91sam7s256), при этим кроссворкс выводит подобную ругань:
Цитата

write memory error @ adress 0xFFFFFD00, word access: Memory timeout

при этом тут же j-flash работает как хочешь и без проблем. Скорость одинаковая везде - 4000 kHz, timeout -1000. При этом в настройках проекта j-flash вижу некую процедуру инициализации и понимаю что по адресу 0xFFFFFD00 j-flash вобщем ничего не пишет, то есть возможно в кроссворксе задан неправильный скрипт для инициализации. Как ето дело поправить/настроить я не понял, в мануал смотрел - нашел только фигу.

Люди добрые у кого кроссворкс пашет с jlink помогите настроить, не виглер же пользовать. help.gif


Проверьте частоту кварца в пропертях проекта и частоту в пропертях J-Link-а (всё это в CW понятно).
Частоту J-Linк-а попробуйте уменьшить, до 1000 например.
Про скрипты, по дефолту при создании проекта в него и файл со скриптами включается, в вашем случае что-то типа AT91SAM7_Target.js
Для LPC скрипты от 1.5 до 1.6 сильно "похудели". smile.gif
Go to the top of the page
 
+Quote Post
SpiritDance
сообщение Nov 30 2006, 13:50
Сообщение #6


Дух погибшего транзистора
****

Группа: Свой
Сообщений: 877
Регистрация: 6-09-05
Из: Москва
Пользователь №: 8 288



Цитата(Alex03 @ Nov 30 2006, 13:32) *
Проверьте частоту кварца в пропертях проекта и частоту в пропертях J-Link-а (всё это в CW понятно).

Эээ.... попдборобней пожалуйста а то чегой-то я не понял. Где пропертях jlink в crossworks указывается частота (кварца насколько я понимаю) и где она собственно в проекте(нафига интересно?)??

За подсказку про скрипты спасибо. Я так понимаю что мне множитель - делитель pll поправить таки надо но это дело все равно выполняется после reset, а у меня и до этого не доходит.


--------------------
Yes, there are two paths you can go by But in the long run Theres still time to change the road youre on.
Go to the top of the page
 
+Quote Post
Alex03
сообщение Nov 30 2006, 14:34
Сообщение #7


Местный
***

Группа: Свой
Сообщений: 359
Регистрация: 9-12-05
Пользователь №: 12 034



Цитата(SpiritDance @ Nov 30 2006, 15:50) *
Цитата(Alex03 @ Nov 30 2006, 13:32) *

Проверьте частоту кварца в пропертях проекта и частоту в пропертях J-Link-а (всё это в CW понятно).

Эээ.... попдборобней пожалуйста а то чегой-то я не понял. Где пропертях jlink в crossworks указывается частота (кварца насколько я понимаю) и где она собственно в проекте(нафига интересно?)??


Для J-Link-a частотта связи в килогерцах
1. Меню Target->Targets
2. Выбираем J-Link и в его пропертях Speed


Ну а в проекте project->properties -> закладка Target -> loader parameter.
Этот параметр передаётся лоадеру.
Для LPC там частота кварца в герцах, используется лоадером для передачи в вызовы IAP (In Application Programming), у Вас (в sam7) похоже не используется?
Go to the top of the page
 
+Quote Post
SpiritDance
сообщение Nov 30 2006, 15:01
Сообщение #8


Дух погибшего транзистора
****

Группа: Свой
Сообщений: 877
Регистрация: 6-09-05
Из: Москва
Пользователь №: 8 288



Для j-linka стоит 4000 и j-flash с такой частотой прилично пашет, с.м. первый пост.
Что касается loaderparameter то пусто там, может в этом причина. посмотрю на crossloader. помучаю его, может что и выйдет. а что там для филипса торчит? просто число или еще какие кракозябры?


--------------------
Yes, there are two paths you can go by But in the long run Theres still time to change the road youre on.
Go to the top of the page
 
+Quote Post
Alex03
сообщение Nov 30 2006, 15:26
Сообщение #9


Местный
***

Группа: Свой
Сообщений: 359
Регистрация: 9-12-05
Пользователь №: 12 034



Цитата(SpiritDance @ Nov 30 2006, 17:01) *
Для j-linka стоит 4000 и j-flash с такой частотой прилично пашет, с.м. первый пост.


А Вы попробуйте 1000 поставить, у меня 1.6 чёта после 2000 загибается.

Цитата
Что касается loaderparameter то пусто там, может в этом причина. посмотрю на crossloader. помучаю его, может что и выйдет. а что там для филипса торчит? просто число или еще какие кракозябры?


Видимо для sam7 оно не надо.
Вот что в его лоадере написано:
Код
static int
loader_set_param(unsigned int parameter, unsigned int value)
{
  /* ignored this loader assumes the startup script has
    confgured the PLL to run at 47.9232MHz */
  return 1;
}
Go to the top of the page
 
+Quote Post
SpiritDance
сообщение Dec 1 2006, 10:48
Сообщение #10


Дух погибшего транзистора
****

Группа: Свой
Сообщений: 877
Регистрация: 6-09-05
Из: Москва
Пользователь №: 8 288



Что-то пока не получается с jlink/ Буду думать еще.

В догонку еще один вопрос почему в 1.6 линкер не видит reset-handler из стартапа как entry point, хотя в 1.5 все было в норме? сам стартап я при переходе при этом не менял, он у меня в папке с прогой лежит.


--------------------
Yes, there are two paths you can go by But in the long run Theres still time to change the road youre on.
Go to the top of the page
 
+Quote Post
Alex03
сообщение Dec 1 2006, 12:04
Сообщение #11


Местный
***

Группа: Свой
Сообщений: 359
Регистрация: 9-12-05
Пользователь №: 12 034



Цитата(SpiritDance @ Dec 1 2006, 12:48) *
Что-то пока не получается с jlink/ Буду думать еще.

В догонку еще один вопрос почему в 1.6 линкер не видит reset-handler из стартапа как entry point, хотя в 1.5 все было в норме? сам стартап я при переходе при этом не менял, он у меня в папке с прогой лежит.


В стартапе 1.6 есть
Код
  .global reset_handler


Я хоть стартап и копирую к себе в проект, но при переходе заменяю старый на новый, с соответствующими изменениями, которые у меня заключается в одной строчке:
Код
#include "hw.h"


Ну и этот hw.h меняю по необходимости, это чтобы не в опциях проекта прописывать всякие дефайны для стартапа а в *.h файле.
Go to the top of the page
 
+Quote Post
SpiritDance
сообщение Dec 1 2006, 12:28
Сообщение #12


Дух погибшего транзистора
****

Группа: Свой
Сообщений: 877
Регистрация: 6-09-05
Из: Москва
Пользователь №: 8 288



Дак я тоже кроссворкскавский продефайнил, но только то что касается железа да и какой нибудь .global ведь в h-файл не засунешь.

А то проблема то вот в чем была поменял я значит энтри поинт на main и вроде все работало пока я не попробывал выкинуть лишний код из проекта, т.е. добавить опции
Цитата
компилер
-ffunction-sections
линкер
--gc-sections

ну и, похоже, все что было до main выкинулось. smile.gif Кстати если не пробывали скомпилить с этими опциями побробуйте если не влом - интересно заработает сгенерированный таким образом код или нет. У меня сейчас под рукой 1.6 нет.


--------------------
Yes, there are two paths you can go by But in the long run Theres still time to change the road youre on.
Go to the top of the page
 
+Quote Post
Alex03
сообщение Dec 1 2006, 13:18
Сообщение #13


Местный
***

Группа: Свой
Сообщений: 359
Регистрация: 9-12-05
Пользователь №: 12 034



Цитата(SpiritDance @ Dec 1 2006, 14:28) *
Дак я тоже кроссворкскавский продефайнил, но только то что касается железа да и какой нибудь .global ведь в h-файл не засунешь.

А то проблема то вот в чем была поменял я значит энтри поинт на main и вроде все работало пока я не попробывал выкинуть лишний код из проекта, т.е. добавить опции
Цитата

компилер
-ffunction-sections
линкер
--gc-sections

ну и, похоже, все что было до main выкинулось. smile.gif Кстати если не пробывали скомпилить с этими опциями побробуйте если не влом - интересно заработает сгенерированный таким образом код или нет. У меня сейчас под рукой 1.6 нет.


Ничё я не понял.
До мэйна спартап и crt, какой смысел их выкидывать?
И чё после этого в проекте осталось?
Ни векторов ресета/прерывания/абортов и т.д.
Ни инициализции стека, глобальных переменных в RAM, регистров проца.
Ни вызовов конструкторов глобальных объектов для C++.
Go to the top of the page
 
+Quote Post
SpiritDance
сообщение Dec 1 2006, 13:49
Сообщение #14


Дух погибшего транзистора
****

Группа: Свой
Сообщений: 877
Регистрация: 6-09-05
Из: Москва
Пользователь №: 8 288



Обычно линкер gcc поступает как хомяк - захомячивает в прошивку весь код который накомпилирует компилятор - это уже проверено и проверить это легко. С этими опциями он должен вести себя как нормальный, то есть компоновать только реально исполняющийся код - вот это-то и нужно проверить.

У меня при проверке в качетсве entrypoint бал main - стратап оказался "нигде не используемым" и был вышвырнут. Когда entry point - reset а не main, то линкер стартап выкинуть не должен.


--------------------
Yes, there are two paths you can go by But in the long run Theres still time to change the road youre on.
Go to the top of the page
 
+Quote Post
Alex03
сообщение Dec 1 2006, 14:34
Сообщение #15


Местный
***

Группа: Свой
Сообщений: 359
Регистрация: 9-12-05
Пользователь №: 12 034



Цитата(SpiritDance @ Dec 1 2006, 15:49) *
Обычно линкер gcc поступает как хомяк - захомячивает в прошивку весь код который накомпилирует компилятор - это уже проверено и проверить это легко. С этими опциями он должен вести себя как нормальный, то есть компоновать только реально исполняющийся код - вот это-то и нужно проверить.


Экспериментировать некогда, но насколько я понимаю для "обычного" случая неделимой единицей считается объектник. Статические либы есть набор объектников. И именно поэтому исходники многих стандартных либ зачастую содержат по одной функции на файл. Линкер же включает только используемые объектники.
Go to the top of the page
 
+Quote Post

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

 


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


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