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

 
 
> Mass Storage от Atmel под ОСью..., какие-то ньюансы?
Dron_Gus
сообщение Mar 20 2007, 03:15
Сообщение #1


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

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



Уже который день мучаюсь... Пробую разные ОСи... Еще ни под одной толком не заработало. Хотя в "голом" виде работает на "ура"...

Под PowerPack RTOS работало через раз. В произвольной части кода добавляешь/убираешь строчку - не работает - вылетае в Data Abort. Такое впечатление, что какие-то косяки компилятора.

embOS - то же самое.

uCOS-II так и не разобрался, как заставить нормально работать прерывания.

TNKernel - пока самая приятная ОСь. Прерывания с пол-пинка завелись. Масс Сторадж не хочет. принимает пару пакетов, посылает ответы и опять в Data Abort. Хотя если не подключать кабель УСБ все спокойно крутиться уже несколько часов. smile.gif Уже слов нет. Пытался использовать "первозданный" код Масс Стораджа, без своих изменений - результат тот же.



Проц - SAM7S64. IAR4.41. Код временно урезан до минимума - 2 таска-мигалки и собсно сам Mass Storage.



З.Ы. еще не пробовал под FreeRTOS... smile.gif


--------------------
Если сверху смотреть, то сбоку кажется, что снизу ничего не видно.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
SpiritDance
сообщение Mar 22 2007, 12:33
Сообщение #2


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

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



Pat
С исходником MSD вместе идет core1.02

all
Люди я попробывал скомпилить под gcc/crossworks
Слегка опешил из-за этого в файле common.h в функции copy:
Код
((char *) pDest)++;

ругаеццо
Цитата
D:/prj/oscilloscope-sam7/../lib/at91_usb-cw/core/common.h:122: error: lvalue required as increment operand

blink.gif Чо ему надо? Там же приведение к указателю на char есть. Я конечно могу в наглую еденичку прибавить, только это дичь какая-то.


Второй вопрос
каким образом прокатывает такое в файле usb.h:
Код
typedef struct _S_usb S_usb;

......
//идет определение типов типа такого
typedef void (*S_usb_reset)(const S_usb *);
//ну и потом таблица колбеков из такиз типов

//далее в том же файле
typedef struct _S_usb {

    const S_usb_driver     *pDriver;        //!< Pointer to the low-level driver
    S_usb_endpoint* const   pEndpoints;     //!< Endpoints list
    unsigned int            dNumEndpoints;  //!< Number of endpoints in list
    const S_usb_callbacks  *pCallbacks;     //!< Pointer to the callbacks
    S_usb_request* const    pSetup;         //!< \brief Pointer to the last
                                            //!< received SETUP packet
    volatile unsigned int* const pState;    //!< Current state of the device
} S_usb;

Копилялка естественно ругаецца на переопределение типа. Нужна такая фича для кривого рекурсивного определения типов данных, откуда интересно ее взяли и как с этим бороться?


Второе победилось убиванием второго typedef и оставление голого struct


--------------------
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

Сообщений в этой теме
- Dron_Gus   Mass Storage от Atmel под ОСью...   Mar 20 2007, 03:15
- - _4afc_   Не пробовал из под ОС. Но код активно работает на ...   Mar 20 2007, 11:46
- - Dron_Gus   Попробовал убрать malloc - результат тот же. Сейча...   Mar 20 2007, 17:00
- - apic   А какой mass storage ? У меня хорошо работает AT91...   Mar 20 2007, 23:17
|- - Pat   Цитата(apic @ Mar 20 2007, 22:17) А какой...   Mar 21 2007, 18:48
- - Dron_Gus   Тот, который DEMO_FS_MS_UNLIMITED_v16... Пошел к...   Mar 20 2007, 23:31
- - apic   Будете разбираться, обратите внимание что функция ...   Mar 21 2007, 00:39
- - apic   Вот прямая ссылка Usb mass storage   Mar 21 2007, 21:09
|- - dxp   Цитата(SpiritDance @ Mar 22 2007, 15:33) ...   Mar 22 2007, 17:45
- - SpiritDance   dxp В режиме с++ компилять не хочу - у нас правило...   Mar 22 2007, 18:51
|- - dxp   Цитата(SpiritDance @ Mar 22 2007, 21:51) ...   Mar 23 2007, 10:49
|- - SpiritDance   Цитата(dxp @ Mar 23 2007, 10:49) Можно уз...   Mar 23 2007, 11:10
- - Wano   Цитата(Dron_Gus @ Mar 20 2007, 02:15) Под...   Mar 25 2007, 21:59
- - DASM   Цитата(Dron_Gus @ Mar 20 2007, 04:15) Уже...   Mar 27 2007, 13:35
- - Dron_Gus   Кстати, AT91 USB Framework - Core 1.02 + MSD 1.0 п...   Apr 2 2007, 22:49
- - SpiritDance   Люди, а не поделитесь работающим проектиком под ke...   Jun 4 2007, 06:24
- - Alx_D   А я повертел этот MassStorage и свой написал. Под ...   Jul 1 2007, 15:49


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

 


RSS Текстовая версия Сейчас: 27th June 2025 - 02:15
Рейтинг@Mail.ru


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