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

 
 
> Перенос EFSL на IAR, помогите ламеру
e-tarasov
сообщение Jun 21 2006, 06:12
Сообщение #1


Участник
*

Группа: Свой
Сообщений: 44
Регистрация: 30-05-06
Пользователь №: 17 578



Вчера сел переносить efsl с gcc на iar
потребность возникла по следующим причинам:
1. Куплена отладочная плата с внутрисхемным эмулятором J-LINK под iar
2. Под IAR больше рабочих примеров
3. Лекарство под RDI так и не было найдено (не очень то и хотелось)
4. Кроме efsl планируется ввести в проект еще кучу всего разного
5. С UCFS разобраться как я понял гораздо сложнее
Скачал EFSL для AT91SAM7S64 http://www.siwawi.arubi.uni-kl.de/avr_proj...0404_public.zip
Ну так вот в принципе все файлы легли кроме
двух:

interrupt_utils.h
interrupt_utils.c

ну и как следствие:

systime.c

Как я понял причина в различной интерпретации ассемблерного
кода и макросов двумя компиляторами (если не прав поправьте меня)

Так в файле interrupt_utils.h присутствует следующая строка:

#define ISR_ENTRY() asm volatile(" sub lr, lr,#4\n" \
" stmfd sp!,{r0-r12,lr}\n" \
" mrs r1, spsr\n" \
" stmfd sp!,{r1}")

После которой компилятор затыкается
Исправление ее к виду :

#define ISR_ENTRY() asm (" sub lr, lr,#4\n" " stmfd sp!,{r0-r12,lr}\n" " mrs r1, spsr\n" " stmfd sp!,{r1}\n")

Изменяет вид ошибки но не исправляет ситуацию

Там же присутствует строка:

#define NACKEDFUNC __attribute__((naked))

Которая так же не проходит в systime.c

В interrupt_utils.c есть строка?

asm volatile (" mrs %0, cpsr" : "=r" (retval) : /* no inputs */ );

Может я чего то не понимаю Может перенести просто невозможно
В ассемблере я не специалист как впрочем и в С
Если не трудно помогите перевести в IAR
Спасибо!!!
Go to the top of the page
 
+Quote Post
3 страниц V   1 2 3 >  
Start new topic
Ответов (1 - 33)
Сергей Борщ
сообщение Jun 21 2006, 06:54
Сообщение #2


Гуру
******

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



Цитата(e-tarasov @ Jun 21 2006, 09:12) *
Вчера сел переносить efsl с gcc на iar
Так в файле interrupt_utils.h присутствует следующая строка:

#define ISR_ENTRY() asm volatile(" sub lr, lr,#4\n" \
" stmfd sp!,{r0-r12,lr}\n" \
" mrs r1, spsr\n" \
" stmfd sp!,{r1}")

Там же присутствует строка:

#define NACKEDFUNC __attribute__((naked))

В interrupt_utils.c есть строка?

asm volatile (" mrs %0, cpsr" : "=r" (retval) : /* no inputs */ );
Если не трудно помогите перевести в IAR
Спасибо!!!

Просто в лоб это перевести не получится - у ИАРа нет возможности в С подавить сохранение контекста (нет аналога __naked__) Поэтому придется делать "обертку" в отдельном asm-файле.
Что-то типа такого:
Код
wrapper.s79:

        RSEG ICODE:CODE
        CODE32

        EXTERN Handler_body
        PUBLIC Handler

; Wrapper for the interrupt service routinewrapper.

Handler:
    sub   lr, lr,#4
    stmfd sp!,{r0-r12,lr}
    mrs   r1, spsr
    stmfd sp!,{r1}
    bl    Handler_body    ; Call the ISR routine.

         И здесь какой-то завершающий код,, обратный ISR_ENTRY()

    END

соответственно обработчик на с объявить как __arm void HandlerBody(void)

но что-то мне подсказывает, что все будет гораздо проще и достаточно будет объявить обработчик как __irq __arm Handler() или __nested __irq __arm Handler(). Если других советов не будет - постараюсь ближе к вечеру скачать исходники и глянуть.

Сообщение отредактировал Сергей Борщ - Jun 21 2006, 06:55


--------------------
На любой вопрос даю любой ответ
"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
beer_warrior
сообщение Jun 21 2006, 07:26
Сообщение #3


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

Группа: Свой
Сообщений: 1 065
Регистрация: 8-10-05
Из: Kiev, UA
Пользователь №: 9 380



