Подключение AY-3-8910.

Обсуждение советского компьютера Фахiвець / Специалист и его развитие

Moderator: Lavr

User avatar
pyzhman
Novelist
Posts: 39
Joined: 28 Oct 2025 23:21

Подключение AY-3-8910.

Post by pyzhman »

Доброго!
Разработал схему:
AY8910.JPG
Написал тестовую программу из даташита (просто звук). Вижу на логическом осцилле, что BDIR и BC1 отрабатывают, данные выставляются корректные. Но звука нет. Что за беда может быть?
You do not have the required permissions to view the files attached to this post.
User avatar
pyzhman
Novelist
Posts: 39
Joined: 28 Oct 2025 23:21

Re: Подключение AY-3-8910.

Post by pyzhman »

Предложите свою схему.
User avatar
Black_Cat
Doomed
Posts: 622
Joined: 23 Nov 2007 15:53
Location: Saint Petersburg, Russia

Re: Подключение AY-3-8910.

Post by Black_Cat »

pyzhman wrote: 21 Jun 2026 23:37 Доброго!
Разработал схему:
AY8910.JPG
Написал тестовую программу из даташита (просто звук). Вижу на логическом осцилле, что BDIR и BC1 отрабатывают, данные выставляются корректные. Но звука нет. Что за беда может быть?
Ессно не будет - выход сделан неправильно. У AY выходы эмиттерные повторители - поставь резистор в землю до разделительного кондёра.
"Очень трудно найти чёрную кошку в тёмной комнате... особенно, если её там нет.", "Forever!". :wink:
zx.clan.su - Soviet Union ZX Spectrum Community - форум посвящённый развитию Спека.
User avatar
pyzhman
Novelist
Posts: 39
Joined: 28 Oct 2025 23:21

Re: Подключение AY-3-8910.

Post by pyzhman »

И действительно, эмиттерные повторители. Вот бы знать :) Поставил нагрузочный резистор и всё запело.
Спасибо.
User avatar
Black_Cat
Doomed
Posts: 622
Joined: 23 Nov 2007 15:53
Location: Saint Petersburg, Russia

Re: Подключение AY-3-8910.

Post by Black_Cat »

Для моно такой смеситель избыточен, просто соедини все выходы вместе и подай на резистор в землю. Именно для такого соединения эмиттерные повторители и сделали.
"Очень трудно найти чёрную кошку в тёмной комнате... особенно, если её там нет.", "Forever!". :wink:
zx.clan.su - Soviet Union ZX Spectrum Community - форум посвящённый развитию Спека.
User avatar
pyzhman
Novelist
Posts: 39
Joined: 28 Oct 2025 23:21

Re: Подключение AY-3-8910.

Post by pyzhman »

Он уже спаян. Не разбирать же.
Благодарю за замечание.
User avatar
Black_Cat
Doomed
Posts: 622
Joined: 23 Nov 2007 15:53
Location: Saint Petersburg, Russia

Re: Подключение AY-3-8910.

Post by Black_Cat »

Из этой схемы просто сделать Pentagon-Scorpion ABC вариант стерео (в варианте Profi-KAY смешивание ACB):
You do not have the required permissions to view the files attached to this post.
"Очень трудно найти чёрную кошку в тёмной комнате... особенно, если её там нет.", "Forever!". :wink:
zx.clan.su - Soviet Union ZX Spectrum Community - форум посвящённый развитию Спека.
User avatar
pyzhman
Novelist
Posts: 39
Joined: 28 Oct 2025 23:21

Re: Подключение AY-3-8910.

Post by pyzhman »

Благодарю за подсказку!
Скорректировал схему:
AY8910.JPG
1. Добавил буфер в генератор для надежного запуска.
2. Нагрузочный резистор использовал существующий - перепаял с правой обкладки конденсатора на левую.
3. Ввел сигнал чтения регистра по команде in 14h.
Вот здесь засада. Читает не то, что записано. Причем это видно и на осциллограммах - на шине данных в момент /RD находится что попало, только не то, что в регистре. Причем испытано на нескольких AY. Везде по-разному, что напрягает - неужели они сами неисправны в этом плане?
Подскажите, пожалуйста, может я неверно формирую rd_14h?
You do not have the required permissions to view the files attached to this post.
User avatar
Black_Cat
Doomed
Posts: 622
Joined: 23 Nov 2007 15:53
Location: Saint Petersburg, Russia

Re: Подключение AY-3-8910.

Post by Black_Cat »

Буфер в генераторе на запуск никак не влияет, он просто формирует более вертикальные фронты, и ставится только если сигнал идёт на несколько входов, чтобы на них фронты были синхронны. В твоём случае вход один, и буфер избыточен.

А как ты читаешь? Пишешь адрес некоего служебного регистра, потом пишешь данные, потом сразу их читаешь? И если не изменяет склероз, в регистрах не все разряды могут записываться, и соответственно читаться из них будет не то, т.е. сличать данные в таком случае надо по маске.

И кстати почему такие адреса? Если софт драть со Спектрума, то и адреса логичнее сделать было по спектрумовски, т.е. запись адреса и чтение данных на одном адресе, а запись данных на другом.
"Очень трудно найти чёрную кошку в тёмной комнате... особенно, если её там нет.", "Forever!". :wink:
zx.clan.su - Soviet Union ZX Spectrum Community - форум посвящённый развитию Спека.
User avatar
pyzhman
Novelist
Posts: 39
Joined: 28 Oct 2025 23:21

Re: Подключение AY-3-8910.

Post by pyzhman »

Black_Cat wrote: 26 Jun 2026 06:41 ...буфер избыточен...
Тем не менее генератор теперь запускается всегда. Без буфера раз через три. Тыкнешься щупом в ножку 8 - пошёл.
Black_Cat wrote: 26 Jun 2026 06:41...А как ты читаешь?...

Code: Select all

mvi	a,8    ;регистр громкости канала А
out	15h
mvi	a,0Fh	;максимальная громкость
out	14h
...
mvi	a,8    ;регистр громкости канала А
out	15h
in	14h
Black_Cat wrote: 26 Jun 2026 06:41...почему такие адреса?...
Специалисты так решили.
User avatar
Black_Cat
Doomed
Posts: 622
Joined: 23 Nov 2007 15:53
Location: Saint Petersburg, Russia

Re: Подключение AY-3-8910.

Post by Black_Cat »

В 8 регистре AY три старших разряда не пишутся. Попробуй писать и читать 0 или 2 или 4 регистры, там пишутся и читаются все 8 разрядов.

Code: Select all

mvi	a,0    
out	15h
mvi	a,0Fh	
out	14h
in	14h
"Очень трудно найти чёрную кошку в тёмной комнате... особенно, если её там нет.", "Forever!". :wink:
zx.clan.su - Soviet Union ZX Spectrum Community - форум посвящённый развитию Спека.