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

 
 
> ISP1581+atmega128, Хост не генерит setup запрос
nagserg
сообщение Dec 16 2005, 09:07
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 47
Регистрация: 12-05-05
Пользователь №: 4 940



ISP1581 прицепил к atmega128, которая работает на 16 МГц.
Последовательность действий такая:

После подачи питания делаю задержку в 3 секунды, потом инициализирую

Mode регистр (SOFTCT+GLINTENA+CLKAON+WKUPCS),

Interrupt Configuration (0x54),

Interrupt Enable (IEBRST+IESUSP+IERESM+IEHS_STA),

Interrupt Enable+1 (IEP0SETUP+IEP0TX+IEP0RX),

USB_WR(Address,DEVEN)

после этого возникает прерывание и выставляется регистре interrupt
флаг SUSP, затем через некоторое время BRESET и HS_STAT. Не
могу добится, чтобы возникло прерывание setup.

Подскажите пожалуйста, кто знает что я не так делаю? Может команду какую пропускаю.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
fivel
сообщение Jan 12 2006, 12:27
Сообщение #2





Группа: Новичок
Сообщений: 6
Регистрация: 12-01-06
Пользователь №: 13 089



У меня работает примерно так:

UWRITE_BYTE_C(MODE, 0x80); //
UWRITE_BYTE_C(MODE, 0x90); // Asynch. reset
while (delay--){ // Delay
}

UWRITE_BYTE_C(IEINT, 0x71);
UWRITE_BYTE_C(IEINT+1, 0x0D); // Enable BRESET INT

UWRITE_BYTE_C(EPINDEX, 0x20); // Select EP0SETUP
UWRITE_BYTE_C(EPTYPE, 0x08); // Enable EP0SETUP

UWRITE_BYTE_C(EPINDEX, 0x00); // Select EP0 Out
UWRITE_BYTE_C(EPTYPE, 0x08); // Enable EP0SETUP

UWRITE_BYTE_C(EPINDEX, 0x01); // Select EP0 In
UWRITE_BYTE_C(EPTYPE, 0x08); // Enable EP0SETUP

UWRITE_BYTE_C(FADDR, 0x80); // Enable Device And Reset Device Address

UWRITE_BYTE_C(MODE, 0x89); // Enable Global Interrupt
// Enable connect 1.5 KOm
Go to the top of the page
 
+Quote Post



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

 


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


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