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

 
 
> передача по USB в C8051F320, на элементарном уровне
NikP
сообщение Nov 30 2012, 13:06
Сообщение #1


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

Группа: Участник
Сообщений: 168
Регистрация: 25-08-05
Пользователь №: 7 944



Делал фирмвары для C8051F320 на основе примеров от Силаба, всё работало. Решил немного углубить знания - поэкспериментировать. Взял пример для Bulk , просто поменял местами эндпойнты 1 и 2 для In - Out, поставил массив из 8 байтов на передачу. И ничего не работает. Компьютер видит контроллер, а ничего не принимает.
1. Где может быть засада?
2. Как можно проверить , кто виноват - фирмвара или некорректная программа приёма?
3. Каков вообще порядок прерываний при передаче по УСБ. Т.е. какие флаги в каком порядке выставляются.
Вопросы быть может тупые, но прошу ответить подробно, а не типа "читай описание", т.к. мозги переклинило, может, я что-то понял не так.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
NikP
сообщение Dec 3 2012, 16:32
Сообщение #2


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

Группа: Участник
Сообщений: 168
Регистрация: 25-08-05
Пользователь №: 7 944



Спасибо, значит я не совсем правильно понял этот момент работы шины. Считал, что при перемене местами эндпойнтов, хост автоматом перейдёт на приём данных с того эндпойнта, который передаст фирмвара при инициализации.
Вообще, я неграмотно сформулировал начальный вопрос. Меня интересует работа на самом низком уровне - порядок выставления флагов, прерываний и подобное. Например, после записи в фифо надо программно установить бит INPRDY. После передачи пакета байтов бит сбрасывается аппаратно, вырабатывается прерывание и можно записывать новый пакет. А вот можно ли организовать передачу вообще без использования прерывания? Если, например, у меня достаточно медленный процесс, так что данные я могу "вталкивать" в фифо в основном теле программы. Тогда я могу избавиться от большого модуля, описывающего обработку прерываний. И программа меньше, и головной боли тоже.
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 26th August 2025 - 19:58
Рейтинг@Mail.ru


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