|
Бардак с at91sam7s64, Не работает норм ЮСБ |
|
|
|
Sep 9 2008, 12:50
|
Участник

Группа: Новичок
Сообщений: 17
Регистрация: 28-08-08
Пользователь №: 39 873

|
Народ не работает ЮСБ. Скачал с сайта Атмела примеры версии 1.4 и попробовал вшить usb mass storage device. После этого плата определяет как просто device которому нужны драйвера и все(пробовал на 2000 и на ХР). Пробовал также версии которые идут с ИАР 5.2(по идеи тот же 1.4) а также версия 1.3. Все точно так же. Уже не знаю че делать. Устройство нормально не определяется и все. (тока один раз я нашел бинарник с GCCшного проекта поидеи который вшился и заработал, тоесть определил платку как масс сторедж с 0 байтов вообще и 0 байтов свободного места. это устройство нельзя отформатировать) Задача Мне надо организовать обмен данными между ПК и МК. Примерно 600 байт туда и обратно раз в милисекунду гдето(лучше чаще). Думал сделать через масс сторедж, дабы с ПК писало в какойто файл, а читало с другого. Выделить под эти файлы допустим по 2 кБ в РАМ(для с64 всего 16кб РАМ) и спокойно себе писать в файл с ПК и читать область памяти в проге на МК. Или как вариант написать драйвера под винду для своего девайса и через них уже както общатся. Хотелось бы услышать какието идеи или замечания как это сделать и если кому не сложно, попробуйте вшить иаровский пример - будет ли он у вас работать. Если будет, то пришлите ссылочку откуда скачали или же сам проект. Буду премного благодарен за инфу
|
|
|
|
|
 |
Ответов
|
Sep 10 2008, 14:31
|
Знающий
   
Группа: Свой
Сообщений: 841
Регистрация: 10-05-07
Из: Чебоксары (Россия)
Пользователь №: 27 640

|
Цитата(SolarA @ Sep 9 2008, 16:50)  Задача Мне надо организовать обмен данными между ПК и МК. Примерно 600 байт туда и обратно раз в милисекунду гдето(лучше чаще). Думал сделать через масс сторедж, дабы с ПК писало в какойто файл, а читало с другого. Выделить под эти файлы допустим по 2 кБ в РАМ(для с64 всего 16кб РАМ) и спокойно себе писать в файл с ПК и читать область памяти в проге на МК. У меня была такая же мысль (MassStorage я сделал), но избавится от кэширования файлов виндой мне не удалось. Т.е. из устройства только первый раз читаются данные, а второй и последующие разы винда их кэширует (к устройству вообще не обращается) и из файла читается одно и тоже. М.б. кто-то знает как у винды кэширование отключить? Цитата(SolarA @ Sep 9 2008, 16:50)  Или как вариант написать драйвера под винду для своего девайса и через них уже както общатся. Это конечно пройдёт, но у USB 1.1 max 16 пакетов по 64 байта (в обе стороны) за кадр = 1 мс (+ ещё 1 пакет через контрольный канал).
|
|
|
|
|
Sep 10 2008, 14:36
|
Участник

Группа: Новичок
Сообщений: 17
Регистрация: 28-08-08
Пользователь №: 39 873

|
Цитата(galjoen @ Sep 10 2008, 17:31)  Это конечно пройдёт, но у USB 1.1 max 16 пакетов по 64 байта (в обе стороны) за кадр = 1 мс (+ ещё 1 пакет через контрольный канал). Мне по скорости нада 660 байт/мс. Так что мне должно хватать. Насчет кэширования это еще мне один подводный камень. Я уже теперь и не знаю что делать. Наверное нада не парится и садится писать-искать драйвера. Подожду может еще кто седня чего посоветует с масс сторедж, а завтра наверное нада будет разбиратся с драйверами. Кстати как вы организовали чтение и запись в файл со стороны МК?
|
|
|
|
|
Sep 10 2008, 15:03
|
Участник

Группа: Новичок
Сообщений: 17
Регистрация: 28-08-08
Пользователь №: 39 873

