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

 
 
> Бардак с at91sam7s64, Не работает норм ЮСБ
SolarA
сообщение Sep 9 2008, 12:50
Сообщение #1


Участник
*

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



Народ не работает ЮСБ. help.gif
Скачал с сайта Атмела примеры версии 1.4 и попробовал вшить usb mass storage device. После этого плата определяет как просто device которому нужны драйвера и все(пробовал на 2000 и на ХР). Пробовал также версии которые идут с ИАР 5.2(по идеи тот же 1.4) а также версия 1.3. Все точно так же. Уже не знаю че делать. Устройство нормально не определяется и все. (тока один раз я нашел бинарник с GCCшного проекта поидеи который вшился и заработал, тоесть определил платку как масс сторедж с 0 байтов вообще и 0 байтов свободного места. это устройство нельзя отформатировать)

Задача
Мне надо организовать обмен данными между ПК и МК. Примерно 600 байт туда и обратно раз в милисекунду гдето(лучше чаще). Думал сделать через масс сторедж, дабы с ПК писало в какойто файл, а читало с другого. Выделить под эти файлы допустим по 2 кБ в РАМ(для с64 всего 16кб РАМ) и спокойно себе писать в файл с ПК и читать область памяти в проге на МК.
Или как вариант написать драйвера под винду для своего девайса и через них уже както общатся.

Хотелось бы услышать какието идеи или замечания как это сделать и если кому не сложно, попробуйте вшить иаровский пример - будет ли он у вас работать. Если будет, то пришлите ссылочку откуда скачали или же сам проект.
Буду премного благодарен за инфу
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
galjoen
сообщение Sep 10 2008, 14:31
Сообщение #2


Знающий
****

Группа: Свой
Сообщений: 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 пакет через контрольный канал).
Go to the top of the page
 
+Quote Post
SolarA
сообщение Sep 10 2008, 14:36
Сообщение #3


Участник
*

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



Цитата(galjoen @ Sep 10 2008, 17:31) *
Это конечно пройдёт, но у USB 1.1 max 16 пакетов по 64 байта (в обе стороны) за кадр = 1 мс (+ ещё 1 пакет через контрольный канал).

Мне по скорости нада 660 байт/мс. Так что мне должно хватать. Насчет кэширования это еще мне один подводный камень.
Я уже теперь и не знаю что делать. Наверное нада не парится и садится писать-искать драйвера.
Подожду может еще кто седня чего посоветует с масс сторедж, а завтра наверное нада будет разбиратся с драйверами.

Кстати как вы организовали чтение и запись в файл со стороны МК?
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Sep 10 2008, 14:42
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(SolarA @ Sep 10 2008, 18:36) *
Мне по скорости нада 660 байт/мс.

Только учтите, что эти 660 байт Вы далеко не всегда получите - отвлечется винда на что-нибудь, и скорость резко упадет.

Опишите задачу подробнее.
Go to the top of the page
 
+Quote Post
SolarA
сообщение Sep 10 2008, 15:03
Сообщение #5


Участник
*

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



Цитата(aaarrr @ Sep 10 2008, 17:42) *
Опишите задачу подробнее.

Описываю:
Есть Верхний уровень - прога (написана пока под линукс, позже под винду) с GUI, которая считает координаты и т.д.
Есть Нижний уровень - контроллер на базе at91sam7s64 который, кое че, уже у себя досчитывает и раздает сигналы на двигатели.
Нада - идеально: раз в 20 мкс передавать с верхнего уровня вниз 660 байт и снизу на верх 330 байт. Реально: там хватит скорости передачи 660 байт/мс так как не каждые 20мкс есть изменения системы. Передаваемые данные это 2-3 структуры, которые описывают систему.
Обмен данными через USB(можно прикинутся COM портом(типа USBtoCOM), но предварительные тесты показали что скорости не хватает), так как нада чтоб контролер подключался к любому компу на котором стои ПО и драйвера без лишних настроек ком порта и т.д.
Вот такая задача
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- 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


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

 


RSS Текстовая версия Сейчас: 22nd July 2025 - 14:28
Рейтинг@Mail.ru


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