Цитата
но что-то мне подсказывает, что все будет гораздо проще и достаточно будет объявить обработчик как __irq __arm Handler() или __nested __irq __arm Handler()

Согласен.
Это ботва с nested нужна для того, что бы обходть проблему со входом в прерывания в gcc.
С 95% вероятностью __irq __arm Handler() и есть заменитель
sub lr, lr,#4
stmfd sp!,{r0-r12,lr}
mrs r1, spsr
stmfd sp!,{r1}
...


--------------------
Вони шукають те, чого нема,
Щоб довести, що його не існує.
Go to the top of the page
 
+Quote Post
e-tarasov
сообщение Jun 21 2006, 09:16
Сообщение #4


Участник
*

Группа: Свой
Сообщений: 44
Регистрация: 30-05-06
Пользователь №: 17 578



__irq __arm Handler() вроде бы прокатило нет возможномти проверить а вот что делать вот с этим


static inline unsigned __get_cpsr(void)
{
unsigned long retval;
asm (" mrs %0, cpsr" : "=r" (retval): /* no inputs */ );
//volatile
return retval;
}

Я так понял результат функция возвращает через стек
IAR исходник не глотает не подскажите
Что означает :
и что делать с retval
Спасибо

Сообщение отредактировал e-tarasov - Jun 21 2006, 09:24
Go to the top of the page
 
+Quote Post
beer_warrior
сообщение Jun 21 2006, 09:51
Сообщение #5


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

Группа: Свой
Сообщений: 1 065
Регистрация: 8-10-05
Из: Kiev, UA
Пользователь №: 9 380



Я думаю что-то наподобие
Код
static inline unsigned __get_cpsr(void)
{
unsigned long retval;
asm ("mrs retval, cpsr");
return retval;
}

Уточните как там в асм передаются переменные.
Может нужен подчерк перед именем.
А впрочем зачем вам эта функция? Это же используется для сохранения контекста и скорее всего сгенериться само при вызове завершении функции.


--------------------
Вони шукають те, чого нема,
Щоб довести, що його не існує.
Go to the top of the page
 
+Quote Post
e-tarasov
сообщение Jun 21 2006, 10:19
Сообщение #6


Участник
*

Группа: Свой
Сообщений: 44
Регистрация: 30-05-06
Пользователь №: 17 578



Не хочет передавать
В справке ничего не написано
Похоже что никак а в С его передать нельзя?
Go to the top of the page
 
+Quote Post
beer_warrior
сообщение Jun 21 2006, 11:23
Сообщение #7


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

Группа: Свой
Сообщений: 1 065
Регистрация: 8-10-05
Из: Kiev, UA
Пользователь №: 9 380



Цитата
Не хочет передавать
В справке ничего не написано
Похоже что никак а в С его передать нельзя?

А как ругается? Какая ошибка?

ЗЫ Может не стоит уходить с gcc?
Там на каждый пук компилятора, объемная справка smile.gif


--------------------
Вони шукають те, чого нема,
Щоб довести, що його не існує.
Go to the top of the page
 
+Quote Post
SlavaCh
сообщение Jun 21 2006, 13:07
Сообщение #8


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

Группа: Свой
Сообщений: 86
Регистрация: 26-01-05
Пользователь №: 2 200



Совершенно случайно передо мной поставили аналогичную задачу - к рабочему проекту на ИАРе подключить EFSL. На ГСС остаться не получиться...
2e-tarasov - может объединим усилия? а то я тоже не совсем копенгаген в гсс ....

пока стараюсь запустить в иаре исходники esfl

Вопрос(может глупый) - а в ИАРе файлы Startup нужно подключать из исходников библиотеки ESFL или можно воспользоваться тем что есть в примерах от атмела?
И вообще как ИАР находит место, откуда надо компилировать проект? Ведь явно нигде имя CStartup не указывается. А в этом модуле - начало программы, с 0го адреса.
Go to the top of the page
 
+Quote Post
SlavaCh
сообщение Jun 21 2006, 14:17
Сообщение #9


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

Группа: Свой
Сообщений: 86
Регистрация: 26-01-05
Пользователь №: 2 200



2 e-tarasov:
функции __set_cpsr(unsigned long)
и unsigned long __get_cpsr(void)
есть в иаре!!
надо подключить intrinsic.h
Go to the top of the page
 
+Quote Post
e-tarasov
сообщение Jun 22 2006, 05:25
Сообщение #10


Участник
*

Группа: Свой
Сообщений: 44
Регистрация: 30-05-06
Пользователь №: 17 578



