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

 
 
> 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
Ответов
e0000
сообщение Jan 29 2011, 17:46
Сообщение #2


Участник
*

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



Продолжение глупых вопросов sm.gif

У меня ситуация следующая:
Проиходит reset, потом wakeup, и почему-то, хост опять посылает мне reset sad.gif
Так и должно быть? Я что-то пропустил?
Что должно вызываться первым? reset или wakeup?
И должен ли вообще вызываться wakeup, если до этого был reset?



Цитата(aaarrr @ Jan 29 2011, 14:33) *
В C-код ничего вставлять не надо, все вместе соберет линкер. Если хотите использовать подпрограммы на ассемблере, то придется еще изучить стандарт AAPCS.

Спасибо. На досуге разберусь обязательно. Жалко неиспользовать наработки прошлого.

Цитата(aaarrr @ Jan 29 2011, 14:33) *
Тогда прикрутите UART для отладки.

Это и сделал. Правда пришлось смоим зрением паять к ногам LQFP-100 провода. Но получилось sm.gif
Больше ничего допаивать не хочу - и так глаза поломал пока припаялся.
Иногда правда UART отстает от событий, прийдется еще и FIFO сгородить небольшой...

Сообщение отредактировал e0000 - Jan 29 2011, 17:47


--------------------
Уважающая себя схема, как уважающая себя женщина, никогда с первого раза не даст того, что от нее хотят. (с) мое
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Jan 29 2011, 17:51
Сообщение #3


Гуру
******

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



Цитата(e0000 @ Jan 29 2011, 20:46) *
У меня ситуация следующая:
Проиходит reset, потом wakeup, и почему-то, хост опять посылает мне reset sad.gif
Так и должно быть? Я что-то пропустил?
Что должно вызываться первым? reset или wakeup?
И должен ли вообще вызываться wakeup, если до этого был reset?

Reset может приходить не один, это точно. А вот что с wakeup не помню. Обрабатывайте все спокойно, там разберетесь.
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
- - 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   ЦитатаТеперь с передатчиком. Надо ли отправлять ну...   Sep 19 2011, 08:02
- - shrek   Недавно кит вернули AT91SAM7A3-EK я на нем запусти...   Sep 20 2011, 07:03


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

 


RSS Текстовая версия Сейчас: 25th July 2025 - 12:38
Рейтинг@Mail.ru


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