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

 
 
> USB своими руками для sam7x256, или проблемы с которыми я столкнулся.
e0000
сообщение Jan 28 2011, 08:54
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 22
Регистрация: 21-04-09
Пользователь №: 48 029



Доброе время суток всем.
Имеем sam7x256, интерфейс USB, и небольшой опыт (3 проекта я не считаю опытом) работы с этим кристалом. С AVR и MC51 опыт достаточно большой, но с ARM-ом сталкнулся год назад. RS, CAN, ADC, SPI, TWI, AIC ну, в общем вся переферия кристалла поддалась о особых трудностей с этим не возникло.
Но, ниразу мне не приходилось делать что либо для USB. Однако интересовался, читал (и это форум в том числе), смотрел, слушал...
Я вообще долго не задаю вопросы пока уже совсем не упрусь в стенку. Понимаю, что те, кто разобрался в вопросе сечас могут закричать, что "там все просто" или "возьми примеры и не парься", но я человек дотошный и пытаюсь разобраться в каждой мелочи. При этом никогда не отказываю в объяснениях... Однако сейчас объяснить надо мне, да и другим думаю тоже будет интересно.
Я может буду задавать ламерские вопросы, но прошу отнестись ко мне с лояльной стороны и не судить за это строго.

И так.

1.
Судя из того, что я вычитал и прочитал. Работа UDP в background-е меня не устраивает и хотелось бы настроить работу через AIC. Но сталкнулся с такой проблемой: Как задать первоначальные настройки для UDP? Просто задали тактирование и все? А потом пытаемся ловить ENDBUSRES? или же надо запретить передатчик TXDIS перед настройкой?

2.
При простой подаче тактирования (ну, частоту я соблел sm.gif), UDP_ISR чистый (т.е. равен 0) как белый лист, какие бы "приседансы" не делались. и посему ENDBUSRES я просто не вижу. Ни включение ни выключение резисторя на D+ не приводят никчему. Хотя посылки от хоста осцилографом я вижу прекрасно. Пересброс питания, reset и включение выключения кабеля эфект нулевой.

3.
Несколько раз контроллер UDP таки запускался и я даже залетал по вектору прерывания в обработку прерываний от UDP, но ниодин из битов регистра UDP_ISR не детектируется. Создавалось впечатление, что я залетел туда случайно, но из прерывания он не выходит. Т.е. крутится там и все. Я принудительно в конце процедуры вставил очистку всех прерываний от UDP как в AIC так и в UDP_ICR.
А прерывание все равно вызывается и непонятно чем sad.gif

4.
Из-за всего этого я не могу идти дальше, посему вопросов связанных с самим протоколом я задать не смогу. Однако хочу задать вопрос по поводу отладки самого контроллера UDP. В keil нет ничего, что с ним связано. Для отладки другой переферии мне было достаточно keil debuger, а тут..? С UDP пришлось устанавливать "светодиодные метки" но, это жутко неудобно. Как и чем проверять работу кода для UDP в keil ?

Понимаю, что вопросы может быть даже немного к "стыду моему", но еще раз прошу отнестить снисходительно к ним.

PS
Я специально не привожу и не хочу, чтобы приводили куски кода, потому как хочу понять сам процесс и принцип.



--------------------
Уважающая себя схема, как уважающая себя женщина, никогда с первого раза не даст того, что от нее хотят. (с) мое
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
shrek
сообщение Sep 19 2011, 08:02
Сообщение #2


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

Группа: Участник
Сообщений: 125
Регистрация: 1-12-08
Из: г. Орел
Пользователь №: 42 126



Цитата
Теперь с передатчиком. Надо ли отправлять нулевой пакет в конце каждой посылки в ПК? Или надо отправлять только если размер данных кратен конечной точке?


Надо если размер данных кратен конечной точке, но не больше 1023 байта за раз!
Отправлять надо нулевой пакет через ту же что и отправляете данные, но не через контрольную точку!

