|
Бардак с 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 9 2008, 13:21
|
Участник

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

|
Цитата(aaarrr @ Sep 9 2008, 16:10)  Во-первых, действительно ли оно у Вас просит драйверы, или говорит "unknown device"?
Во-вторых, 600 байт/мс туда и обратно через шину элементарно не пройдут. Пишет вот так: USBDevice "Для устройства не установлены драйверы. (Код 28) Нажмите "Переустановить" для переустановки драйверов этого устройства." Я понял вопрос, я вшивал core project он сразу просит установить драйвера,а этот в 2000 у меня не просит, а на ХР говорит что устройство сконфигурировано неправильно или чтото в таком духе. Почему 600 байт/мс не пройдут? Скорость для фулл спид 12Мбит/сек=12кбит/мс вроде правильно считаю, ясно что такой скорости не будет, но 1кбит/мс думаю, что точно должно тянуть. Плюс еще хотел спросить а то с даташита к at91sam7s64 не ясно: у UDP есть свои встроенные буфера FIFO или как в USARTе они работают с контроллером ПДП или их вообще нада назначать с РАМ в проге как какието масивы например
|
|
|
|
|
Sep 9 2008, 13:34
|
Гуру
     
Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448

|
Цитата(SolarA @ Sep 9 2008, 17:21)  Пишет вот так: USBDevice "Для устройства не установлены драйверы. (Код 28) Нажмите "Переустановить" для переустановки драйверов этого устройства." Я понял вопрос, я вшивал core project он сразу просит установить драйвера,а этот в 2000 у меня не просит, а на ХР говорит что устройство сконфигурировано неправильно или чтото в таком духе. Понятно. Видимо нужно сказать спасибо кривым примерам. Цитата(SolarA @ Sep 9 2008, 17:21)  Почему 600 байт/мс не пройдут? Скорость для фулл спид 12Мбит/сек=12кбит/мс вроде правильно считаю, ясно что такой скорости не будет, но 1кбит/мс думаю, что точно должно тянуть. 1кбит/мс будет, а 4.8кбит/мс в обе стороны не будет. Цитата(SolarA @ Sep 9 2008, 17:21)  Плюс еще хотел спросить а то с даташита к at91sam7s64 не ясно: у UDP есть свои встроенные буфера FIFO или как в USARTе они работают с контроллером ПДП или их вообще нада назначать с РАМ в проге как какието масивы например В даташите все предельно ясно: у UDP есть свои FIFO и нет PDC.
|
|
|
|
|
Sep 9 2008, 14:02
|
Участник

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

|
С UDP понял. Как собсно и с примерами. Может у когото есть правильный пример инициализации для mass storage device?
По поводу скорости: я указал самый худший вариант. На самом деле там большую часть времени будет к ПК 270 байтов, с ПК на МК 300 байтов. Думаю будет успевать.
Сразу такой вопрос: можно ли организовать mass storage device с памятью в РАМ? Я ща копаюсь в исходниках недопримера там вроде выставляются адрес начала памяти и ее количество. Но не совсем понятно как оно все работает.
Плюс забыл сказать что тот бинарник с GCCшного примера пользует одинаковые библиотеки с моим проектом. Отсюда напрашивается такие вопросы: 1. Не из-за компилятора ли у меня не работает пример? 2. Не из-за того ли, что у меня не атмеловский evaluation board, а какойто полусамопальный наш(без кнопок, памяти, дисплея и т.д.), не работает пример? (По типу, он лезет в СДРАМ которой нету и поэтому както бочит)
Кстати толькошо нашел заглушку (если чегото там нету то прога не доходит до инициализации ЮСБ), убал ее. Теперь у меня неизвестное ЮСБ запоминающее устройство для которого в 2000 нада поставить драйвера, а ХР попросту говорит что оно сконфигурировано не правильно. Но зато уже определяет Vendor ID, Product ID и еже с ними. Кстати там есть 2 такие строки
// Configure baud rate AT91C_BASE_DBGU->DBGU_BRGR = BOARD_MCK / (115200 * 16); // Enable receiver and transmitter AT91C_BASE_DBGU->DBGU_CR = AT91C_US_RXEN | AT91C_US_TXEN;
Без которых устройство не определяется. Ума не приложу какое отношение DBGU имеет к UDP
|
|
|
|
|
Sep 9 2008, 14:10
|
Гуру
     
Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448

|
Цитата(SolarA @ Sep 9 2008, 17:56)  Может у когото есть правильный пример инициализации для mass storage device? Едва ли кто-то станет делиться правильным примером бесплатно, увы  Цитата(SolarA @ Sep 9 2008, 17:56)  По поводу скорости: я указал самый худший вариант. На самом деле там большую часть времени будет к ПК 270 байтов, с ПК на МК 300 байтов. Думаю будет успевать. В таком виде должно. Только учтите, что нагрузку на процессор это даст довольно заметную. Цитата(SolarA @ Sep 9 2008, 17:56)  Сразу такой вопрос: можно ли организовать mass storage device с памятью в РАМ? Можно, почему нет? Цитата(SolarA @ Sep 9 2008, 17:56)  1. Не из-за компилятора ли у меня не работает пример? 2. Не из-за того ли, что у меня не атмеловский evaluation board, а какойто полусамопальный наш(без кнопок, памяти, дисплея и т.д.), не работает пример? (По типу, он лезет в СДРАМ которой нету и поэтому както бочит) 1. Это Вам должно быть виднее. 2. Насколько я помню, для атмеловского примера для S64 нужен только исправный процессор с правильным кварцем. Цитата(SolarA @ Sep 9 2008, 18:02)  Ума не приложу какое отношение DBGU имеет к UDP Если выключить DBGU, то процессор просто зависнет при попытке отправить через него диагностику.
|
|
|
|
|
Sep 9 2008, 14:17
|
Участник

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

|
звучит тупо-но я чтото сделал и у меня нормально определилось устройство. Пока у него 0 байт всего буду копать дальше. Спасибо за поддержку
|
|
|
|
Сообщений в этой теме
SolarA Бардак с at91sam7s64 Sep 9 2008, 12:50      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 9 2008, 16:50) Задача... Sep 10 2008, 14:31 SolarA Цитата(galjoen @ Sep 10 2008, 17:31) Это ... Sep 10 2008, 14:36  aaarrr Цитата(SolarA @ Sep 10 2008, 18:36) Мне п... Sep 10 2008, 14:42   SolarA Цитата(aaarrr @ Sep 10 2008, 17:42) Опиши... Sep 10 2008, 15:03    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
|
|
|