ISA (продолжение)

Поставил в своё устройство м/с К555ИД4, к входам "&" которой приваял -IOR и -IOW, т.е. за основу взял теперь схему контроллера параллельного порта (?3/2002). Посадил на 0x378, выключя предварительно встроенный контроллер в мат. плате - как оказалось, встроенный контроллер по прежнему продолжал сидеть на

0x378, хотя в BIOS'е значилось Onboard Parallel Port: Disabled. Посадил его на 0x278, тогда только угомонился... Теперь о моей плате. При включении компа в плату по адресу 0x378 записалось число 0xA (почему ? Plug&Play, что ли ?). Впрочем, и во встроенном порте записывается при включении то же число. Послал один раз некое число - не записалось (outportb(0x378,1)). Поставил цикл:

while(!kbhit()){ outportb(0x378,1); } - записалось в регистр.

Включил режим чтения: while(!kbhit()){ outportb(0x378,6); printf("%x",inportb(0x378)); }

- новое число в регистр не пишется, а из выходного буфера читается то верное число, то 0xff...

Т.е. у микросхем не в порядке время доступа. Частота ISA равнялась на этот момент 8МГц. Выставил в BIOS макс. частоту 7,159МГц - не помогло...

Что делать будем, товарищи дорогие ? 8-;)

Reply to
Vadim Tzirulnicov
Loading thread data ...

Hello, Vadim! You wrote on Tue, 19 Aug 2003 14:46:46 +0000 (UTC):

VT> Поставил в своё устройство м/с К555ИД4, к входам "&" которой приваял VT> -IOR и -IOW, т.е. за основу взял теперь схему контроллера VT> параллельного порта (?3/2002).

Судя по соседнему письму, ты не совсем понимаешь что куда припаиваешь :-((.

VT> Посадил на 0x378, выключя предварительно встроенный контроллер в VT> мат. VT> плате - как оказалось, встроенный контроллер по прежнему продолжал VT> сидеть на 0x378, хотя в BIOS'е значилось Onboard Parallel Port: VT> Disabled. Посадил его на 0x278, тогда только угомонился... VT> Теперь о моей плате. При включении компа в плату по адресу 0x378 VT> записалось число 0xA (почему ? Plug&Play, что ли ?). Впрочем, и во VT> встроенном порте записывается при включении то же число. VT> Послал один раз некое число - не записалось (outportb(0x378,1)). VT> Поставил цикл:

VT> while(!kbhit()){ VT> outportb(0x378,1); VT> } - записалось в регистр.

VT> Включил режим чтения: VT> while(!kbhit()){ VT> outportb(0x378,6); VT> printf("%x",inportb(0x378)); VT> } VT> - новое число в регистр не пишется, а из выходного буфера читается VT> то верное число, то 0xff...

VT> Т.е. у микросхем не в порядке время доступа. Частота ISA равнялась VT> на этот момент 8МГц. Выставил в BIOS макс. частоту 7,159МГц - не VT> помогло...

VT> Что делать будем, товарищи дорогие ? 8-;)

Вынь плату из машины. С свободной дисковой соски вытяни землю и +5. Проверь чтобы это были они. На краешке ламелей платы (или на их контактых площадках, если есть) создай ситуацию своего адреса и AEN. На шине данных -

0х55 или 0хАА (по вкусу). IOW и IOR. притяни резисторами по 1К к питанию. Приготовь тумблер для замыкания IOW на землю. Подключи всё это хозяйство к вытянутому из компа питанию. Посмотри что на выходе селектора адреса, что на управлении твоими регистрами. Замкни тумблер, повтори предидущую операцию. Сними IOW, подай IOR, снова просмотри управление решистрами и шинниками. Что-то ты найдёшь, гарантирую :-))). Ну, а потом можно и в реальную шину.

With best regards, Alexander Derazhne.

Reply to
Alexander Derazhne

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.