Спасибо за функции честно говоря не догадался поискать.
Цитата
И вообще как ИАР находит место, откуда надо компилировать проект? Ведь явно нигде имя CStartup не указывается. А в этом модуле - начало программы, с 0го адреса.

Во вкладке Debugger сеавится галочка main
Это для того чтобы компиляция начиналась с main
Далее во вкладке плагины есть такой Ctack который указывает на
CStartup
Go to the top of the page
 
+Quote Post
SlavaCh
сообщение Jun 22 2006, 07:46
Сообщение #11


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

Группа: Свой
Сообщений: 86
Регистрация: 26-01-05
Пользователь №: 2 200



1 По моему галочка main говорит чтобы дебаггер при запуске выполнил весь код и остановился на main. Или не так?

2 Чего-то не нашел я Ctack в плагинах (если имеется ввиду планины вкладки дебаггера).

А у вас получилось исправить эти дефайны
#define ISR_ENTRY() asm (" sub lr, lr,#4\n"
" stmfd sp!,{r0-r12,lr}\n"
" mrs r1, spsr\n"
" stmfd sp!,{r1}");

а то ИАР ругается. (Error[Pe169]: expected a declaration - на второй строчке )

И вы писали "__irq __arm Handler() вроде бы прокатило"
это имеется ввиду вместо void NACKEDFUNC ATTR systime_isr(void) { ?
Я заменил NACKEDFUNC ATTR на __irq __arm но ошибка остается -
(Error[Pa002]: the type attribute "__arm" is not allowed on this declaration )

объясните плиз.
Go to the top of the page
 
+Quote Post
e-tarasov
сообщение Jun 22 2006, 08:13
Сообщение #12


Участник
*

Группа: Свой
Сообщений: 44
Регистрация: 30-05-06
Пользователь №: 17 578



Цитата
1 По моему галочка main говорит чтобы дебаггер при запуске выполнил весь код и остановился на main. Или не так?

Да извините напортачил.
Цитата
2 Чего-то не нашел я Ctack в плагинах (если имеется ввиду планины вкладки дебаггера).

У меня версия IAR 4.31 видимо у вас другая иплагин по другому обзавается

Насчет дефайнов
Вместо systime_isr(void)
я объявил функцию __irq __arm void irqHandler(void){
с тем же телом кроме ISR_ENTRY() и ISR_EXIT()
а дальше по тексту в одном месте
заменил systime_isr( на irqHandler(
я так понял это обработчик прерываний
Проверить не могу потому что:
1. пока проц почему то не прошивается
2. не собрана схема с карточкой
Честно говоря меня берут смутные сомнения по
поводу успеха этого мероприятия
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Jun 22 2006, 09:04
Сообщение #13


Гуру
******

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



Цитата(e-tarasov @ Jun 22 2006, 11:13) *
Насчет дефайнов
Вместо systime_isr(void)
я объявил функцию __irq __arm void irqHandler(void){
с тем же телом кроме ISR_ENTRY() и ISR_EXIT()
Это правильно, только можно было имя не менять:
__arm __irq void systime_isr(void). Тогда бы не пришлось:
Цитата
а дальше по тексту в одном месте
заменил systime_isr( на irqHandler(


В общем я пришел к тому же результату. Прилагаю архив с файлами interrupt_utils.h и systime.c. с этим intrrupt_utils.h файл interrupt_utils.c из проекта надо выкинуть.


--------------------
На любой вопрос даю любой ответ
"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
SlavaCh
сообщение Jun 22 2006, 10:10
Сообщение #14


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

Группа: Свой
Сообщений: 86
Регистрация: 26-01-05
Пользователь №: 2 200



Сергей, у вас заработала ESFL?

Я сделал примерно то же самое, но в целом понимаю, что надо как то приклеить к проекту файл startup_SAM7S.S(из исходников esfl) но не знаю как. Это к тому же вопросу о стандартных файлах Cstartup в примерах ИАРА.

И что-то типа файла линковки тоже ведь надо? (в примерах это .xls)
Или я чего-то не понимаю??? Объясните плиз..
Go to the top of the page
 
+Quote Post
e-tarasov
сообщение Jun 22 2006, 10:45
Сообщение #15


Участник
*

Группа: Свой
Сообщений: 44
Регистрация: 30-05-06
Пользователь №: 17 578



От отчаяния скачал ГЦЦ скомпилил
Все пошло без проблем
Может перейти на ГЦЦ
В IAR пока не идет программирование
из-за скорее всего тех самых Cstartup или xls
Буду пробовать дальше
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Jun 22 2006, 10:47
Сообщение #16


Гуру
******

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



Цитата(SlavaCh @ Jun 22 2006, 13:10) *
Сергей, у вас заработала ESFL?

Нет,я не пытался ее собрать до конца.
Цитата
Я сделал примерно то же самое, но в целом понимаю, что надо как то приклеить к проекту файл startup_SAM7S.S(из исходников esfl) но не знаю как.
1) Просто добавить его в список файлов
2)Изменить расширение на принятое у IAR .s79.
3)Переписать его заново ибо ассемблеры совсем не похожи.
Цитата
Это к тому же вопросу о стандартных файлах Cstartup в примерах ИАРА.
Возможно в примерах они и нужны, но я без крайней необходимости cstartup не трогаю. Поэтому по умолчанию подлинковывается уже готовый из библиотеки.
Сейчас глянул этот .S: Я бы код начиная с метки Reset_Handler по комментарий // Setup Stack for each mode (инициализация периферии) перенес бы на С в начало main или в функцию __low_level_init(), а все остальное делает стандартный IARовский cstartup который подлинковывается из библиотеки.
Цитата
И что-то типа файла линковки тоже ведь надо? (в примерах это .xls)
Или я чего-то не понимаю??? Объясните плиз..
Да, надо. Так возьмите его из примера и подключите к проекту.


--------------------
На любой вопрос даю любой ответ
"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
e-tarasov
сообщение Jun 23 2006, 06:31
Сообщение #17


Участник
*

Группа: Свой
Сообщений: 44
Регистрация: 30-05-06
Пользователь №: 17 578



Удалось все таки скомпилить EFSL под IAR
кому интересно могу выложить проект спасибо
Сергею Файлы cstartup и *.xls взял стандартные
Скомпилил проект под GCC.
Собрал схему с картой SD.
Есть возможность сравнить компиляторы GCC иIAR
Пишите может предложите какой-либо тест.
Go to the top of the page
 
+Quote Post
Gorby
сообщение Jun 23 2006, 07:32
Сообщение #18


Местный
***

Группа: Свой
Сообщений: 449
Регистрация: 28-10-04
Из: Украина
Пользователь №: 1 002



Цитата(e-tarasov @ Jun 23 2006, 10:31) *
Удалось все таки скомпилить EFSL под IAR
кому интересно могу выложить проект спасибо
Сергею Файлы cstartup и *.xls взял стандартные
Скомпилил проект под GCC.
Собрал схему с картой SD.
Есть возможность сравнить компиляторы GCC иIAR
Пишите может предложите какой-либо тест.



Интересно. Выкладывайте. Как раз есть под рукой EB40A c AT91R40008 и слот для карточки.
А IAR вы какой пользовали? Я запустил последний, 4.40а. После рихтовки стартапа и линкерного файла работает на "ура".


--------------------
Умею молчать на 37 языках...
Go to the top of the page
 
+Quote Post
SlavaCh
сообщение Jun 23 2006, 08:28
Сообщение #19


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

Группа: Свой
Сообщений: 86
Регистрация: 26-01-05
Пользователь №: 2 200



Выложите плиз. или пошлите на мыло slava()trace()ru
А у меня чего-то Jlink не шьет проц - выдает варнинги (there were warnings during download...) хотя файлы подключил рабочие sad.gif
Может там в настройках есть волшебная галка какая-нибудь???
Go to the top of the page
 
+Quote Post
SlavaCh
сообщение Jun 23 2006, 09:03
Сообщение #20


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

Группа: Свой
Сообщений: 86
Регистрация: 26-01-05
Пользователь №: 2 200



По поводу прошивки - разобрался, там просто надо было помимо вкл галки Use flashloader выбрать его как дефаулт. smile.gif
2 e-tarasov - А где проект-то??
Go to the top of the page
 
+Quote Post
e-tarasov
сообщение Jun 23 2006, 11:19
Сообщение #21


Участник
*

Группа: Свой
Сообщений: 44
Регистрация: 30-05-06
Пользователь №: 17 578



Прошу прощения запарился я конкретно
с ентим ГЦЦ и ИАР
проект запускается в режиме debug
после ресета не фурычит
а может и фурычило но что то изменил
не подумавши
может кто подскажет почему такое
происходит может быть из-за s79
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Jun 23 2006, 13:20
Сообщение #22


Гуру
******

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



Цитата(e-tarasov @ Jun 23 2006, 14:19) *
может кто подскажет почему такое происходит может быть из-за s79
Да выкинь его вообще из проекта. Он подлинкуется из библиотеки.

P.S. у нас праздники, до понедельника на природу уезжаю, если до понедельника не разберешься - пиши мылом, постараюсь помочь.


--------------------
На любой вопрос даю любой ответ
"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
e-tarasov
сообщение Jun 27 2006, 11:24
Сообщение #23


Участник
*

Группа: Свой
Сообщений: 44
Регистрация: 30-05-06
Пользователь №: 17 578



Ну наконец таки добил проект
Дело как говорится было не в бабине
s79 был абсолютно не причем
Удалось сравнить скорости чтения/записи
На одной и той же карте при
использовании бенчмарка из проекта
ГЦЦ и IAR в показали почти одинаковые
результаты
ГЦЦ 315/143
IAR 292/133
Спасибо всем за помощь в переводе!!!
Go to the top of the page
 
+Quote Post
SlavaCh
сообщение Jun 27 2006, 12:59
Сообщение #24


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

Группа: Свой
Сообщений: 86
Регистрация: 26-01-05
Пользователь №: 2 200



А ваши исходники рабочие, или что-то поменялось? Если есть изменения, выложите плиз.
Go to the top of the page
 
+Quote Post
sergvks
сообщение Jun 28 2006, 13:54
Сообщение #25


Местный
***

Группа: Свой
Сообщений: 251
Регистрация: 26-07-05
Пользователь №: 7 117



Почитал топик и понял, что не зря выбрал связку lpc2148 и кейл.
Для сборки efsl RV-шным компилятором потребовалось только
переопределить типы и всё. При форматировании на компе
размер кластера выбирайте - 512байт - иначе будут глюки.
Go to the top of the page
 
+Quote Post
SlavaCh
сообщение Jun 28 2006, 14:58
Сообщение #26


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

Группа: Свой
Сообщений: 86
Регистрация: 26-01-05
Пользователь №: 2 200



Ура! Заработало!
1. Нашел ошибку в исходниках - у меня на плате ММС карта подключена к CS1, а вот оригинал дефайнов в файле at91_spi.c
/* PCS_0 for NPCS0, PCS_1 for NPCS1 ... */
#define PCS_0 ((0<<0)|(1<<1)|(1<<2)|(1<<3))
#define PCS_1 ((1<<1)|(0<<1)|(1<<2)|(1<<3))
#define PCS_2 ((1<<1)|(1<<1)|(0<<2)|(1<<3))
#define PCS_3 ((1<<1)|(1<<1)|(1<<2)|(0<<3))
_________________^
_________________|
вот эти "1" надо заменить на 0 !! Иначе при попытке переделать проект на другие чипселекты не будет работать.


2. почему-то посоветованная Сергеем строка
__irq __arm void systime_isr(void) { /* System Interrupt Handler */
не работает!! то есть у меня после перезапуска платы все напрочь висло!
Я убрал __irq __arm и все заработало!!

Подскажите где тут собака зарыта, ведь по идее должно работать!

Следующим этапом борьбы будет попытка сделать на основании этих исходников библиотеку в ИАре, то есть чтобы можно было к другому проекту подключить 1-2 файла и файловая система стала доступна.
Если кто поделится рецептом как это сделать, буду благодарен (и думаю не только я).
Спасибо.

PS = и еще - у меня чего-то маленькая скорость по сравнению с данными e-tarasova - write - 69 read 316 KB\sec
карта ММС 32МБ из поставки с сотовым телефоном.

Сообщение отредактировал SlavaCh - Jun 28 2006, 15:03
Go to the top of the page
 
+Quote Post
net
сообщение Jun 28 2006, 15:12
Сообщение #27


Знающий
****

Группа: Свой
Сообщений: 858
Регистрация: 9-08-04
Пользователь №: 473



[attachment=6090:attachment]
вот тут сегодня поробовали собрать elfs на keil и 2148 ->demo board mcp2140 все собралось и заработало - детально не тестировали но файлы пишутся и читаются на ура - и при этом все на халяву !!
вот прилагаю архивчик под KEIL - может кому интресно будет
Go to the top of the page
 
+Quote Post
e-tarasov
сообщение Jun 29 2006, 04:14
Сообщение #28


Участник
*

Группа: Свой
Сообщений: 44
Регистрация: 30-05-06
Пользователь №: 17 578



Всем привет. Извините за отсутствие.
Пришлось смотаться в коммандировку.
Как пишет SlavaCh
строку __irq __arm void systime_isr(void
пришлось выкинуть и заменить на стандартное
прерывание от PIT
кроме того пришлось подправить
функцию systime_get(void)
путем вставки команд
AT91F_disable_interrupt();
AT91F_enable_interrupt();
которые прописаны в
ассемблерном файле *.s79.
Проект сырой много лишнего
надо чистить а лень
как нибудь займусь.
Карточки у меня все SD
и на всех разные скорости
самая маленькая у 16Мб 28/315
Пробую соединить UCOS и EFSL
Напишите может кто то пробовал
Спасибо!!!
Go to the top of the page
 
+Quote Post
net
сообщение Jul 5 2006, 07:03
Сообщение #29


Знающий
****

Группа: Свой
Сообщений: 858
Регистрация: 9-08-04
Пользователь №: 473



Цитата(e-tarasov @ Jun 29 2006, 08:14) *
Всем привет. Извините за отсутствие.
Пришлось смотаться в коммандировку.
Как пишет SlavaCh
строку __irq __arm void systime_isr(void
пришлось выкинуть и заменить на стандартное
прерывание от PIT
кроме того пришлось подправить
функцию systime_get(void)
путем вставки команд
AT91F_disable_interrupt();
AT91F_enable_interrupt();
которые прописаны в
ассемблерном файле *.s79.
Проект сырой много лишнего
надо чистить а лень
как нибудь займусь.
Карточки у меня все SD
и на всех разные скорости
самая маленькая у 16Мб 28/315
Пробую соединить UCOS и EFSL
Напишите может кто то пробовал
Спасибо!!!


поскольку сидим на кейл то RTXARM+EFSL работает скорость (пока тренируемся) 133 запись 266 чтение
будем разбираться со скоростями так как запись во флеш идет на 15 мгц и скорость теряется гдето внутри файловой системы
Go to the top of the page
 
+Quote Post
net
сообщение Jul 6 2006, 06:08
Сообщение #30


Знающий
****

Группа: Свой
Сообщений: 858
Регистрация: 9-08-04
Пользователь №: 473



я как всегда не по теме но в общем ключе
собрали RTXARM 3 + EFSL (все под кейл на демоборде MCP2140)
работает параллельно 2 потока ииз этих разных потоков пишем и читаем одновремнно в разные файлы и по ходу дела мигаем диодами( ну какой эмбеддер без мигания диода biggrin.gif ) исправили ошибку в дате времени которая была в архиве приведенном выше
вроде все работает системные издержки незаметны скорости пока остались прежние будем посмотреть потом
если интересно могу выложить архивчик проекта сборки под кейл или завести новую тему elfs+rtxarm под кейлом на LPC2148 ?
или не нужно это?
Go to the top of the page
 
+Quote Post
zltigo
сообщение Jul 6 2006, 06:20
Сообщение #31


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(net @ Jul 6 2006, 09:08) *
или не нужно это?

Почему "или" - всегда пригодится!


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
net
сообщение Jul 6 2006, 17:47
Сообщение #32


Знающий
****

Группа: Свой
Сообщений: 858
Регистрация: 9-08-04
Пользователь №: 473



[attachment=6188:attachment]
Keil MCP2140 . LPC2148 -> SD+ELFS+RTXARM на KEIL
два потока пишут и читают независимо файлы на SD карте и мигают диодами
Go to the top of the page
 
+Quote Post
e-tarasov
сообщение Jul 7 2006, 04:51
Сообщение #33


Участник
*

Группа: Свой
Сообщений: 44
Регистрация: 30-05-06
Пользователь №: 17 578



Выкладываю проект EFSL под IAR для AT91SAM7S64
Мне удалось присоединить его (с некоторыми изменениями , конечно)
к UCOS там же тусит USB masstorage+FS от атмела
в связи с чем прошу помощи.
У кого нибудь есть рабочие проги для
чтения файлов из МК для USB masstorage+FS
функция BFSA_read("FILE.TXT",&buffer,i,k)
работает некорректно, т. е. вообще
не работает.
Спасибо!!!
Go to the top of the page
 
+Quote Post
AntonPV
сообщение Jan 30 2008, 13:18
Сообщение #34





Группа: Участник
Сообщений: 12
Регистрация: 30-01-08
Пользователь №: 34 586



ESFL то под IARэом работает уже давно,кому надо - могу кинуть на мыло...
Go to the top of the page
 
+Quote Post

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

 


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


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