Здравствуйте,подскажите как на данном процессоре управлять сигналами RD,WR,M/IO.
про выход M/IO не много понятно но не совсем знаю что при выполнении команд IN OUT там состояние меняется а как это использовать без понятия =(((
Везде пишут одно и тоже для чего они нужны но это и так понятно =))
а как с помощью них выбрать как либо устройство (выбор CS) или чтение запись памяти непонятно.
В обшем у меня сейчас загвозлка с тем как подключить контроллер клавиатуры и дисплея КР580ВВ79 к процессору (шинный формирователь сделал ШД и ША отдельно идёт )
На лекции нужно было ходить. Или Вы потом и на работе будете искать тех, кто будет работать вместо Вас? Тогда надо было в менеджеры идти, а не в электронщики
RD и WR от 79-й на RD и WR проца,
CS 79-й - на дешифратор,
D/C 79-й - на ADDR0,
и про тактовую на 79-ю не забудь...
[img]http://radiokot.ru/forum/download/file.php?id=93376[/img][i][color=#000080][size=85]Между людьми возникает напряжение, если у них разный потенциал...[/size][/color][/i]
Поищи книжки, типа : Микропроцессоры (книга 1) - под ред. Л.Н.Преснухина – Архитектура и проектирование микро-ЭВМ.
Материалов по применению микропроцессорных комплектов 580 и 1810 было много...
[img]http://radiokot.ru/forum/download/file.php?id=93376[/img][i][color=#000080][size=85]Между людьми возникает напряжение, если у них разный потенциал...[/size][/color][/i]
Всё таки мне этот вопрос не даёт покоя чем выбирать от процессора CS ? какими выводами ?
блин пока писал придумал ответ
в общем ставлю элемент И и на него подаю сигнал с адреса (A1) и M/IO а дальше когда командой
out 2,al т.е используем комаду out то M/IO выдаёт 1 и т.к 2,al то A1=1 и элемент И открывается и пропускает на выбор кристалла
правильно я понял ?
Нет.. Дешифратор кристалла может быть полный, когда микросхема выбирается по одному адресу и неполный, когда микросхема выбирается по диапазону адресов..
Дешифратор на элементе И выберет микросхему по всем адресам, у которых ADDR1=0..
[img]http://radiokot.ru/forum/download/file.php?id=93376[/img][i][color=#000080][size=85]Между людьми возникает напряжение, если у них разный потенциал...[/size][/color][/i]
Нет.. Дешифратор кристалла может быть полный, когда микросхема выбирается по одному адресу и неполный, когда микросхема выбирается по диапазону адресов..
Дешифратор на элементе И выберет микросхему по всем адресам, у которых ADDR1=0..
что-то это я так и не понял почему не правильно =( там на каждую микросхему будет свой адрес идти
и всё не как разобраться не могу с WR RD вот тут http://www.ets.ifmo.ru/denisov/lec/lec18.htm
нашёл описание как за программировать КР580ВВ79 так же там приведена табличка что бы записать
управляющего слово нужно что бы CS=0 A0=1 RD=1 WR=0 с CS и A0 более менее понятно как их сделать а вот с RD=1 WR=0 совсем не ясно какими командами их можно задать ? или процессор как то сам ими управляет ?
Как можно выложить картинку формата А3-А2 ? если принскринить то там невидно будет нечего
RD и WR генерятся процессором автоматически в зависимости от того, какая команда выполняется, чтение или запись в порт..
[img]http://radiokot.ru/forum/download/file.php?id=93376[/img][i][color=#000080][size=85]Между людьми возникает напряжение, если у них разный потенциал...[/size][/color][/i]
RD и WR генерятся процессором автоматически в зависимости от того, какая команда выполняется, чтение или запись в порт..
Круто я так и думал что это как то сильно просто должно быть =))))
что-то у меня возникает сомнения что я не правильно понимаю назначения вывода M/ IO
в книжках написано примерно следующее "трёх стабильный выход признака обращения к ОЗУ (M/IO=1) или ко внешнему устройству (M/IO=0) "
так вот каким образом то меняется значения выхода ? я думал что когда выполняем команду OUT он становится в состояние 1 а в остальных случаях молчит но тогда как отличается от WR ?
Расскажу, как расшифровываются обозначения сигналов:
M/IO:
тут - M - память /Мемори по английски/
IO - порты ввода-вывода /инпут-оутпут/
значёк "/" означает инверсию..
т.е. при обращении к порту этот сигнал будет 0, а к памяти - 1..
pokk писал(а):так вот каким образом то меняется значения выхода ? я думал что когда выполняем команду OUT он становится в состояние 1 а в остальных случаях молчит но тогда как отличается от WR ?
Циклы обращения к памяти и к портам В/В очень похожи /практически одинаковые/ и сигналы RD и WR используются и там и там..
Отличие лишь в сигнале M/IO.. Т.е. при обращении к памяти M/IO=1, а потом формируются RD /если команда на чтение/ или WR /если команда на запись/, а при обращении к портам M/IO=0 и всё остальное - такое-же..
[img]http://radiokot.ru/forum/download/file.php?id=93376[/img][i][color=#000080][size=85]Между людьми возникает напряжение, если у них разный потенциал...[/size][/color][/i]
Опять у меян появились вопросы.Решил сделать совмещённую адресацию.
Поставил в схему дешифратор 2на 4 как бы понятно что нужно управлять адресами А14 и А15.
Но непонятно как именно.
Я понимаю что например при команде mov ax,V2[si] то из озу должна записаться слово в ax находящееся по адресу V2+si
но вот как он определяет что из озу или пзу ? или это может слово читаю с контроллера клавиатуры
появилась идея
смотря в какой сегмент записан массив V2 от туда он и будет браться.
т.е если
.data то озу если .code то пзу
но опят такие какие сигналы на выходе шин адреса данных и управления будут =(
и под внешнее устройство непонятно какой сегмент сделать
и опять отвечаю на свои вопросы =))
в общем придумал следующий алгоритм
в сегмент данных ds записываем число 0000110000000000b (600h) после формирования физического адреса (если считать смешение 0) получится 00001100000000000000b (C000h) на шине адреса А15=1 и А14=1
их как раз и подцепить на дешифратор что бы он выбирал какое либо из устройство (к примеру озу)
и теперь если написать
model small
.data
V2 db (?)
.code
mov ds,600h
mov ax,V2[2]
то тут должно записаться в ax значение озу по адресу 2
единственное что мне не нравится что если смешение будет большое то оно может повлиять на выбор внешнего устройства (думаю в моём случае такое не предвидится =)))