|
Цитата(aaarrr @ Sep 10 2008, 17:42)  Опишите задачу подробнее. Описываю: Есть Верхний уровень - прога (написана пока под линукс, позже под винду) с GUI, которая считает координаты и т.д. Есть Нижний уровень - контроллер на базе at91sam7s64 который, кое че, уже у себя досчитывает и раздает сигналы на двигатели. Нада - идеально: раз в 20 мкс передавать с верхнего уровня вниз 660 байт и снизу на верх 330 байт. Реально: там хватит скорости передачи 660 байт/мс так как не каждые 20мкс есть изменения системы. Передаваемые данные это 2-3 структуры, которые описывают систему. Обмен данными через USB(можно прикинутся COM портом(типа USBtoCOM), но предварительные тесты показали что скорости не хватает), так как нада чтоб контролер подключался к любому компу на котором стои ПО и драйвера без лишних настроек ком порта и т.д. Вот такая задача
|
|
|
|
Сообщений в этой теме
SolarA Бардак с at91sam7s64 Sep 9 2008, 12:50 aaarrr Во-первых, действительно ли оно у Вас просит драйв... Sep 9 2008, 13:10 SolarA Цитата(aaarrr @ Sep 9 2008, 16:10) Во-пер... Sep 9 2008, 13:21  aaarrr Цитата(SolarA @ Sep 9 2008, 17:21) Пишет ... Sep 9 2008, 13:34   SolarA С UDP понял. Как собсно и с примерами.
Может у ко... Sep 9 2008, 14:02    aaarrr Цитата(SolarA @ Sep 9 2008, 17:56) Может ... Sep 9 2008, 14:10     SolarA звучит тупо-но я чтото сделал и у меня нормально о... Sep 9 2008, 14:17      SolarA Цитата(SolarA @ Sep 9 2008, 17:17) звучит... Sep 9 2008, 15:33 uriy ЦитатаУже продолжая тему, может комуто сгодится, я... Sep 9 2008, 16:21 SolarA Не получается выделить память.
Пишу такое :
M... Sep 10 2008, 09:59 aaarrr Цитата(SolarA @ Sep 10 2008, 13:59) По ид... Sep 10 2008, 10:43 SolarA Почему мало?
Вы имеете ввиду что его винда определ... Sep 10 2008, 10:54 aaarrr 4096 байт - это 8 секторов. Для FAT на них нужно р... Sep 10 2008, 11:16 SolarA МДА... я уже сам прогуглил. Получается что действи... Sep 10 2008, 11:38 aaarrr По-хорошему Вам нужно сделать программный эмулятор... Sep 10 2008, 11:44 SolarA Цитата(aaarrr @ Sep 10 2008, 14:44) По-хо... Sep 10 2008, 12:52  aaarrr Цитата(SolarA @ Sep 10 2008, 16:52) Тоест... Sep 10 2008, 13:20 misyachniy ИМХО - Явно какие-то проблемы с дескрипторами.
Или... Sep 10 2008, 12:58 SolarA Цитата(misyachniy @ Sep 10 2008, 15:58) И... Sep 10 2008, 13:36 aaarrr Драйвер можно взять и готовый.
pragma pack управл... Sep 10 2008, 13:52    galjoen Цитата(SolarA @ Sep 10 2008, 19:03) Описы... Sep 10 2008, 15:54     SolarA Цитата(galjoen @ Sep 10 2008, 18:54) Для ... Sep 10 2008, 15:57 _4afc_ Цитата(galjoen @ Sep 10 2008, 18:31) У ме... Sep 11 2008, 09:40  galjoen Цитата(_4afc_ @ Sep 11 2008, 13:40) Не по... Sep 12 2008, 09:33 aaarrr Дело в том, что bulk-передачи не предназначены для... Sep 10 2008, 15:15 SolarA Цитата(aaarrr @ Sep 10 2008, 18:15) Дело ... Sep 10 2008, 15:31 aaarrr Контроллер будет работать на частоте 48MHz, если и... Sep 10 2008, 15:37 SolarA Цитата(aaarrr @ Sep 10 2008, 18:37) Контр... Sep 10 2008, 15:53
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|