Сообщение отредактировал shrek - Sep 19 2011, 08:03
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- e0000   USB своими руками для sam7x256   Jan 28 2011, 08:54
- - kovigor   Цитата(e0000 @ Jan 28 2011, 11:54) потому...   Jan 28 2011, 09:09
|- - e0000   Цитата(kovigor @ Jan 28 2011, 11:09) 1, 2...   Jan 28 2011, 09:41
|- - kovigor   1, 2, 3. А вы пробовали разобраться с примерами ? ...   Jan 28 2011, 10:04
|- - e0000   Цитата(kovigor @ Jan 28 2011, 12:04) Чтоб...   Jan 28 2011, 10:10
|- - kovigor   Цитата(e0000 @ Jan 28 2011, 13:10) Спасиб...   Jan 28 2011, 10:13
|- - e0000   В принцияпе со стартом самого UDP разобрался. Оста...   Jan 28 2011, 12:21
|- - kovigor   Цитата(e0000 @ Jan 28 2011, 15:21) В прин...   Jan 28 2011, 12:38
|- - e0000   Цитата(kovigor @ Jan 28 2011, 14:38) Поче...   Jan 28 2011, 13:32
|- - kovigor   Цитата(e0000 @ Jan 28 2011, 17:32) Правил...   Jan 28 2011, 13:38
|- - aaarrr   Цитата(e0000 @ Jan 28 2011, 16:32) Я так ...   Jan 28 2011, 20:40
|- - e0000   Цитата(aaarrr @ Jan 28 2011, 22:40) Такти...   Jan 29 2011, 12:18
|- - aaarrr   Цитата(e0000 @ Jan 29 2011, 15:18) 1. ...   Jan 29 2011, 12:33
- - e0000   Продолжение глупых вопросов У меня ситуация след...   Jan 29 2011, 17:46
|- - aaarrr   Цитата(e0000 @ Jan 29 2011, 20:46) У меня...   Jan 29 2011, 17:51
- - Chameleon   Сброс обязательно будет не один. При подключении у...   Jan 31 2011, 12:11
- - kichnamid   Здравствуйте, а не встречались с такой проблеммой?...   Feb 14 2011, 11:48
- - e0000   Сталкнулся с той-же проблемой... Приходят только R...   Feb 15 2011, 14:55
- - e0000   Возврат к "только процессор на порту" ре...   Feb 15 2011, 17:21
- - kichnamid   странно. у меня устройство запитывается от внешнег...   Feb 16 2011, 13:18
|- - e0000   Прошу прощения у всезнаеющего All-a, но я уже не з...   Feb 16 2011, 18:46
|- - kovigor   Цитата(e0000 @ Feb 16 2011, 21:46) Прошу ...   Feb 16 2011, 18:52
|- - e0000   Цитата(kovigor @ Feb 16 2011, 20:52) Что,...   Feb 17 2011, 07:53
|- - kovigor   Цитата(e0000 @ Feb 17 2011, 10:53) Что за...   Feb 17 2011, 09:13
- - e0000   BusHound Скачал, поставил... SETUP пакетов именно ...   Feb 17 2011, 10:19
|- - kovigor   Цитата(e0000 @ Feb 17 2011, 13:19) К нему...   Feb 17 2011, 13:12
|- - e0000   Цитата(kovigor @ Feb 17 2011, 15:12) Есть...   Feb 17 2011, 17:42
|- - kovigor   Цитата(e0000 @ Feb 17 2011, 20:42) Ситуац...   Feb 17 2011, 21:13
- - shrek   У меня сначала знакомства с USB "своими рукам...   Feb 21 2011, 08:33
- - kichnamid   "После сброса устройство надо заново проиници...   Feb 24 2011, 07:59
- - shrek   Цитата"После сброса устройство надо заново пр...   Feb 25 2011, 11:27
- - kichnamid   к моей плате подходят только пару-тройку ENBUSRES,...   Mar 1 2011, 11:44
|- - aaarrr   Цитата(kichnamid @ Mar 1 2011, 14:44) атм...   Mar 1 2011, 15:07
- - shrek   Цитатак моей плате подходят только пару-тройку ENB...   Mar 1 2011, 16:25
|- - DmitryM   Цитата(shrek @ Mar 1 2011, 19:25) ... Не...   Mar 2 2011, 13:19
- - kichnamid   RE: USB своими руками для sam7x256   Mar 4 2011, 07:39
- - shrek   Цитатая понимаю, что у многих результат труда это ...   Mar 4 2011, 08:26
- - sergeeff   Совет. Мы купили как-то отладочную плату, где во в...   Mar 4 2011, 09:04
- - kichnamid   перепроверил схему, сверил с предлагаемой Atmel...   Mar 15 2011, 11:51
- - shrek   Вашу схему в студию!   Mar 15 2011, 14:39
- - kichnamid   вот кусок схемы относительно интерфейса USB   Mar 20 2011, 13:23
- - aaarrr   А где, простите, земля у USB? И зачем эта непонятн...   Mar 20 2011, 14:44
- - kichnamid   извиняюсь, забыл дорисовать. РЦ-цепочка у 5В - эт...   Mar 21 2011, 18:24
- - shrek   Под "USB" что в схеме понимается? Земля ...   Mar 22 2011, 14:47
- - kichnamid   земля на моей плате общая для всего. под USB поним...   Mar 22 2011, 17:32
- - e0000   Доброе время суток, всезнающий All! Возвращаюс...   Aug 29 2011, 12:05
|- - kovigor   Цитата(e0000 @ Aug 29 2011, 15:05) В цело...   Aug 29 2011, 13:42
- - e0000   в том-то и дело, что прерывание не возникает Но ...   Aug 29 2011, 14:47
|- - kovigor   Цитата(e0000 @ Aug 29 2011, 17:47) Но есл...   Aug 29 2011, 14:58
- - e0000   - Очень прошу не распространять! умрет вместе ...   Aug 29 2011, 17:42
- - shrek   А у меня наоборот проблема с отправкой пакета разм...   Aug 31 2011, 05:29
- - e0000   Хм.... если у нас прилетает пакет равный размеру к...   Aug 31 2011, 11:30
- - shrek   нулевой по идее прилетит последним в кадре если ра...   Sep 1 2011, 05:54
- - e0000   но у меня не прилетает "нулевой пакет" е...   Sep 1 2011, 11:32
- - shrek   хотя в принципе в моем обработчике прерываний как ...   Sep 2 2011, 05:39
- - e0000   Ситуация какова... Я не знаю сколько мне прилетит ...   Sep 2 2011, 07:48
- - shrek   Вообще для того чтобы узнать сколько байт прилетел...   Sep 6 2011, 11:47
- - e0000   Обнаружил следующее: 1. Если пакет меньше 64 байта...   Sep 8 2011, 14:01
- - shrek   а если 65 байт?) у некоторых программ для работы с...   Sep 9 2011, 11:32
- - e0000   при 65 принимаю только 64, а последний не вызывает...   Sep 12 2011, 09:34
- - shrek   Странно... А вы прерывания сбрасываете? А попутно ...   Sep 14 2011, 11:18
- - e0000   Нет не возникает... Переделали протокол. Сделали е...   Sep 16 2011, 06:26
- - shrek   Недавно кит вернули AT91SAM7A3-EK я на нем запусти...   Sep 20 2011, 07:03


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

 


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


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