|
Проба ARM, начал с LPC2134 c IAR |
|
|
|
Feb 20 2007, 13:17
|

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

|
Цитата(arttab @ Feb 20 2007, 11:58)  Начал создавать новый проект (иар4.40А) и не понял как в примерах стартап получался. По-хорошему он автоматически подлинковывается из библиотеки. И только если он вас чем-то не устраивает (что случается очень редко) надо подключать свой. Вот тут про создание проекта для SAM7, для LPC точно так же.
--------------------
На любой вопрос даю любой ответ"Write code that is guaranteed to work, not code that doesn’t seem to break" ( C++ FAQ)
|
|
|
|
|
Feb 21 2007, 07:15
|

Профессионал
    
Группа: Свой
Сообщений: 1 432
Регистрация: 7-12-04
Из: Новосибирск
Пользователь №: 1 371

|
Цитата не с того начали.. перходите на Keil - чтобы потом не было мучительно больно за бесцельно прожитую жизнь Зачем плодить сущие без надобности? Я в иаре под AVR работаю. А кейл менее конфигурируемый (помниться до 4 сегментов пользователя). IDE дело вкуса и привычки Цитата Вот тут про создание проекта для SAM7, для LPC точно так же. По хелпу создание проекта прошел, но не дошло как иару указать начальную конфигурацию кристала.
--------------------
OrCAD, Altium,IAR, AVR....
|
|
|
|
|
Feb 21 2007, 07:18
|
Гуру
     
Группа: Свой
Сообщений: 3 644
Регистрация: 28-05-05
Пользователь №: 5 493

|
Цитата(arttab @ Feb 21 2007, 07:15)  Цитата не с того начали.. перходите на Keil - чтобы потом не было мучительно больно за бесцельно прожитую жизнь Зачем плодить сущие без надобности? Я в иаре под AVR работаю. А кейл менее конфигурируемый (помниться до 4 сегментов пользователя). IDE дело вкуса и привычки Цитата Вот тут про создание проекта для SAM7, для LPC точно так же. По хелпу создание проекта прошел, но не дошло как иару указать начальную конфигурацию кристала. Какие 4-ре сегмента ??? Я про компилятор RVDS и скаттер файлы - куда уж гибче. Впрочем дело ваше - когда отладка будет отваливаться на каждом шагу в большом проекте - вспомните
|
|
|
|
|
Feb 21 2007, 09:55
|

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

|
Цитата(arttab @ Feb 21 2007, 07:28)  из примера на SAM7X256 получается, что конфигурация задается в начале main. Можно там, можно в __low_level_init(). А AVR вы как конфигурите? Делайте и тут также. Цитата(arttab @ Feb 21 2007, 07:28)  Т.е. подключаю файл описания .h (вот только какой для lpc2134?) А поищите в IAR\EWARM\ARM\INC
--------------------
На любой вопрос даю любой ответ"Write code that is guaranteed to work, not code that doesn’t seem to break" ( C++ FAQ)
|
|
|
|
|
Feb 21 2007, 13:38
|

Профессионал
    
Группа: Свой
Сообщений: 1 432
Регистрация: 7-12-04
Из: Новосибирск
Пользователь №: 1 371

|
Цитата А поищите в IAR\EWARM\ARM\INC нашел iolpc2134.h. это аналог под avr ioM8.inc - дефаин регистров и прочего. подключил. Цитата Можно там, можно в __low_level_init(). А AVR вы как конфигурите? Делайте и тут также. под avr делаю в начале mian, но в avr нет таких тонкостей (включить MAM или нет, определить стеки для разных режимов,....) нашел файл cstartup.s79. Получается в нем на асме надо написать инициализацию железа. Достаточно ли этот файл просто добавить в прект или надо в xcl поправить размещение? И как? Цитата __low_level_init() по встроеному шелпу ее можно использовать для задания начальной конфигурации. так: __low_level_init() {MAMCR=0; MAMTIM=0x03;} ? Спасибо за помощь! уже не в первый раз выручаете. если можно дайте простой пример: trumb, UART (на какуе-нибудь скорость), и вектор на USART. буду дальше разбираться
--------------------
OrCAD, Altium,IAR, AVR....
|
|
|
|
|
Feb 21 2007, 14:21
|

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

|
Цитата(arttab @ Feb 21 2007, 12:38)  нашел файл cstartup.s79. Получается в нем на асме надо написать инициализацию железа. Достаточно ли этот файл просто добавить в прект или надо в xcl поправить размещение? И как? Не,этот файл вам не нужен. Точнее он подлинкуется из библиотеки и сам настроит стеки. Вам остается только периферию настроить. Как и в AVR  МАМ является периферией, как и контроллер прерываний. Цитата(arttab @ Feb 21 2007, 12:38)  Цитата __low_level_init() по встроеному шелпу ее можно использовать для задания начальной конфигурации. так: __low_level_init() {MAMCR=0; MAMTIM=0x03;} ? Угу, только return 1; Иначе память не проинициализует. Цитата(arttab @ Feb 21 2007, 12:38)  если можно дайте простой пример: trumb, UART (на какуе-нибудь скорость), и вектор на USART. буду дальше разбираться Вот, надергал из проекта. Компилится, но проверить сейчас не на чем. Правда С++, но думаю идея будет понятна.
--------------------
На любой вопрос даю любой ответ"Write code that is guaranteed to work, not code that doesn’t seem to break" ( C++ FAQ)
|
|
|
|
|
Feb 22 2007, 12:17
|

Профессионал
    
Группа: Свой
Сообщений: 1 432
Регистрация: 7-12-04
Из: Новосибирск
Пользователь №: 1 371

|
Цитата Да, сколько указано в .xcl, столько и пропишет. Блин, опять не понял. Для каждого проекта размер стеков индивидуален. А тут получается прошишит значения для "среднего" проекта. И если мне будет мало или много "средних" размеров стеков, то нужно лезь в .xcl?
--------------------
OrCAD, Altium,IAR, AVR....
|
|
|
|
|
Feb 22 2007, 12:27
|
Частый гость
 
Группа: Свой
Сообщений: 169
Регистрация: 10-11-05
Из: Воронеж
Пользователь №: 10 687

|
Цитата(arttab @ Feb 22 2007, 12:17)  Цитата Да, сколько указано в .xcl, столько и пропишет. Блин, опять не понял. Для каждого проекта размер стеков индивидуален. А тут получается прошишит значения для "среднего" проекта. И если мне будет мало или много "средних" размеров стеков, то нужно лезь в .xcl? Файл .xcl принято для КАЖДОГО проекта писать отдельно. И класть его, например, в settings проекта. Если присмотреться к файлу более внимательно, станет видно, что там вообще нет общих настроек для гипотетического проекта. Только конкретные указания линкеру, которые индивидуальны для каждого проекта.
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|